diff options
Diffstat (limited to 'indra/llcommon/lltracethreadrecorder.h')
-rw-r--r-- | indra/llcommon/lltracethreadrecorder.h | 100 |
1 files changed, 50 insertions, 50 deletions
diff --git a/indra/llcommon/lltracethreadrecorder.h b/indra/llcommon/lltracethreadrecorder.h index 8ee6729ac6..e3eadfb0bd 100644 --- a/indra/llcommon/lltracethreadrecorder.h +++ b/indra/llcommon/lltracethreadrecorder.h @@ -1,25 +1,25 @@ -/** +/** * @file lltrace.h * @brief Runtime statistics accumulation. * * $LicenseInfo:firstyear=2001&license=viewerlgpl$ * Second Life Viewer Source Code * Copyright (C) 2012, Linden Research, Inc. - * + * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; * version 2.1 of the License only. - * + * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. - * + * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * + * * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA * $/LicenseInfo$ */ @@ -35,67 +35,67 @@ namespace LLTrace { - class LL_COMMON_API ThreadRecorder - { - protected: - struct ActiveRecording; - typedef std::vector<ActiveRecording*> active_recording_list_t; - public: - ThreadRecorder(); - explicit ThreadRecorder(ThreadRecorder& parent); + class LL_COMMON_API ThreadRecorder + { + protected: + struct ActiveRecording; + typedef std::vector<ActiveRecording*> active_recording_list_t; + public: + ThreadRecorder(); + explicit ThreadRecorder(ThreadRecorder& parent); - ~ThreadRecorder(); + ~ThreadRecorder(); - AccumulatorBufferGroup* activate(AccumulatorBufferGroup* recording); - void deactivate(AccumulatorBufferGroup* recording); - active_recording_list_t::iterator bringUpToDate(AccumulatorBufferGroup* recording); + AccumulatorBufferGroup* activate(AccumulatorBufferGroup* recording); + void deactivate(AccumulatorBufferGroup* recording); + active_recording_list_t::iterator bringUpToDate(AccumulatorBufferGroup* recording); - void addChildRecorder(class ThreadRecorder* child); - void removeChildRecorder(class ThreadRecorder* child); + void addChildRecorder(class ThreadRecorder* child); + void removeChildRecorder(class ThreadRecorder* child); - // call this periodically to gather stats data from child threads - void pullFromChildren(); - void pushToParent(); + // call this periodically to gather stats data from child threads + void pullFromChildren(); + void pushToParent(); - TimeBlockTreeNode* getTimeBlockTreeNode(size_t index); + TimeBlockTreeNode* getTimeBlockTreeNode(size_t index); - protected: - void init(); + protected: + void init(); - protected: - struct ActiveRecording - { - ActiveRecording(AccumulatorBufferGroup* target); + protected: + struct ActiveRecording + { + ActiveRecording(AccumulatorBufferGroup* target); - AccumulatorBufferGroup* mTargetRecording; - AccumulatorBufferGroup mPartialRecording; + AccumulatorBufferGroup* mTargetRecording; + AccumulatorBufferGroup mPartialRecording; - void movePartialToTarget(); - }; + void movePartialToTarget(); + }; - AccumulatorBufferGroup mThreadRecordingBuffers; + AccumulatorBufferGroup mThreadRecordingBuffers; - BlockTimerStackRecord mBlockTimerStackRecord; - active_recording_list_t mActiveRecordings; + BlockTimerStackRecord mBlockTimerStackRecord; + active_recording_list_t mActiveRecordings; - class BlockTimer* mRootTimer; - TimeBlockTreeNode* mTimeBlockTreeNodes; - size_t mNumTimeBlockTreeNodes; - typedef std::list<class ThreadRecorder*> child_thread_recorder_list_t; + class BlockTimer* mRootTimer; + TimeBlockTreeNode* mTimeBlockTreeNodes; + size_t mNumTimeBlockTreeNodes; + typedef std::list<class ThreadRecorder*> child_thread_recorder_list_t; - child_thread_recorder_list_t mChildThreadRecorders; // list of child thread recorders associated with this master - LLMutex mChildListMutex; // protects access to child list - LLMutex mSharedRecordingMutex; - AccumulatorBufferGroup mSharedRecordingBuffers; - ThreadRecorder* mParentRecorder; + child_thread_recorder_list_t mChildThreadRecorders; // list of child thread recorders associated with this master + LLMutex mChildListMutex; // protects access to child list + LLMutex mSharedRecordingMutex; + AccumulatorBufferGroup mSharedRecordingBuffers; + ThreadRecorder* mParentRecorder; - }; + }; - ThreadRecorder* get_thread_recorder(); - void set_thread_recorder(ThreadRecorder*); + ThreadRecorder* get_thread_recorder(); + void set_thread_recorder(ThreadRecorder*); - void set_master_thread_recorder(ThreadRecorder*); - ThreadRecorder* get_master_thread_recorder(); + void set_master_thread_recorder(ThreadRecorder*); + ThreadRecorder* get_master_thread_recorder(); } #endif // LL_LLTRACETHREADRECORDER_H |