TexGen
|
#include <ShinyManager.h>
Public Types | |
enum | TABLE_SIZE { TABLE_SIZE_INIT = 256 } |
Public Member Functions | |
SHINY_INLINE void | _appendTicksToCurNode (void) |
ProfileNode * | _lookupNode (ProfileNodeCache *a_cache, ProfileZone *a_zone) |
void | _createNodeTable (uint32_t a_count) |
void | _resizeNodeTable (uint32_t a_count) |
void | _createNodePool (uint32_t a_count) |
void | _resizeNodePool (uint32_t a_count) |
ProfileNode * | _createNode (ProfileNodeCache *a_cache, ProfileZone *a_pZone) |
void | _insertNode (ProfileNode *a_pNode) |
void | _init (void) |
void | _uninit (void) |
SHINY_INLINE void | _incLookup (void) |
SHINY_INLINE void | _incLookupSuccess (void) |
SHINY_INLINE float | lookupSuccessRate (void) const |
void | _resetZones (void) |
void | _destroyNodes (void) |
SHINY_INLINE float | tableUsage (void) const |
uint32_t | staticMemInBytes (void) |
uint32_t | allocMemInBytes (void) |
SHINY_INLINE void | _beginNode (ProfileNodeCache *a_cache, ProfileZone *a_zone) |
SHINY_INLINE void | _beginNode (ProfileNode *a_node) |
SHINY_INLINE void | _endCurNode (void) |
void | preLoad (void) |
void | updateClean (void) |
void | update (float a_damping=0.9f) |
void | clear (void) |
void | destroy (void) |
bool | output (const char *a_filename) |
bool | output (std::ostream &a_ostream=std::cout) |
SHINY_INLINE std::string | outputNodesAsString (void) |
SHINY_INLINE std::string | outputZonesAsString (void) |
Static Public Member Functions | |
static void | enumerateNodes (void(*a_func)(const ProfileNode *), const ProfileNode *a_node=&instance.rootNode) |
template<class T > | |
static void | enumerateNodes (T *a_this, void(T::*a_func)(const ProfileNode *), const ProfileNode *a_node=&instance.rootNode) |
static void | enumerateZones (void(*a_func)(const ProfileZone *), const ProfileZone *a_zone=&instance.rootZone) |
template<class T > | |
static void | enumerateZones (T *a_this, void(T::*a_func)(const ProfileZone *), const ProfileZone *a_zone=&instance.rootZone) |
Public Attributes | |
tick_t | _lastTick |
ProfileNode * | _curNode |
uint32_t | _tableMask |
ProfileNodeTable * | _nodeTable |
uint64_t | _lookupCount |
uint64_t | _lookupSuccessCount |
uint32_t | _tableSize |
uint32_t | nodeCount |
uint32_t | zoneCount |
ProfileZone * | _lastZone |
ProfileNodePool * | _lastNodePool |
ProfileNodePool * | _firstNodePool |
ProfileNode | rootNode |
ProfileZone | rootZone |
bool | _initialized |
bool | _firstUpdate |
Static Public Attributes | |
static ProfileNode * | _dummyNodeTable [] |
static ProfileManager | instance |
Definition at line 42 of file ShinyManager.h.
Enumerator | |
---|---|
TABLE_SIZE_INIT |
Definition at line 46 of file ShinyManager.h.
|
inline |
Definition at line 85 of file ShinyManager.h.
References _curNode, _lastTick, Shiny::ProfileNode::appendTicks(), and Shiny::GetTicks().
Referenced by _beginNode(), and _endCurNode().
|
inline |
Definition at line 154 of file ShinyManager.h.
References _appendTicksToCurNode(), _curNode, and Shiny::ProfileNode::beginEntry().
|
inline |
Definition at line 147 of file ShinyManager.h.
References _beginNode(), _curNode, _lookupNode(), and Shiny::ProfileNode::parent.
Referenced by _beginNode().
ProfileNode * Shiny::ProfileManager::_createNode | ( | ProfileNodeCache * | a_cache, |
ProfileZone * | a_pZone | ||
) |
void Shiny::ProfileManager::_createNodePool | ( | uint32_t | a_count | ) |
void Shiny::ProfileManager::_createNodeTable | ( | uint32_t | a_count | ) |
void Shiny::ProfileManager::_destroyNodes | ( | void | ) |
|
inline |
Definition at line 161 of file ShinyManager.h.
References _appendTicksToCurNode(), _curNode, and Shiny::ProfileNode::parent.
Referenced by Shiny::ProfileAutoEndNode::~ProfileAutoEndNode().
|
inline |
Definition at line 120 of file ShinyManager.h.
References _lookupCount.
|
inline |
Definition at line 121 of file ShinyManager.h.
References _lookupSuccessCount.
|
inline |
Definition at line 104 of file ShinyManager.h.
References _initialized, _lastTick, Shiny::ProfileNode::beginEntry(), Shiny::GetTicks(), and rootNode.
void Shiny::ProfileManager::_insertNode | ( | ProfileNode * | a_pNode | ) |
ProfileNode * Shiny::ProfileManager::_lookupNode | ( | ProfileNodeCache * | a_cache, |
ProfileZone * | a_zone | ||
) |
Referenced by _beginNode().
void Shiny::ProfileManager::_resetZones | ( | void | ) |
void Shiny::ProfileManager::_resizeNodePool | ( | uint32_t | a_count | ) |
void Shiny::ProfileManager::_resizeNodeTable | ( | uint32_t | a_count | ) |
|
inline |
Definition at line 111 of file ShinyManager.h.
References _initialized, Shiny::ProfileNode::clear(), Shiny::ProfileNode::parent, rootNode, rootZone, and Shiny::ProfileNode::zone.
|
inline |
Definition at line 142 of file ShinyManager.h.
References _firstNodePool, _tableSize, and Shiny::ProfileNodePool::memoryUsageChain().
void Shiny::ProfileManager::clear | ( | void | ) |
void Shiny::ProfileManager::destroy | ( | void | ) |
|
inlinestatic |
Definition at line 194 of file ShinyManager.h.
References enumerateNodes().
|
inlinestatic |
Definition at line 184 of file ShinyManager.h.
References enumerateNodes().
Referenced by enumerateNodes().
|
inlinestatic |
Definition at line 212 of file ShinyManager.h.
References enumerateZones().
|
inlinestatic |
Definition at line 203 of file ShinyManager.h.
References enumerateZones().
Referenced by enumerateZones().
|
inline |
Definition at line 122 of file ShinyManager.h.
References _lookupCount, and _lookupSuccessCount.
bool Shiny::ProfileManager::output | ( | const char * | a_filename | ) |
bool Shiny::ProfileManager::output | ( | std::ostream & | a_ostream = std::cout | ) |
|
inline |
Definition at line 179 of file ShinyManager.h.
References nodeCount, Shiny::OutputNodesAsString(), and rootNode.
|
inline |
Definition at line 180 of file ShinyManager.h.
References Shiny::OutputZonesAsString(), rootZone, and zoneCount.
void Shiny::ProfileManager::preLoad | ( | void | ) |
|
inline |
Definition at line 135 of file ShinyManager.h.
References Shiny::ProfileNode::_dummy, _dummyNodeTable, instance, and zoneCount.
|
inline |
Definition at line 133 of file ShinyManager.h.
References _tableSize, and nodeCount.
void Shiny::ProfileManager::update | ( | float | a_damping = 0.9f | ) |
void Shiny::ProfileManager::updateClean | ( | void | ) |
ProfileNode* Shiny::ProfileManager::_curNode |
Definition at line 52 of file ShinyManager.h.
Referenced by _appendTicksToCurNode(), _beginNode(), and _endCurNode().
|
static |
Definition at line 79 of file ShinyManager.h.
Referenced by staticMemInBytes().
ProfileNodePool* Shiny::ProfileManager::_firstNodePool |
Definition at line 71 of file ShinyManager.h.
Referenced by allocMemInBytes().
bool Shiny::ProfileManager::_firstUpdate |
Definition at line 77 of file ShinyManager.h.
bool Shiny::ProfileManager::_initialized |
Definition at line 76 of file ShinyManager.h.
ProfileNodePool* Shiny::ProfileManager::_lastNodePool |
Definition at line 70 of file ShinyManager.h.
tick_t Shiny::ProfileManager::_lastTick |
Definition at line 50 of file ShinyManager.h.
Referenced by _appendTicksToCurNode(), and _init().
ProfileZone* Shiny::ProfileManager::_lastZone |
Definition at line 68 of file ShinyManager.h.
uint64_t Shiny::ProfileManager::_lookupCount |
Definition at line 59 of file ShinyManager.h.
Referenced by _incLookup(), and lookupSuccessRate().
uint64_t Shiny::ProfileManager::_lookupSuccessCount |
Definition at line 60 of file ShinyManager.h.
Referenced by _incLookupSuccess(), and lookupSuccessRate().
ProfileNodeTable* Shiny::ProfileManager::_nodeTable |
Definition at line 56 of file ShinyManager.h.
uint32_t Shiny::ProfileManager::_tableMask |
Definition at line 54 of file ShinyManager.h.
uint32_t Shiny::ProfileManager::_tableSize |
Definition at line 63 of file ShinyManager.h.
Referenced by allocMemInBytes(), and tableUsage().
|
static |
Definition at line 81 of file ShinyManager.h.
Referenced by staticMemInBytes(), and Shiny::ProfileAutoEndNode::~ProfileAutoEndNode().
uint32_t Shiny::ProfileManager::nodeCount |
Definition at line 65 of file ShinyManager.h.
Referenced by outputNodesAsString(), and tableUsage().
ProfileNode Shiny::ProfileManager::rootNode |
Definition at line 73 of file ShinyManager.h.
Referenced by _init(), _uninit(), and outputNodesAsString().
ProfileZone Shiny::ProfileManager::rootZone |
Definition at line 74 of file ShinyManager.h.
Referenced by _uninit(), and outputZonesAsString().
uint32_t Shiny::ProfileManager::zoneCount |
Definition at line 66 of file ShinyManager.h.
Referenced by outputZonesAsString(), and staticMemInBytes().