summaryrefslogtreecommitdiff
path: root/indra/llcommon/lltracethreadrecorder.h
diff options
context:
space:
mode:
authorRichard Linden <none@none>2012-12-21 00:13:21 -0800
committerRichard Linden <none@none>2012-12-21 00:13:21 -0800
commit013f04cabec8e110ee659d9b3f75a4d25f114b7b (patch)
tree2ce361819f7e5031a9b079c8d13c8d6895e50a3d /indra/llcommon/lltracethreadrecorder.h
parentc219282f5de753a044cecb53bd806145f68add9a (diff)
SH-3468 WIP add memory tracking base class
improvements on lifetime of lltrace core data structures tweaks to thread local pointer handling so that static constructors/destructors can safely call functions that use lltrace
Diffstat (limited to 'indra/llcommon/lltracethreadrecorder.h')
-rw-r--r--indra/llcommon/lltracethreadrecorder.h13
1 files changed, 10 insertions, 3 deletions
diff --git a/indra/llcommon/lltracethreadrecorder.h b/indra/llcommon/lltracethreadrecorder.h
index 102b980e44..d09527eced 100644
--- a/indra/llcommon/lltracethreadrecorder.h
+++ b/indra/llcommon/lltracethreadrecorder.h
@@ -50,6 +50,8 @@ namespace LLTrace
virtual void pushToMaster() = 0;
+ TimeBlockTreeNode* getTimeBlockTreeNode(S32 index);
+
protected:
struct ActiveRecording
{
@@ -64,7 +66,9 @@ namespace LLTrace
std::list<ActiveRecording> mActiveRecordings;
struct CurTimerData* mRootTimerData;
- class BlockTimer* mRootTimer;
+ class BlockTimer* mRootTimer;
+ TimeBlockTreeNode* mTimeBlockTreeNodes;
+ size_t mNumTimeBlockTreeNodes;
};
class LL_COMMON_API MasterThreadRecorder : public ThreadRecorder
@@ -104,8 +108,11 @@ namespace LLTrace
class SharedData
{
public:
- void copyFrom(const Recording& source);
- void copyTo(Recording& sink);
+ void appendFrom(const Recording& source);
+ void appendTo(Recording& sink);
+ void mergeFrom(const Recording& source);
+ void mergeTo(Recording& sink);
+ void reset();
private:
LLMutex mRecordingMutex;
Recording mRecording;