Orfeo Toolbox  4.0
otbWriterWatcherBase.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: ORFEO Toolbox
4  Language: C++
5  Date: $Date$
6  Version: $Revision$
7 
8 
9  Copyright (c) Centre National d'Etudes Spatiales. All rights reserved.
10  See OTBCopyright.txt for details.
11 
12  Some parts of this code are derived from ITK. See ITKCopyright.txt
13  for details.
14 
15 
16  This software is distributed WITHOUT ANY WARRANTY; without even
17  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
18  PURPOSE. See the above copyright notices for more information.
19 
20 =========================================================================*/
21 #ifndef __otbWriterWatcherBase_h
22 #define __otbWriterWatcherBase_h
23 
24 #include "itkCommand.h"
25 #include "itkProcessObject.h"
26 #include "itkTimeProbe.h"
27 
28 namespace otb
29 {
30 
44 class /*ITK_EXPORT*/ WriterWatcherBase
45 {
46 public:
47 
51  const char *comment = "");
52 
55  WriterWatcherBase(itk::ProcessObject* process, itk::ProcessObject * source, const char *comment = "");
56 
59 
62 
64  void operator =(const WriterWatcherBase&);
65 
67  virtual ~WriterWatcherBase();
68 
69  const char *GetNameOfClass()
70  {
71  return (m_Process.GetPointer() ? m_Process->GetNameOfClass() : "None");
72  }
73 
77  {
78  return m_Process.GetPointer();
79  }
80 
82  std::string GetComment() const
83  {
84  return m_Comment;
85  }
86 
89  {
90  return m_TimeProbe;
91  }
92 
93 protected:
94 
96  virtual void ShowWriterProgress() = 0;
97 
99  virtual void StartWriter() = 0;
100 
102  virtual void EndWriter() = 0;
103 
105  virtual void ShowFilterProgress() = 0;
106 
108  virtual void StartFilter() = 0;
109 
111  virtual void EndFilter() = 0;
112 
115 
117  std::string m_Comment;
118 
121 
124 
127 
130 
133 
136 
139 
142 
145 
147  unsigned long m_StartWriterTag;
148 
150  unsigned long m_EndWriterTag;
151 
153  unsigned long m_ProgressWriterTag;
154 
156  unsigned long m_StartFilterTag;
157 
159  unsigned long m_EndFilterTag;
160 
162  unsigned long m_ProgressFilterTag;
163 
164 private:
165 
166 };
167 
168 } // end namespace otb
169 
170 #endif

Generated at Sat Mar 8 2014 16:28:52 for Orfeo Toolbox with doxygen 1.8.3.1