6#ifndef LIBCWD_STRUCT_DEBUG_TSD_H
7#define LIBCWD_STRUCT_DEBUG_TSD_H
21bool ensure_initialization(LIBCWD_TSD_PARAM);
36struct DebugObject_ThreadSpecificData
38 friend class DebugObject;
43#if CWDEBUG_DEBUGOUTPUT
52 std::ostream* current_bufferstream;
56 _private_::DebugStack<OutputState*> output_state_stack;
62 bool unfinished_expected;
68 _private_::DebugStack<int> continued_stack;
74 DebugString color_off;
83 DebugStringStackElement* margin_stack;
86 DebugStringStackElement* marker_stack;
89 unsigned short indent;
94 void start(DebugObject& debug_object, ChannelSetData& channel_set, LIBCWD_TSD_PARAM);
95 void finish(DebugObject& debug_object, ChannelSetData& , LIBCWD_TSD_PARAM);
96 [[noreturn]]
void fatal_finish(DebugObject& debug_object, ChannelSetData& channel_set, LIBCWD_TSD_PARAM);
105 DebugObject_ThreadSpecificData() : tsd_initialized(false), current_bufferstream(NULL) { }
106 ~DebugObject_ThreadSpecificData();
This object represents a debug channel, it has a fixed label. A debug channel can be viewed upon as a...
Definition Channel.h:74
The Debug Object class, this object represents one output device (ostream).
Definition DebugObject.h:110