CASToR  3.2
Tomographic Reconstruction (PET/SPECT/CT)
include/image/oImageProcessingManager.hh
Go to the documentation of this file.
1 
8 #ifndef OIMAGEPROCESSINGMANAGER_HH
9 #define OIMAGEPROCESSINGMANAGER_HH 1
10 
11 #include "gVariables.hh"
12 #include "oImageSpace.hh"
14 
30 {
31  // -----------------------------------------------------------------------------------------
32  // Constructor & Destructor
33  public:
48 
49  // -----------------------------------------------------------------------------------------
50  // Public member functions for initialization
51  public:
59  int CheckParameters();
69  int Initialize();
76  static void ShowCommonHelp();
77 
78 
79  // -----------------------------------------------------------------------------------------
80  // Public member functions for actions
81  public:
92  int ApplyProcessingForward(oImageSpace* ap_ImageSpace);
104  int ApplyProcessingIntra(oImageSpace* ap_ImageSpace);
117  int ApplyProcessingPost(oImageSpace* ap_ImageSpace);
118 
119 
120  // -----------------------------------------------------------------------------------------
121  // Public Get & Set functions
122  public:
128  inline void SetVerbose(int a_verboseLevel)
129  {m_verbose = a_verboseLevel;}
135  inline void SetImageDimensionsAndQuantification(oImageDimensionsAndQuantification* ap_ImageDimensionsAndQuantification)
136  {mp_ImageDimensionsAndQuantification = ap_ImageDimensionsAndQuantification;}
142  inline void SetOptions(vector<string> a_options)
143  {m_options = a_options;}
144 
145 
146  // -----------------------------------------------------------------------------------------
147  // Private member functions
148  private:
162 
163 
164  // -----------------------------------------------------------------------------------------
165  // Data members
166  private:
169  vector<string> m_options;
173  bool* mp_applyForward;
174  bool* mp_applyIntra;
175  bool* mp_applyPost;
176  bool m_checked;
177  bool m_initialized;
178  int m_verbose;
179 };
180 
181 #endif
int ApplyProcessingForward(oImageSpace *ap_ImageSpace)
Declaration of class oImageSpace.
static void ShowCommonHelp()
This function does not take any parameter and is used to display some help about the syntax of the op...
void SetImageDimensionsAndQuantification(oImageDimensionsAndQuantification *ap_ImageDimensionsAndQuantification)
int Initialize()
A function used to initialize the manager and all image processing modules it manages.
~oImageProcessingManager()
The destructor of oImageProcessingManager.
int ApplyProcessingPost(oImageSpace *ap_ImageSpace)
This abstract class is the generic image processing module class used by the oImageProcessingManager...
int CheckParameters()
A function used to check the parameters settings.
oImageProcessingManager()
The constructor of oImageProcessingManager.
int ApplyProcessingIntra(oImageSpace *ap_ImageSpace)
This class is designed to manage the different image processing modules and to apply them...
void SetOptions(vector< string > a_options)
This class holds all the matrices in the image domain that can be used in the algorithm: image...
This class is designed to manage all dimensions and quantification related stuff. ...
Declaration of class vImageProcessingModule.
oImageDimensionsAndQuantification * mp_ImageDimensionsAndQuantification
int ParseOptionsAndInitializeImageProcessingModules()
A function used to parse options and initialize image processing modules.