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
dtitypes.h
Go to the documentation of this file.
1// Copied from dtiprocess
2// available there: https://www.nitrc.org/projects/dtiprocess/
3/*=========================================================================
4
5 Program: NeuroLib (DTI command line tools)
6 Language: C++
7 Date: $Date: 2010/03/09 18:01:02 $
8 Version: $Revision: 1.2 $
9 Author: Casey Goodlett (gcasey@sci.utah.edu)
10
11 Copyright (c) Casey Goodlett. All rights reserved.
12 See NeuroLibCopyright.txt or https://www.ia.unc.edu/dev/Copyright.htm for details.
13
14 This software is distributed WITHOUT ANY WARRANTY; without even
15 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
16 PURPOSE. See the above copyright notices for more information.
17
18=========================================================================*/
19
20#ifndef DTITYPES_H
21#define DTITYPES_H
22
23// ITK Data types
24#include <itkImage.h>
25#include <itkVectorContainer.h>
26#include <itkVector.h>
27#include <itkCovariantVector.h>
28#include <itkDiffusionTensor3D.h>
29#include <itkAffineTransform.h>
30#include <itkDTITubeSpatialObject.h>
31#include <itkGroupSpatialObject.h>
32#include <itkRGBPixel.h>
33#include <itkVectorImage.h>
34
35// VNL Includes
36#include <vnl/vnl_matrix.h>
37#include <vnl/vnl_vector_fixed.h>
38
39// Define necessary types for images
40typedef double RealType;
41typedef double TransformRealType;
42typedef unsigned char LabelType;
43const unsigned int DIM = 3;
44
45typedef unsigned short ScalarPixelType;
46typedef itk::DiffusionTensor3D<double> TensorPixelType;
47typedef itk::Vector<double, 3> DeformationPixelType;
48typedef itk::CovariantVector<double, 3> GradientPixelType;
49
50typedef itk::VectorImage<ScalarPixelType, DIM> VectorImageType;
51typedef itk::Image<TensorPixelType, DIM> TensorImageType;
52
53typedef itk::Image<DeformationPixelType, DIM> DeformationImageType;
54typedef itk::Image<GradientPixelType, DIM> GradientImageType;
55
56typedef itk::Image<RealType, DIM> RealImageType;
57typedef itk::Image<ScalarPixelType, DIM> IntImageType;
58typedef itk::Image<LabelType, DIM> LabelImageType;
59typedef itk::Image<itk::RGBPixel<unsigned char>, 3> RGBImageType;
60
61typedef TensorImageType::SizeType ImageSizeType;
62typedef TensorImageType::SpacingType ImageSpacingType;
63
64typedef itk::AffineTransform<TransformRealType, 3> AffineTransformType;
65
66typedef vnl_vector_fixed<double, 3> GradientType;
67typedef itk::VectorContainer<unsigned int, GradientType> GradientListType;
68
69// enum InterpolationType {NearestNeighbor, Linear, Cubic};
70// enum TensorReorientationType {FiniteStrain, PreservationPrincipalDirection};
71
72// enum EigenValueIndex {Lambda1 = 0, Lambda2, Lambda3};
73
74// typedef itk::DTITubeSpatialObject<3> DTITubeType;
75// typedef DTITubeType::TubePointType DTIPointType;
76// typedef DTITubeType::PointListType DTIPointListType;
77
78// typedef itk::GroupSpatialObject<3> GroupType;
79// typedef GroupType::ChildrenListType ChildrenListType;
80
81#endif
itk::Image< RealType, DIM > RealImageType
Definition dtitypes.h:56
TensorImageType::SpacingType ImageSpacingType
Definition dtitypes.h:62
itk::DiffusionTensor3D< double > TensorPixelType
Definition dtitypes.h:46
itk::Vector< double, 3 > DeformationPixelType
Definition dtitypes.h:47
itk::Image< TensorPixelType, DIM > TensorImageType
Definition dtitypes.h:51
const unsigned int DIM
Definition dtitypes.h:43
itk::CovariantVector< double, 3 > GradientPixelType
Definition dtitypes.h:48
double RealType
Definition dtitypes.h:40
itk::VectorContainer< unsigned int, GradientType > GradientListType
Definition dtitypes.h:67
itk::Image< ScalarPixelType, DIM > IntImageType
Definition dtitypes.h:57
itk::Image< DeformationPixelType, DIM > DeformationImageType
Definition dtitypes.h:53
itk::AffineTransform< TransformRealType, 3 > AffineTransformType
Definition dtitypes.h:64
vnl_vector_fixed< double, 3 > GradientType
Definition dtitypes.h:66
itk::Image< LabelType, DIM > LabelImageType
Definition dtitypes.h:58
itk::Image< itk::RGBPixel< unsigned char >, 3 > RGBImageType
Definition dtitypes.h:59
itk::VectorImage< ScalarPixelType, DIM > VectorImageType
Definition dtitypes.h:50
itk::Image< GradientPixelType, DIM > GradientImageType
Definition dtitypes.h:54
unsigned short ScalarPixelType
Definition dtitypes.h:45
double TransformRealType
Definition dtitypes.h:41
TensorImageType::SizeType ImageSizeType
Definition dtitypes.h:61
unsigned char LabelType
Definition dtitypes.h:42