summaryrefslogtreecommitdiffstats
path: root/src/mesa/main/dd.h
diff options
context:
space:
mode:
authorNicolai Hähnle <nicolai.haehnle@amd.com>2015-11-25 11:59:23 +0100
committerNicolai Hähnle <nicolai.haehnle@amd.com>2015-11-25 15:27:33 +0100
commit27a06e0bbe805152ffc7abc716d954da35a97541 (patch)
tree2ef620a1200181e58167684cc6809bc5032531d5 /src/mesa/main/dd.h
parent315c4c315e311674c840069174244eef97c92705 (diff)
downloadexternal_mesa3d-27a06e0bbe805152ffc7abc716d954da35a97541.zip
external_mesa3d-27a06e0bbe805152ffc7abc716d954da35a97541.tar.gz
external_mesa3d-27a06e0bbe805152ffc7abc716d954da35a97541.tar.bz2
mesa/main: allow delayed initialization of performance monitors
Most applications never use performance counters, so allow drivers to skip potentially expensive initialization steps. A driver that wants to use this must enable the appropriate extension(s) at context initialization and set the InitPerfMonitorGroups driver function which will be called the first time information about the performance monitor groups is actually used. The init_groups helper is called for API functions that can be called before a monitor object exists. Functions that require an existing monitor object can rely on init_groups having been called before. Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Diffstat (limited to 'src/mesa/main/dd.h')
-rw-r--r--src/mesa/main/dd.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/mesa/main/dd.h b/src/mesa/main/dd.h
index 496a14f..e5281ce 100644
--- a/src/mesa/main/dd.h
+++ b/src/mesa/main/dd.h
@@ -727,6 +727,7 @@ struct dd_function_table {
* \name Performance monitors
*/
/*@{*/
+ void (*InitPerfMonitorGroups)(struct gl_context *ctx);
struct gl_perf_monitor_object * (*NewPerfMonitor)(struct gl_context *ctx);
void (*DeletePerfMonitor)(struct gl_context *ctx,
struct gl_perf_monitor_object *m);