PVRScopeStats

PVRScopeStats is used to access the performance counters on PowerVR hardware via a driver library called PVRScopeServices.

This section contains several examples of using PVRScopeStats to perform various tasks, including the important two: reading and outputting counter data.

Initialising PVRScopeStats

To initialise PVRScopeStats:

  • Include the PVRScope header file.

#include "PVRScopeStats.h"
  • Define the control structures.

// Defines
#define NO_GROUP_CHANGE 0xffffffff

// Internal control data
SPVRScopeImplData* PVRScopeStatsData;

// Counter information
SPVRScopeCounterDef* counterDefinitions;
unsigned int numCounters;

// Counter reading data
unsigned int activeGroup;
unsigned int selectedGroup;
bool activeGroupChanged;
SPVRScopeCounterReading counterReading;
  • Initialise communication with PVRScopeServices.

PVRScopeInitialise(PVRScopeStatsData);
  • Set up the counter data structures.

PVRScopeGetCounters(*PVRScopeStatsData,numCounters,counterDefinitions,counterReading);

Note

PVRScopeFindStandardCounter is a function that makes setting up counter data structures more efficient. Rather than listing all the counters available, it presents an indexed list of common counters.

Shutting down PVRScopeStats

To shutdown PVRScopeStats, call the shutdown functions as follows:

PVRScopeDeInitialise(*PVRScopeStatsData,*counterDefinitions,*counterReading);