CASToR  2.0
Tomographic Reconstruction (PET/SPECT/CT)
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
iImageConvolverTemplate.hh
Go to the documentation of this file.
1 /*
2 This file is part of CASToR.
3 
4  CASToR is free software: you can redistribute it and/or modify it under the
5  terms of the GNU General Public License as published by the Free Software
6  Foundation, either version 3 of the License, or (at your option) any later
7  version.
8 
9  CASToR is distributed in the hope that it will be useful, but WITHOUT ANY
10  WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
11  FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
12  details.
13 
14  You should have received a copy of the GNU General Public License along with
15  CASToR (in file GNU_GPL.TXT). If not, see <http://www.gnu.org/licenses/>.
16 
17 Copyright 2017-2018 all CASToR contributors listed below:
18 
19  --> current contributors: Thibaut MERLIN, Simon STUTE, Didier BENOIT, Claude COMTAT, Marina FILIPOVIC, Mael MILLARDET
20  --> past contributors: Valentin VIELZEUF
21 
22 This is CASToR version 2.0.
23 */
24 
31 #ifndef IIMAGECONVOLVERTEMPLATE_HH
32 #define IIMAGECONVOLVERTEMPLATE_HH 1
33 
34 #include "gVariables.hh"
35 #include "gOptions.hh"
36 #include "oImageSpace.hh"
37 #include "vImageConvolver.hh"
38 #include "sAddonManager.hh"
39 
52 {
53  // -----------------------------------------------------------------------------------------
54  // Constructor & Destructor
55  public:
71 
72 
73  // -----------------------------------------------------------------------------------------
74  // Public member functions
75  public:
76  // Function for automatic insertion (put the class name as the parameter and do NOT add semi-colon at the end of the line)
88  int ReadConfigurationFile(const string& a_fileOptions);
99  int ReadOptionsList(const string& a_listOptions);
108  void ShowHelp();
109 
110 
111  // -----------------------------------------------------------------------------------------
112  // Private member functions
113  private:
137 
138 
139  // -----------------------------------------------------------------------------------------
140  // Data members
141  protected:
142  // Declare here any members useful for this specific module
143 };
144 
145 
146 // Class for automatic insertion (set here the visible image convolver's name as the first parameter,
147 // put the class name as the second parameter and do NOT add semi-colon at the end of the line)
149 
150 #endif
This header file is mainly used to declare some macro definitions and all includes needed from the st...
int BuildConvolutionKernel()
A private function used to build the convolution kernel specific to the child convolver.
#define CLASS_IMAGE_CONVOLVER(NAME, CLASS)
~iImageConvolverTemplate()
The destructor of iImageConvolverTemplate.
int ReadOptionsList(const string &a_listOptions)
A function used to read options from a list of options.
int ReadConfigurationFile(const string &a_fileOptions)
A function used to read options from a configuration file.
Declaration of class oImageSpace.
int CheckSpecificParameters()
A private function used to check the parameters settings specific to the child module.
#define FUNCTION_IMAGE_CONVOLVER(CLASS)
This file is used for all kind of different functions designed for options parsing and ASCII file rea...
This class is a template of an image convolver module to serve as an example.
Declaration of class vImageConvolver.
void ShowHelp()
A function used to show help about the child module.
iImageConvolverTemplate()
The constructor of iImageConvolverTemplate.
Declaration of class sAddonManager.
This abstract class is the generic image convolver class used by the oImageConvolverManager.