Slicer 5.9
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 Copyright (c) Brigham and Women's Hospital (BWH) All Rights Reserved.
4
5 See License.txt or http://www.slicer.org/copyright/copyright.txt for details.
6
7==========================================================================*/
8#ifndef itkSeparateComponentsOfADiffusionTensorImage_h
9#define itkSeparateComponentsOfADiffusionTensorImage_h
10
11#include <itkImageToImageFilter.h>
12#include <itkImage.h>
13#include <itkDiffusionTensor3D.h>
14#include <itkImageRegionIterator.h>
15#include <itkImageRegionConstIterator.h>
16
17namespace itk
18{
23template <class TInput, class TOutput>
25 : public ImageToImageFilter
26 <Image<DiffusionTensor3D<TInput>, 3>,
27 Image<TOutput, 3> >
28{
29public:
30 typedef TInput InputDataType;
31 typedef TOutput OutputDataType;
32
33 typedef ImageToImageFilter
34 <Image<DiffusionTensor3D<TInput>, 3>,
35 Image<TOutput, 3> >
37
38 typedef DiffusionTensor3D<InputDataType> InputTensorDataType;
39 typedef Image<InputTensorDataType, 3> InputImageType;
41 typedef SmartPointer<Self> Pointer;
42 typedef SmartPointer<const Self> ConstPointer;
43 typedef typename InputImageType::Pointer InputImagePointerType;
44 typedef Image<OutputDataType, 3> OutputImageType;
45 typedef typename OutputImageType::Pointer OutputImagePointerType;
46 typedef itk::ImageRegionIterator<OutputImageType> OutputIteratorType;
47 typedef itk::ImageRegionConstIterator<InputImageType> InputIteratorType;
48 typedef typename OutputImageType::RegionType OutputImageRegionType;
49// typedef typename OutputTensorDataType::RealValueType TensorRealType ;
50
53
55protected:
57
58 void DynamicThreadedGenerateData( const OutputImageRegionType & outputRegionForThread) override;
59
61
63
64private:
65
66};
67
68} // end namespace itk
69
70#ifndef ITK_MANUAL_INSTANTIATION
71#include "itkSeparateComponentsOfADiffusionTensorImage.txx"
72#endif
73
74#endif
itkTypeMacro(SeparateComponentsOfADiffusionTensorImage, ImageToImageFilter)
void DynamicThreadedGenerateData(const OutputImageRegionType &outputRegionForThread) override
itk::ImageRegionConstIterator< InputImageType > InputIteratorType
ImageToImageFilter< Image< DiffusionTensor3D< TInput >, 3 >, Image< TOutput, 3 > > Superclass
Simplified inverse ITK transforms.