This is the documentation for Enlighten.

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Current »

class Enlighten::EnlightenProfile

A container for Enlighten runtime profile statistics.

It defines the interface used by the HLRT to record statistics. A pointer to an EnlightenProfile is a member of UpdateManagerProperties. If non-NULL upon creation of an update manager, the HLRT will push real time stats to the EnlightenProfile object.

Functions

Name Description
DumpCubeMapStatsToStream(Geo::IGeoStream &)

Writes some summary stats (average etc.) for all Enlighten cube maps.

DumpCurrentStatsToStream(Geo::IGeoStream &)

Writes the set of most recently recorded stats.

DumpHeaderToStream(Geo::IGeoStream &)

Writes a small header containing the description (see SetDescription).

DumpProbeSetStatsToStream(Geo::IGeoStream &)

Writes some summary stats (average etc.) for all Enlighten probe sets.

DumpSystemStatsToStream(Geo::IGeoStream &)

Writes some summary stats (average etc.) for all Enlighten systems.

DumpToStream(Geo::IGeoStream &)

Writes the header, current stats and system stats to the given stream.

GetAggregateProfile()

Read-only access to profile data.

GetCubeMapProfileAtIdx(Geo::s32)

Get a cube map at the specified index.

GetCubeMapProfileAtIdx(Geo::s32)

Get a cube map at the specified index.

GetCubeMapProfileFromGuid(const Geo::GeoGuid &)

Get a cube map from a given guid.

GetDescription()

Gets/sets the profile description which is written in the header in DumpHeaderToStream.

GetNumCubeMaps()

Get number of recorded cube maps Calls to this should be surrounded in a Lock/Unlock pair.

GetNumProbeSets()

Get number of recorded probe sets.

GetNumSystems()

Get number of recorded systems.

GetProbeSetProfileAtIdx(Geo::s32)

Get a probe set at the specified index.

GetProbeSetProfileAtIdx(Geo::s32)

Get a probe set at the specified index.

GetProbeSetProfileFromGuid(const Geo::GeoGuid &)

Get a probe set from a given guid.

GetSystemProfileAtIdx(Geo::s32)

Get a system at the specified index.

GetSystemProfileAtIdx(Geo::s32)

Read-only access to profile data.

GetSystemProfileFromGuid(const Geo::GeoGuid &)

Get a system from a given guid.

Lock()

Multi-threaded access controls.

RecordAggregateProfileItem(AggregateProfileItem, double)

Record aggregate profile items.

RecordAggregateProfileItemUnsafe(AggregateProfileItem, double)

Record aggregate profile items.

RecordCubeMapItem(const Geo::GeoGuid &, CubeMapProfileItem, double)

Record a stat item for cube maps.

RecordEnlightenCpuTime(double)

Record a stat item for total enlighten cpu time.

RecordEnlightenCpuTimeUnsafe(double)

Record a stat item for total enlighten cpu time.

RecordEnlightenCubeMapTime(double)

Record a stat item for total enlighten cube map time.

RecordEnlightenCubeMapTimeUnsafe(double)

Record a stat item for total enlighten cube map time.

RecordEnlightenGpuTime(double)

Record a stat item for total enlighten gpu time.

RecordEnlightenGpuTimeUnsafe(double)

Record a stat item for total enlighten gpu time.

RecordEnlightenProbeInterpolationTime(double)

Record a stat item for total enlighten light probe interpolation time.

RecordEnlightenProbeInterpolationTimeUnsafe(double)

Record a stat item for total enlighten light probe interpolation time.

RecordEnlightenProbeSetTime(double)

Record a stat item for total enlighten light probe time (either cpu or gpu)

RecordEnlightenProbeSetTimeUnsafe(double)

Record a stat item for total enlighten light probe time (either cpu or gpu)

RecordProbeSetItem(const Geo::GeoGuid &, ProbeSetProfileItem, double)

Record a stat item for probes sets.

RecordSystemItem(const Geo::GeoGuid &, SystemProfileItem, double)

Stat recording functions.

RegisterCubeMap(const Geo::GeoGuid &)

Register HLRT objects with the profiler and returns their respective index.

RegisterProbeSet(const Geo::GeoGuid &)

Register HLRT objects with the profiler and returns their respective index.

RegisterSystem(const Geo::GeoGuid &)

Register HLRT objects with the profiler and returns their respective index.

Reset()

Reset all recorded stats. Also empties the arrays.

ResetHistory()

Reset the recorded stats.

SetDescription(ProfileDescription)

Gets/sets the profile description which is written in the header in DumpHeaderToStream.

Unlock()

Unlock access to the profile records.


void Enlighten::EnlightenProfile::DumpCubeMapStatsToStream


public: void DumpCubeMapStatsToStream
(
    Geo::IGeoStream & stream
) const


Writes some summary stats (average etc.) for all Enlighten cube maps.


void Enlighten::EnlightenProfile::DumpCurrentStatsToStream


public: void DumpCurrentStatsToStream
(
    Geo::IGeoStream & stream
) const


