ANIMA  4.0
animaTransformSeriesReader.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <itkCompositeTransform.h>
4 
5 namespace anima
6 {
7 
8 template <class TScalarType=double, unsigned int NDimensions=3>
10 {
11 public:
13  {
17  };
18 
20  {
21  std::string fileName;
23  bool invert;
24  };
25 
26  typedef itk::CompositeTransform <TScalarType,NDimensions> OutputTransformType;
27  typedef typename OutputTransformType::Pointer OutputTransformPointer;
28 
31 
32  void SetInput(std::string const& trListName) {m_Input = trListName;}
33  void SetInvertTransform(bool val) {m_InvertTransform = val;}
34  void SetNumberOfWorkUnits(unsigned int num) {m_NumberOfThreads = num;}
35  void SetExponentiationOrder(unsigned int val) {m_ExponentiationOrder = val;}
36 
37  void Update();
38 
39  OutputTransformType *GetOutputTransform() {return m_OutputTransform;}
40 
41 protected:
42  void addLinearTransformation(std::string &fileName, bool invert);
43  void addSVFTransformation(std::string &fileName, bool invert);
44  void addDenseTransformation(std::string &fileName, bool invert);
45 
46 private:
47  OutputTransformPointer m_OutputTransform;
48  bool m_InvertTransform;
49 
50  unsigned int m_NumberOfThreads;
51  unsigned int m_ExponentiationOrder;
52 
53  std::string m_Input;
54 };
55 
56 } // end namespace itk
57 
void SetExponentiationOrder(unsigned int val)
void addLinearTransformation(std::string &fileName, bool invert)
itk::CompositeTransform< TScalarType, NDimensions > OutputTransformType
void addSVFTransformation(std::string &fileName, bool invert)
OutputTransformType * GetOutputTransform()
void SetNumberOfWorkUnits(unsigned int num)
void addDenseTransformation(std::string &fileName, bool invert)
void SetInput(std::string const &trListName)
OutputTransformType::Pointer OutputTransformPointer