ITK  6.0.0
Insight Toolkit
itkLogOutput.h
Go to the documentation of this file.
1/*=========================================================================
2 *
3 * Copyright NumFOCUS
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 * https://www.apache.org/licenses/LICENSE-2.0.txt
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 *
17 *=========================================================================*/
18#ifndef itkLogOutput_h
19#define itkLogOutput_h
20
21#include "itkMacro.h"
22#include "itkObject.h"
23#include "itkObjectFactory.h"
24
25#include <string>
26
27namespace itk
28{
39class ITKCommon_EXPORT LogOutput : public Object
40{
41public:
42 using Self = LogOutput;
46
48 virtual void
49 Flush() = 0;
50
52 virtual void
53 Write(double timestamp) = 0;
54
56 virtual void
57 Write(const std::string & content) = 0;
58
60 virtual void
61 Write(const std::string & content, double timestamp) = 0;
62
63protected:
66
68 ~LogOutput() override;
69};
70} // namespace itk
71
72#endif // itkLogOutput_h
Light weight base class for most itk classes.
Represents an output stream.
Definition: itkLogOutput.h:40
virtual void Write(const std::string &content, double timestamp)=0
~LogOutput() override
virtual void Write(double timestamp)=0
virtual void Flush()=0
virtual void Write(const std::string &content)=0
Base class for most ITK classes.
Definition: itkObject.h:62
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....