DMRITool  v0.1.1-139-g860d86b4
Diffusion MRI Tool
itkStructureTensorImageFilter.h
Go to the documentation of this file.
1 
13 #ifndef itkStructureTensorImageFilter_h
14 #define itkStructureTensorImageFilter_h
15 
16 #include "itkVectorIndexSelectionCastImageFilter.h"
17 #include "itkGradientImageFilter.h"
18 
19 namespace itk
20 {
35 template< class TInputImage, class TOutputImage >
37  public ImageToImageFilter< TInputImage, TOutputImage >
38 {
39 public:
41  typedef ImageToImageFilter< TInputImage, TOutputImage> Superclass;
42  typedef SmartPointer<Self> Pointer;
43  typedef SmartPointer<const Self> ConstPointer;
44 
46  itkNewMacro(Self);
48  itkTypeMacro(StructureTensorImageFilter, Superclass);
49 
50  typedef TInputImage InputImageType;
51  typedef TOutputImage OutputImageType;
52 
53  typedef itk::GradientImageFilter<InputImageType, double, double, OutputImageType> GradientFilterType;
54 
55  itkSetMacro(IntensityScale, double);
56  itkGetMacro(IntensityScale, double);
57 
58 protected:
59  virtual void GenerateData() ITK_OVERRIDE;
60 
61 
63 
64  typename LightObject::Pointer InternalClone() const ITK_OVERRIDE;
65 
66  void PrintSelf(std::ostream& os, Indent indent) const ITK_OVERRIDE
67  {
68  Superclass::PrintSelf(os, indent);
69  os << indent << "m_IntensityScale = " << m_IntensityScale << std::endl;
70  }
71 
74 
75 private:
76  StructureTensorImageFilter(const Self &); // purposely not implemented
77  void operator=(const Self &); // purposely not implemented
78 };
79 
80 } // end namespace itk
81 
82 #if !defined(ITK_MANUAL_INSTANTIATION) && !defined(__itkStructureTensorImageFilter_hxx)
84 #endif
85 
86 #endif
STL namespace.
LightObject::Pointer InternalClone() const ITK_OVERRIDE
#define ITK_OVERRIDE
Definition: utlITKMacro.h:46
ImageToImageFilter< TInputImage, TOutputImage > Superclass
itk::GradientImageFilter< InputImageType, double, double, OutputImageType > GradientFilterType
void operator=(const Self &)
void PrintSelf(std::ostream &os, Indent indent) const ITK_OVERRIDE