15 #ifndef BT_QUICK_PROF_H 16 #define BT_QUICK_PROF_H 19 #define USE_BT_CLOCK 1 68 #ifndef BT_NO_PROFILE // FIX redefinition 71 #endif //BT_NO_PROFILE 106 void CleanupMemory();
138 bool Is_Root(
void) {
return (CurrentParent->Get_Parent() == 0); }
140 void Enter_Child(
int index );
141 void Enter_Largest_Child(
void );
142 void Enter_Parent(
void );
172 static void Start_Profile(
const char * name );
173 static void Stop_Profile(
void );
175 static void CleanupMemory(
void);
180 static void Reset(
void );
181 static void Increment_Frame_Counter(
void );
183 static float Get_Time_Since_Reset(
void );
194 static void dumpAll();
205 #endif //#ifndef BT_NO_PROFILE 216 #define BT_PROFILE( name ) CProfileSample __profile( name ) 220 #endif //BT_QUICK_PROF_H void btSetCustomEnterProfileZoneFunc(btEnterProfileZoneFunc *enterFunc)
void btSetCustomLeaveProfileZoneFunc(btLeaveProfileZoneFunc *leaveFunc)
CProfileNode * Get_Child(void)
void Set_Current_UserPointer(void *ptr)
int Get_Total_Calls(void)
CProfileNode * CurrentParent
btScalar getTimeSeconds()
Returns the time in s since the last call to reset or since the Clock was created.
btEnterProfileZoneFunc * btGetCurrentEnterProfileZoneFunc()
int Get_Current_Parent_Total_Calls(void)
unsigned long long int getTimeNanoseconds()
btLeaveProfileZoneFunc * btGetCurrentLeaveProfileZoneFunc()
const char * Get_Current_Name(void)
float Get_Current_Parent_Total_Time(void)
The btClock is a portable basic clock that measures accurate time in seconds, use for profiling...
float Get_Current_Total_Time(void)
void reset()
Resets the initial reference time.
An iterator to navigate through the tree.
static unsigned long int ResetTime
ProfileSampleClass is a simple way to profile a function's scope Use the BT_PROFILE macro at the star...
btClock()
The btClock is a portable basic clock that measures accurate time in seconds, use for profiling...
CProfileNode * Get_Sibling(void)
struct btClockData * m_data
unsigned long long int getTimeMicroseconds()
Returns the time in us since the last call to reset or since the Clock was created.
void SetUserPointer(void *ptr)
static void Release_Iterator(CProfileIterator *iterator)
btClock & operator=(const btClock &other)
void * Get_Current_UserPointer(void)
void( btLeaveProfileZoneFunc)()
The Manager for the Profile system.
unsigned long long int getTimeMilliseconds()
Returns the time in ms since the last call to reset or since the btClock was created.
A node in the Profile Hierarchy Tree.
CProfileNode * Get_Parent(void)
const unsigned int BT_QUICKPROF_MAX_THREAD_COUNT
int Get_Current_Total_Calls(void)
const char * Get_Name(void)
CProfileNode * CurrentChild
unsigned long int StartTime
static int Get_Frame_Count_Since_Reset(void)
float Get_Total_Time(void)
void( btEnterProfileZoneFunc)(const char *msg)
const char * Get_Current_Parent_Name(void)
void * GetUserPointer() const
unsigned int btQuickprofGetCurrentThreadIndex2()
float btScalar
The btScalar type abstracts floating point numbers, to easily switch between double and single floati...