ANIMA  4.0
animaMCMImage.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <itkVectorImage.h>
5 
6 namespace anima
7 {
8 
9 template <typename TPixel, unsigned int VImageDimension = 3>
10 class MCMImage : public itk::VectorImage <TPixel, VImageDimension>
11 {
12 public:
13  typedef itk::VectorImage <TPixel, VImageDimension> Superclass;
15  typedef itk::SmartPointer< Self > Pointer;
16  typedef itk::SmartPointer< const Self > ConstPointer;
17 
18  itkNewMacro(Self)
19  itkTypeMacro(MCMImage, VectorImage)
20 
22  typedef MCMType::Pointer MCMPointer;
23 
24  void SetDescriptionModel(MCMPointer &mcm);
25  MCMPointer &GetDescriptionModel();
26 
27  virtual void Graft(const itk::DataObject *data) ITK_OVERRIDE;
28 
29 protected:
30  MCMImage();
31  virtual ~MCMImage() {}
32 
33 private:
34  MCMImage(const Self &); // purposedly not implemented
35  void operator=(const Self &); // purposedly not implemented
36 
37  MCMPointer m_DescriptionModel;
38 };
39 
40 } // end namespace anima
41 
42 #include "animaMCMImage.hxx"
MCMPointer & GetDescriptionModel()
itk::SmartPointer< const Self > ConstPointer
Definition: animaMCMImage.h:16
MCMType::Pointer MCMPointer
Definition: animaMCMImage.h:22
virtual void Graft(const itk::DataObject *data) ITK_OVERRIDE
anima::MCMImage< TPixel, VImageDimension > Self
Definition: animaMCMImage.h:14
MultiCompartmentModel: holds several diffusion compartments, ordered by type It also handles weights ...
void SetDescriptionModel(MCMPointer &mcm)
itk::SmartPointer< Self > Pointer
Definition: animaMCMImage.h:15
itk::VectorImage< TPixel, VImageDimension > Superclass
Definition: animaMCMImage.h:13