Writes the set of most recently recorded stats.


void Enlighten::EnlightenProfile::DumpHeaderToStream


public: void DumpHeaderToStream
(
    Geo::IGeoStream & stream
) const


Writes a small header containing the description (see SetDescription).


void Enlighten::EnlightenProfile::DumpProbeSetStatsToStream


public: void DumpProbeSetStatsToStream
(
    Geo::IGeoStream & stream
) const


Writes some summary stats (average etc.) for all Enlighten probe sets.


void Enlighten::EnlightenProfile::DumpSystemStatsToStream


public: void DumpSystemStatsToStream
(
    Geo::IGeoStream & stream
) const


Writes some summary stats (average etc.) for all Enlighten systems.


void Enlighten::EnlightenProfile::DumpToStream


public: void DumpToStream
(
    Geo::IGeoStream & stream
) const


Writes the header, current stats and system stats to the given stream.


const EnlightenAggregateProfile* Enlighten::EnlightenProfile::GetAggregateProfile


public: const EnlightenAggregateProfile * GetAggregateProfile() const


Read-only access to profile data.

Warning

All of these functions should be surrounded in a Lock/Unlock pair.Get the aggregate profile history


EnlightenCubeMapProfile* Enlighten::EnlightenProfile::GetCubeMapProfileAtIdx


public: EnlightenCubeMapProfile * GetCubeMapProfileAtIdx
(
    Geo::s32 idx
)


Get a cube map at the specified index.

Calls to this and all access to the returned pointer should be surrounded in a Lock/Unlock pair.


const EnlightenCubeMapProfile* Enlighten::EnlightenProfile::GetCubeMapProfileAtIdx


public: const EnlightenCubeMapProfile * GetCubeMapProfileAtIdx
(
    Geo::s32 idx
) const


Get a cube map at the specified index.

Calls to this and all access to the returned pointer should be surrounded in a Lock/Unlock pair.


Geo::s32 Enlighten::EnlightenProfile::GetCubeMapProfileFromGuid


public: Geo::s32 GetCubeMapProfileFromGuid
(
    const Geo::GeoGuid & guid
) const


Get a cube map from a given guid.

Calls to this and all access to the returned pointer should be surrounded in a Lock/Unlock pair.

Returns

-1 if guid does not exit.


ProfileDescription Enlighten::EnlightenProfile::GetDescription


public: ProfileDescription GetDescription()


Gets/sets the profile description which is written in the header in DumpHeaderToStream.


Geo::s32 Enlighten::EnlightenProfile::GetNumCubeMaps


public: Geo::s32 GetNumCubeMaps() const


Get number of recorded cube maps Calls to this should be surrounded in a Lock/Unlock pair.


Geo::s32 Enlighten::EnlightenProfile::GetNumProbeSets


public: Geo::s32 GetNumProbeSets() const


Get number of recorded probe sets.

Calls to this should be surrounded in a Lock/Unlock pair


Geo::s32 Enlighten::EnlightenProfile::GetNumSystems


public: Geo::s32 GetNumSystems() const


Get number of recorded systems.

Calls to this should be surrounded in a Lock/Unlock pair


const EnlightenProbeSetProfile* Enlighten::EnlightenProfile::GetProbeSetProfileAtIdx


public: const EnlightenProbeSetProfile * GetProbeSetProfileAtIdx
(
    Geo::s32 idx
) const


Get a probe set at the specified index.

Calls to this and all access to the returned pointer should be surrounded in a Lock/Unlock pair.


EnlightenProbeSetProfile* Enlighten::EnlightenProfile::GetProbeSetProfileAtIdx


public: EnlightenProbeSetProfile * GetProbeSetProfileAtIdx
(
    Geo::s32 idx
)


Get a probe set at the specified index.

Calls to this and all access to the returned pointer should be surrounded in a Lock/Unlock pair.


Geo::s32 Enlighten::EnlightenProfile::GetProbeSetProfileFromGuid


public: Geo::s32 GetProbeSetProfileFromGuid
(
    const Geo::GeoGuid & guid
) const


Get a probe set from a given guid.

Calls to this and all access to the returned pointer should be surrounded in a Lock/Unlock pair.

Returns

-1 if guid does not exit.


const EnlightenSystemProfile* Enlighten::EnlightenProfile::GetSystemProfileAtIdx


public: const EnlightenSystemProfile * GetSystemProfileAtIdx
(
    Geo::s32 idx
) const


Get a system at the specified index.

Calls to this and all access to the returned pointer should be surrounded in a Lock/Unlock pair.


EnlightenSystemProfile* Enlighten::EnlightenProfile::GetSystemProfileAtIdx


public: EnlightenSystemProfile * GetSystemProfileAtIdx
(
    Geo::s32 idx
)


Read-only access to profile data.

Warning

All of these functions should be surrounded in a Lock/Unlock pair.Get the aggregate profile history


Geo::s32 Enlighten::EnlightenProfile::GetSystemProfileFromGuid


