CASToR  3.0
Tomographic Reconstruction (PET/SPECT/CT)
iLinearModelTemplate.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-2019 all CASToR contributors listed below:
18 
19  --> Didier BENOIT, Claude COMTAT, Marina FILIPOVIC, Thibaut MERLIN, Mael MILLARDET, Simon STUTE, Valentin VIELZEUF
20 
21 This is CASToR version 3.0.
22 */
23 
30 #ifndef IDYNAMICMODELTEMPLATE_HH
31 #define IDYNAMICMODELTEMPLATE_HH 1
32 
33 // Mother class of dynamic model
34 #include "vDynamicModel.hh"
35 // Required to automatically add the class in the CASToR code
36 #include "sAddonManager.hh"
37 
38 // Inherit from Generic Linear Model
39 #include "iLinearModel.hh"
40 
41 // This class inherits from iLinearModel,
42 // which itself inherits from the virtual vDynamicModel
43 // vDynamicModel
44 // |
45 // |-->> iLinearModel
46 // |
47 // |-->> iLinearModelTemplate
48 
56 {
57  // -----------------------------------------------------------------------------------------
58  // Constructor & Destructor
59  public:
70 
71 
72  // -----------------------------------------------------------------------------------------
73  // Public member functions related to the initialization of the model
74  public:
75  // Function for automatic insertion (put the class name as the parameters and do not add semi-colon at the end of the line)
96  int ReadAndCheckOptionsList(string a_listOptions);
103  int InitializeSpecific();
108  void ShowHelp();
109 
110 
111  // -----------------------------------------------------------------------------------------
112  // Public member functions called by the main iterative algorithm class
113 
114 
115  // -----------------------------------------------------------------------------------------
116  // Data members
117  protected:
118 
119 };
120 
121 // Class for automatic insertion (set here the visible dynamic model's name, put the class name as the parameters and do not add semi-colon at the end of the line)
123 
124 #endif
iLinearModelTemplate()
Constructor of iLinearModelTemplate. Simply set all data members to default values.
Declaration of class iLinearModel.
This class implements a general linear dynamic model applied between the images of a dynamic acquisit...
Definition: iLinearModel.hh:62
~iLinearModelTemplate()
Destructor of iLinearModelTemplate.
#define FUNCTION_DYNAMICMODEL(CLASS)
int CheckSpecificParameters()
This function is used to check whether all member variables have been correctly initialized or not...
void ShowHelp()
This function is used to print out specific help about the model and its options. ...
int InitializeSpecific()
This function is used to initialize the model parametric images and basis functions.
#define CLASS_DYNAMICMODEL(NAME, CLASS)
This class is a child of the vDynamicModel class implementing a template squeleton.
int ReadAndCheckConfigurationFileSpecific()
This function is used to read options from a configuration file, specific to this model...
Declaration of class vDynamicModel.
int ReadAndCheckOptionsList(string a_listOptions)
This function is used to read parameters from a string.
Declaration of class sAddonManager.