mirror of
https://gitlab.gnome.org/GNOME/gtk.git
synced 2025-01-13 22:10:08 +00:00
gsk: Add a way to reset profiler counters
It is often useful to count things per-frame, and reset the counter afterwards.
This commit is contained in:
parent
b1e98d106d
commit
cfbd6b4b99
@ -206,6 +206,26 @@ gsk_profiler_counter_inc (GskProfiler *profiler,
|
|||||||
gsk_profiler_counter_add (profiler, counter_id, 1);
|
gsk_profiler_counter_add (profiler, counter_id, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
gsk_profiler_counter_set (GskProfiler *profiler,
|
||||||
|
GQuark counter_id,
|
||||||
|
gint64 value)
|
||||||
|
{
|
||||||
|
NamedCounter *counter;
|
||||||
|
|
||||||
|
g_return_if_fail (GSK_IS_PROFILER (profiler));
|
||||||
|
|
||||||
|
counter = gsk_profiler_get_counter (profiler, counter_id);
|
||||||
|
if (counter == NULL)
|
||||||
|
{
|
||||||
|
g_critical ("No counter '%s' (id:%d) found; did you forget to call gsk_profiler_add_counter()?",
|
||||||
|
g_quark_to_string (counter_id), counter_id);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
counter->value = value;
|
||||||
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
gsk_profiler_counter_add (GskProfiler *profiler,
|
gsk_profiler_counter_add (GskProfiler *profiler,
|
||||||
GQuark counter_id,
|
GQuark counter_id,
|
||||||
@ -217,7 +237,11 @@ gsk_profiler_counter_add (GskProfiler *profiler,
|
|||||||
|
|
||||||
counter = gsk_profiler_get_counter (profiler, counter_id);
|
counter = gsk_profiler_get_counter (profiler, counter_id);
|
||||||
if (counter == NULL)
|
if (counter == NULL)
|
||||||
return;
|
{
|
||||||
|
g_critical ("No counter '%s' (id:%d) found; did you forget to call gsk_profiler_add_counter()?",
|
||||||
|
g_quark_to_string (counter_id), counter_id);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
counter->value += increment;
|
counter->value += increment;
|
||||||
}
|
}
|
||||||
|
@ -25,6 +25,9 @@ void gsk_profiler_counter_inc (GskProfiler *profiler,
|
|||||||
void gsk_profiler_counter_add (GskProfiler *profiler,
|
void gsk_profiler_counter_add (GskProfiler *profiler,
|
||||||
GQuark counter_id,
|
GQuark counter_id,
|
||||||
gint64 increment);
|
gint64 increment);
|
||||||
|
void gsk_profiler_counter_set (GskProfiler *profiler,
|
||||||
|
GQuark counter_id,
|
||||||
|
gint64 value);
|
||||||
void gsk_profiler_timer_begin (GskProfiler *profiler,
|
void gsk_profiler_timer_begin (GskProfiler *profiler,
|
||||||
GQuark timer_id);
|
GQuark timer_id);
|
||||||
gint64 gsk_profiler_timer_end (GskProfiler *profiler,
|
gint64 gsk_profiler_timer_end (GskProfiler *profiler,
|
||||||
|
Loading…
Reference in New Issue
Block a user