public: Geo::s32 GetSystemProfileFromGuid
(
    const Geo::GeoGuid & guid
) const


Get a system from a given guid.

Calls to this and all access to the returned pointer should be surrounded in a Lock/Unlock pair.

Returns

-1 if guid does not exit.


void Enlighten::EnlightenProfile::Lock


public: void Lock() const


Multi-threaded access controls.

Lock access to the profile records.


void Enlighten::EnlightenProfile::RecordAggregateProfileItem


public: void RecordAggregateProfileItem
(
    AggregateProfileItem item,
    double value
)


Record aggregate profile items.


void Enlighten::EnlightenProfile::RecordAggregateProfileItemUnsafe


public: void RecordAggregateProfileItemUnsafe
(
    AggregateProfileItem item,
    double value
)


Record aggregate profile items.


void Enlighten::EnlightenProfile::RecordCubeMapItem


public: void RecordCubeMapItem
(
    const Geo::GeoGuid & cubeMapGuid,
    CubeMapProfileItem profileType,
    double value
)


Record a stat item for cube maps.


void Enlighten::EnlightenProfile::RecordEnlightenCpuTime


public: void RecordEnlightenCpuTime
(
    double value
)


Record a stat item for total enlighten cpu time.


void Enlighten::EnlightenProfile::RecordEnlightenCpuTimeUnsafe


public: void RecordEnlightenCpuTimeUnsafe
(
    double value
)


Record a stat item for total enlighten cpu time.


void Enlighten::EnlightenProfile::RecordEnlightenCubeMapTime


public: void RecordEnlightenCubeMapTime
(
    double value
)


Record a stat item for total enlighten cube map time.


void Enlighten::EnlightenProfile::RecordEnlightenCubeMapTimeUnsafe


public: void RecordEnlightenCubeMapTimeUnsafe
(
    double value
)


Record a stat item for total enlighten cube map time.


void Enlighten::EnlightenProfile::RecordEnlightenGpuTime


public: void RecordEnlightenGpuTime
(
    double value
)


Record a stat item for total enlighten gpu time.


void Enlighten::EnlightenProfile::RecordEnlightenGpuTimeUnsafe


public: void RecordEnlightenGpuTimeUnsafe
(
    double value
)


Record a stat item for total enlighten gpu time.


void Enlighten::EnlightenProfile::RecordEnlightenProbeInterpolationTime


public: void RecordEnlightenProbeInterpolationTime
(
    double value
)


Record a stat item for total enlighten light probe interpolation time.


void Enlighten::EnlightenProfile::RecordEnlightenProbeInterpolationTimeUnsafe


public: void RecordEnlightenProbeInterpolationTimeUnsafe
(
    double value
)


Record a stat item for total enlighten light probe interpolation time.


void Enlighten::EnlightenProfile::RecordEnlightenProbeSetTime


public: void RecordEnlightenProbeSetTime
(
    double value
)


Record a stat item for total enlighten light probe time (either cpu or gpu)


void Enlighten::EnlightenProfile::RecordEnlightenProbeSetTimeUnsafe


public: void RecordEnlightenProbeSetTimeUnsafe
(
    double value
)


Record a stat item for total enlighten light probe time (either cpu or gpu)


void Enlighten::EnlightenProfile::RecordProbeSetItem


public: void RecordProbeSetItem
(
    const Geo::GeoGuid & probeSetGuid,
    ProbeSetProfileItem profileType,
    double value
)


Record a stat item for probes sets.


void Enlighten::EnlightenProfile::RecordSystemItem


public: void RecordSystemItem
(
    const Geo::GeoGuid & systemGuid,
    SystemProfileItem profileType,
    double value
)


Stat recording functions.

Internally they Lock/Unlock this class and so will block if anther thread already has the lock.Record a stat item for systems.


Geo::s32 Enlighten::EnlightenProfile::RegisterCubeMap


public: Geo::s32 RegisterCubeMap
(
    const Geo::GeoGuid & cubeMapGuid
)


Register HLRT objects with the profiler and returns their respective index.


Geo::s32 Enlighten::EnlightenProfile::RegisterProbeSet


public: Geo::s32 RegisterProbeSet
(
    const Geo::GeoGuid & probeSetGuid
)


Register HLRT objects with the profiler and returns their respective index.


Geo::s32 Enlighten::EnlightenProfile::RegisterSystem


public: Geo::s32 RegisterSystem
(
    const Geo::GeoGuid & systemGuid
)


Register HLRT objects with the profiler and returns their respective index.


void Enlighten::EnlightenProfile::Reset


public: void Reset()


Reset all recorded stats. Also empties the arrays.


void Enlighten::EnlightenProfile::ResetHistory


public: void ResetHistory()


Reset the recorded stats.


void Enlighten::EnlightenProfile::SetDescription


public: void SetDescription
(
    ProfileDescription desc
)


Gets/sets the profile description which is written in the header in DumpHeaderToStream.


void Enlighten::EnlightenProfile::Unlock


public: void Unlock() const


Unlock access to the profile records.

  • No labels