Tomato
OxModel.hxx
1 
7 #ifndef Tomato_OxModel_HXX
8 #define Tomato_OxModel_HXX
9 
10 #include "KWUtil.h"
11 #include <iostream>
12 
13 namespace Ox {
14 
15  template< typename MeasureType >
16  void
17  Model<MeasureType>
18  ::setNSamples(int _nSamples) {
19  Model::_nSamples = _nSamples;
20  _Residuals = new MeasureType[_nSamples];
21  }
22 
23  template< typename MeasureType >
24  void
27  int nSamples = this->getNSamples();
28  std::cout << "\nYou called disp() on a Model object " << this << " with nSamples: " << getNSamples();
29  KWUtil::printArray(_InvTimes != 0, nSamples, _InvTimes, (char*)"\nInvTimes: ");
30  KWUtil::printArray(_EchoTimes != 0, nSamples, _EchoTimes, (char*)"\nEchoTimes: ");
31  KWUtil::printArray(_RepTimes != 0, nSamples, _RepTimes, (char*)"\nRepTimes: ");
32  KWUtil::printArray(_RelAcqTimes!= 0, nSamples, _RelAcqTimes, (char*)"\nRelAcqTimes: ");
33  KWUtil::printArray(_Signal != 0, nSamples, _Signal, (char*)"\nSignal: ");
34  std::cout << std::endl;
35  }
36 
37  template< typename MeasureType >
38  void
41  _InvTimes = 0;
42  _EchoTimes = 0;
43  _RepTimes = 0;
44  _RelAcqTimes = 0;
45  _Signal = 0;
46  }
47 
48  template< typename MeasureType >
51 
52  _nSamples = 0;
53  _nDims = 0;
54 
55  _Residuals = 0; // pointer
56  setAllPointersToNull();
57 
58  };
59 
60  template< typename MeasureType >
62  ::Model(const Model &old) {
63 
64  _nSamples = old._nSamples;
65  _nDims = old._nDims;
66 
67  _Residuals = new MeasureType[_nSamples];
68  setAllPointersToNull();
69 
70  }
71 
72  template< typename MeasureType >
75  delete [] _Residuals;
76  };
77 
78 } //namespace Ox
79 
80 #endif //Tomato_OxModel_HXX
virtual void disp()
show me your ModelT1
Definition: OxModel.hxx:26
Container for a model function, cost function and Least-Squares function. And derivatives.
Definition: OxModel.h:26
Model()
constructor
Definition: OxModel.hxx:50
virtual ~Model()
do not forget about the virtual destructor, see https://stackoverflow.com/questions/461203/when-to-us...
Definition: OxModel.hxx:74
void setAllPointersToNull()
set all the pointers to zero
Definition: OxModel.hxx:40
Definition: OxCalculator.h:19