mesa/main: allow delayed initialization of performance monitors
authorNicolai Hähnle <nicolai.haehnle@amd.com>
Wed, 25 Nov 2015 10:59:23 +0000 (11:59 +0100)
committerNicolai Hähnle <nicolai.haehnle@amd.com>
Wed, 25 Nov 2015 14:27:33 +0000 (15:27 +0100)
commit27a06e0bbe805152ffc7abc716d954da35a97541
tree2ef620a1200181e58167684cc6809bc5032531d5
parent315c4c315e311674c840069174244eef97c92705
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>
src/mesa/main/dd.h
src/mesa/main/performance_monitor.c