mirror of
https://gitlab.gnome.org/GNOME/gtk.git
synced 2024-12-26 05:31:07 +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);
|
||||
}
|
||||
|
||||
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
|
||||
gsk_profiler_counter_add (GskProfiler *profiler,
|
||||
GQuark counter_id,
|
||||
@ -217,7 +237,11 @@ gsk_profiler_counter_add (GskProfiler *profiler,
|
||||
|
||||
counter = gsk_profiler_get_counter (profiler, counter_id);
|
||||
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;
|
||||
}
|
||||
|
@ -25,6 +25,9 @@ void gsk_profiler_counter_inc (GskProfiler *profiler,
|
||||
void gsk_profiler_counter_add (GskProfiler *profiler,
|
||||
GQuark counter_id,
|
||||
gint64 increment);
|
||||
void gsk_profiler_counter_set (GskProfiler *profiler,
|
||||
GQuark counter_id,
|
||||
gint64 value);
|
||||
void gsk_profiler_timer_begin (GskProfiler *profiler,
|
||||
GQuark timer_id);
|
||||
gint64 gsk_profiler_timer_end (GskProfiler *profiler,
|
||||
|
Loading…
Reference in New Issue
Block a user