18 #ifndef __itkThreadLogger_h
19 #define __itkThreadLogger_h
75 virtual void SetPriorityLevel(PriorityLevelType level);
80 virtual PriorityLevelType GetPriorityLevel()
const;
82 virtual void SetLevelForFlushing(PriorityLevelType level);
84 virtual PriorityLevelType GetLevelForFlushing()
const;
89 virtual void SetDelay(DelayType delay);
94 virtual DelayType GetDelay()
const;
97 virtual void AddLogOutput(OutputType *output);
99 virtual void Write(PriorityLevelType level, std::string
const & content);
101 virtual void Flush();
112 virtual void PrintSelf(std::ostream & os,
Indent indent)
const;
118 void InternalFlush();
147 #endif // __itkThreadLogger_h
Critical section locking class that can be allocated on the stack.
Logger::OutputType OutputType
OperationContainerType m_OperationQ
Light weight base class for most itk classes.
Logger::PriorityLevelType PriorityLevelType
SmartPointer< Self > Pointer
Represents an output stream.
Providing logging service as a separate thread.
std::queue< OperationType > OperationContainerType
OutputContainerType m_OutputQ
#define ITK_THREAD_RETURN_TYPE
LevelContainerType m_LevelQ
SimpleFastMutexLock m_Mutex
std::queue< std::string > MessageContainerType
MultiThreader::Pointer m_Threader
Control indentation during Print() invocation.
std::queue< PriorityLevelType > LevelContainerType
std::queue< OutputType::Pointer > OutputContainerType
MessageContainerType m_MessageQ
SmartPointer< const Self > ConstPointer
Used for logging information during a run.
unsigned int ThreadIdType