go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
elxBaseComponent.h
Go to the documentation of this file.
1 /*=========================================================================
2  *
3  * Copyright UMC Utrecht and contributors
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  * http://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 __elxBaseComponent_h
19 #define __elxBaseComponent_h
20 
34 #ifdef _MSC_VER
35 #pragma warning ( disable : 4786 )
36 #pragma warning ( disable : 4503 )
37 #endif
38 
39 #include <iostream>
40 #include <sstream>
41 #include <iomanip> // std::setprecision
42 
44 #define __ELASTIX_VERSION 4.800
45 
47 namespace elastix
48 {
49 
66 {
67 public:
68 
75  virtual int BeforeAllBase( void ) { return 0; }
76  virtual int BeforeAll( void ) { return 0; }
77 
84  virtual void BeforeRegistrationBase( void ) {}
85  virtual void BeforeEachResolutionBase( void ) {}
86  virtual void AfterEachResolutionBase( void ) {}
87  virtual void AfterEachIterationBase( void ) {}
88  virtual void AfterRegistrationBase( void ) {}
89 
96  virtual void BeforeRegistration( void ) {}
97  virtual void BeforeEachResolution( void ) {}
98  virtual void AfterEachResolution( void ) {}
99  virtual void AfterEachIteration( void ) {}
100  virtual void AfterRegistration( void ) {}
101 
107  virtual const char * elxGetClassName( void ) const;
108 
116  virtual void SetComponentLabel( const char * label, unsigned int idx );
117 
119  virtual const char * GetComponentLabel( void ) const;
120 
122  std::string ConvertSecondsToDHMS( const double totalSeconds, const unsigned int precision ) const;
123 
124 protected:
125 
127  virtual ~BaseComponent() {}
128 
129 private:
130 
131  BaseComponent( const BaseComponent & ); // purposely not implemented
132  void operator=( const BaseComponent & ); // purposely not implemented
133 
134  std::string m_ComponentLabel;
135 
136 };
137 
138 } // end namespace elastix
139 
141 namespace elx = elastix;
142 
143 #endif // end #ifndef __elxBaseComponent_h
virtual int BeforeAll(void)
virtual int BeforeAllBase(void)
void operator=(const BaseComponent &)
virtual void AfterEachResolution(void)
virtual void AfterEachIterationBase(void)
std::string ConvertSecondsToDHMS(const double totalSeconds, const unsigned int precision) const
The BaseComponent class is a class that all elastix components should inherit from.
virtual const char * elxGetClassName(void) const
virtual const char * GetComponentLabel(void) const
virtual void AfterRegistrationBase(void)
virtual void AfterEachResolutionBase(void)
virtual void BeforeEachResolutionBase(void)
virtual void BeforeRegistrationBase(void)
virtual void AfterEachIteration(void)
virtual void SetComponentLabel(const char *label, unsigned int idx)
virtual void BeforeRegistration(void)
virtual void AfterRegistration(void)
virtual void BeforeEachResolution(void)


Generated on 04-09-2015 for elastix by doxygen 1.8.9.1 elastix logo