NifTK  16.4.1 - 0798f20
CMIC's Translational Medical Imaging Platform
itkCheckForThreeLevelsFilter.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 itkCheckForThreeLevelsFilter_h
16 #define itkCheckForThreeLevelsFilter_h
17 
18 #include <itkImage.h>
20 
21 
22 namespace itk
23 {
38 template <class TImageType>
39 class ITK_EXPORT CheckForThreeLevelsFilter :
40  public BaseCTESegmentationFilter< TImageType >
41 {
42 public:
46  typedef SmartPointer<Self> Pointer;
47  typedef SmartPointer<const Self> ConstPointer;
48 
50  itkNewMacro(Self);
51 
54 
56  typedef typename Superclass::InputImageType InputImageType;
59  typedef typename Superclass::InputImagePointer InputImagePointer;
60  typedef typename Superclass::InputImageConstPointer InputImageConstPointer;
61  typedef typename Superclass::OutputPixelType OutputPixelType;
62  typedef typename Superclass::OutputImageType OutputImageType;
63  typedef typename Superclass::OutputImagePointer OutputImagePointer;
64  typedef typename Superclass::OutputImageConstPointer OutputImageConstPointer;
65 
67  const std::vector<InputIndexType>& GetListOfGreyMatterPixels() const { return this->m_ListOfGreyMatterVoxels; }
68 
70  void SetSegmentedImage(const InputImageType *image) {this->SetNthInput(0, const_cast<InputImageType *>(image)); }
71 
72 protected:
73 
76 
78  virtual void PrintSelf(std::ostream&, Indent) const;
79 
80  /* The main filter method. Note, single threaded. */
81  virtual void GenerateData();
82 
83 private:
84 
85  CheckForThreeLevelsFilter(const Self&); // purposely not implemented
86  void operator=(const Self&); // purposely not implemented
87 
88  std::vector<InputIndexType> m_ListOfGreyMatterVoxels;
89 };
90 
91 } // end namespace itk
92 
93 #ifndef ITK_MANUAL_INSTANTIATION
94 #include "itkCheckForThreeLevelsFilter.txx"
95 #endif
96 
97 #endif
Superclass::InputImagePointer InputImagePointer
Definition: itkCheckForThreeLevelsFilter.h:59
Superclass::OutputImagePointer OutputImagePointer
Definition: itkCheckForThreeLevelsFilter.h:63
GLenum GLsizei GLenum GLenum const GLvoid * image
Definition: glew.h:4052
CheckForThreeLevelsFilter Self
Definition: itkCheckForThreeLevelsFilter.h:44
Superclass::InputImageType InputImageType
Definition: itkCheckForThreeLevelsFilter.h:53
Definition: niftkITKAffineResampleImage.cxx:74
Superclass::InputIndexType InputIndexType
Definition: itkCheckForThreeLevelsFilter.h:58
const std::vector< InputIndexType > & GetListOfGreyMatterPixels() const
Definition: itkCheckForThreeLevelsFilter.h:67
float InputPixelType
Definition: niftkCTEPrepareVolumes.cxx:33
BaseCTESegmentationFilter< TImageType > Superclass
Definition: itkCheckForThreeLevelsFilter.h:45
Superclass::OutputImageConstPointer OutputImageConstPointer
Definition: itkCheckForThreeLevelsFilter.h:64
Base class for classes that manipulate the segmented volume before it gets to the Cortical Thickness ...
Definition: itkBaseCTESegmentationFilter.h:41
Superclass::InputImageConstPointer InputImageConstPointer
Definition: itkCheckForThreeLevelsFilter.h:60
SmartPointer< const Self > ConstPointer
Definition: itkCheckForThreeLevelsFilter.h:47
Simply checks for 3 levels and passes data straight through.
Definition: itkCheckForThreeLevelsFilter.h:39
Superclass::OutputPixelType OutputPixelType
Definition: itkCheckForThreeLevelsFilter.h:61
Superclass::InputIndexType InputIndexType
Definition: itkBaseCTESegmentationFilter.h:57
Superclass::OutputImageType OutputImageType
Definition: itkCheckForThreeLevelsFilter.h:62
Superclass::InputPixelType InputPixelType
Definition: itkCheckForThreeLevelsFilter.h:57
void SetSegmentedImage(const InputImageType *image)
Definition: itkCheckForThreeLevelsFilter.h:70
virtual ~CheckForThreeLevelsFilter()
Definition: itkCheckForThreeLevelsFilter.h:75
SmartPointer< Self > Pointer
Definition: itkCheckForThreeLevelsFilter.h:46