00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef __itkLogOutput_h
00019 #define __itkLogOutput_h
00020
00021 #include "itkMacro.h"
00022 #include "itkObject.h"
00023 #include "itkObjectFactory.h"
00024
00025 #include <string>
00026
00027 namespace itk
00028 {
00029
00039 class ITKCommon_EXPORT LogOutput : public Object
00040 {
00041
00042 public:
00043
00044 typedef LogOutput Self;
00045 typedef Object Superclass;
00046 typedef SmartPointer<Self> Pointer;
00047 typedef SmartPointer<const Self> ConstPointer;
00048
00050 virtual void Flush() = 0;
00051
00053 virtual void Write( double timestamp ) = 0;
00054
00056 virtual void Write(const std::string & content ) = 0;
00057
00059 virtual void Write(const std::string & content, double timestamp) = 0;
00060
00061 protected:
00062
00064 LogOutput() {};
00065
00067 virtual ~LogOutput() {};
00068
00069 };
00070
00071 }
00072
00073 #endif //__itkLogOutput_h
00074