Slicer  4.10
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
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)