NifTK  16.4.1 - 0798f20
CMIC's Translational Medical Imaging Platform
niftkITKRegionParametersDataNodeProperty.h
Go to the documentation of this file.
1 /*=============================================================================
2 
3  NifTK: A software platform for medical image computing.
4 
5  Copyright (c) University College London (UCL). All rights reserved.
6 
7  This software is distributed WITHOUT ANY WARRANTY; without even
8  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
9  PURPOSE.
10 
11  See LICENSE.txt in the top level directory for details.
12 
13 =============================================================================*/
14 
15 #ifndef niftkITKRegionParametersDataNodeProperty_h
16 #define niftkITKRegionParametersDataNodeProperty_h
17 
18 #include "niftkCoreExports.h"
19 
20 #include <algorithm>
21 
22 #include <mitkBaseProperty.h>
23 
24 namespace niftk
25 {
26 
32 class NIFTKCORE_EXPORT ITKRegionParametersDataNodeProperty : public mitk::BaseProperty
33 {
34 
35 public:
36 
37  mitkClassMacro(ITKRegionParametersDataNodeProperty, mitk::BaseProperty)
39 
40 
43  typedef std::vector<int> ParametersType;
44 
48  const ParametersType& GetITKRegionParameters() const;
49 
53  void SetITKRegionParameters(const ParametersType& parameters);
54 
58  bool HasVolume() const;
59 
63  void SetIndex(int x, int y, int z);
64 
68  void SetSize(int x, int y, int z);
69 
73  bool IsValid() const;
74 
78  void SetValid(bool valid);
79 
83  virtual std::string GetValueAsString() const override;
84 
88  virtual void Identity();
89 
90 protected:
91 
93  ITKRegionParametersDataNodeProperty(); // Purposefully hidden.
94  ITKRegionParametersDataNodeProperty(const ITKRegionParametersDataNodeProperty& other); // Purposefully hidden.
95 
99  virtual bool IsEqual(const mitk::BaseProperty& property) const override;
100 
104  virtual bool Assign(const mitk::BaseProperty&) override;
105 
106 private:
107 
108  ITKRegionParametersDataNodeProperty& operator=(const ITKRegionParametersDataNodeProperty&); // Purposefully not implemented.
109  itk::LightObject::Pointer InternalClone() const override;
110 
111  ParametersType m_Parameters;
112  bool m_IsValid;
113 };
114 
115 }
116 
117 #endif
GLdouble GLdouble z
Definition: glew.h:1543
Definition: niftkMeshSmoother.cxx:19
Definition: ReceptorMemberCommandTest.cxx:25
GLint GLint GLint GLint GLint GLint y
Definition: glew.h:1236
Definition: niftkITKAffineResampleImage.cxx:74
INT property
Definition: wglew.h:144
MITK data-node property suitable for holding an ITK Region, consisting of a "valid" flag...
Definition: niftkITKRegionParametersDataNodeProperty.h:32
GLint GLint GLint GLint GLint x
Definition: glew.h:1236
std::vector< int > ParametersType
Parameters are 6 integers, corresponding to index[X, Y, Z] and size[X, Y, Z].
Definition: niftkITKRegionParametersDataNodeProperty.h:43
Definition: niftkExceptionObject.h:21