Slicer  4.8
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
itkSeparateComponentsOfADiffusionTensorImage.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Diffusion Applications
4  Module: $HeadURL: http://svn.slicer.org/Slicer4/trunk/Modules/CLI/DiffusionApplications/ResampleDTI/itkDiffusionTensor3DResample.h $
5  Language: C++
6  Date: $Date: 2010/04/05 10:04:59 $
7  Version: $Revision: 1.1 $
8 
9  Copyright (c) Brigham and Women's Hospital (BWH) All Rights Reserved.
10 
11  See License.txt or http://www.slicer.org/copyright/copyright.txt for details.
12 
13 ==========================================================================*/
14 #ifndef itkSeparateComponentsOfADiffusionTensorImage_h
15 #define itkSeparateComponentsOfADiffusionTensorImage_h
16 
17 #include <itkImageToImageFilter.h>
18 #include <itkImage.h>
19 #include <itkDiffusionTensor3D.h>
20 #include <itkImageRegionIterator.h>
21 #include <itkImageRegionConstIterator.h>
22 
23 namespace itk
24 {
29 template <class TInput, class TOutput>
31  : public ImageToImageFilter
32  <Image<DiffusionTensor3D<TInput>, 3>,
33  Image<TOutput, 3> >
34 {
35 public:
36  typedef TInput InputDataType;
37  typedef TOutput OutputDataType;
38 
39  typedef ImageToImageFilter
40  <Image<DiffusionTensor3D<TInput>, 3>,
41  Image<TOutput, 3> >
43 
44  typedef DiffusionTensor3D<InputDataType> InputTensorDataType;
45  typedef Image<InputTensorDataType, 3> InputImageType;
47  typedef SmartPointer<Self> Pointer;
48  typedef SmartPointer<const Self> ConstPointer;
49  typedef typename InputImageType::Pointer InputImagePointerType;
50  typedef Image<OutputDataType, 3> OutputImageType;
51  typedef typename OutputImageType::Pointer OutputImagePointerType;
52  typedef itk::ImageRegionIterator<OutputImageType> OutputIteratorType;
53  typedef itk::ImageRegionConstIterator<InputImageType> InputIteratorType;
54  typedef typename OutputImageType::RegionType OutputImageRegionType;
55 // typedef typename OutputTensorDataType::RealValueType TensorRealType ;
56 
59 
60  itkNewMacro( Self );
61 protected:
63 
64  void ThreadedGenerateData( const OutputImageRegionType & outputRegionForThread, ThreadIdType threadId ) ITK_OVERRIDE;
65 
66  void GenerateOutputInformation() ITK_OVERRIDE;
67 
68  void GenerateInputRequestedRegion() ITK_OVERRIDE;
69 
70 private:
71 
72 };
73 
74 } // end namespace itk
75 
76 #ifndef ITK_MANUAL_INSTANTIATION
77 #include "itkSeparateComponentsOfADiffusionTensorImage.txx"
78 #endif
79 
80 #endif
Simplified inverse ITK transforms.
void ThreadedGenerateData(const OutputImageRegionType &outputRegionForThread, ThreadIdType threadId) ITK_OVERRIDE
itk::ImageRegionConstIterator< InputImageType > InputIteratorType
ImageToImageFilter< Image< DiffusionTensor3D< TInput >, 3 >, Image< TOutput, 3 > > Superclass
itkTypeMacro(SeparateComponentsOfADiffusionTensorImage, ImageToImageFilter)