18 #ifndef __itkDWIWriter_h 19 #define __itkDWIWriter_h 24 #include "itkVectorImage.h" 25 #include "itkImageSource.h" 26 #include "vnl/vnl_matrix.h" 59 template <
class TPixelType,
unsigned int VImageDimension = 3 >
60 class ITK_EXPORT
DWIWriter :
public ImageSource< VectorImage<TPixelType, VImageDimension> >
66 typedef ImageSource< VectorImage<TPixelType, VImageDimension> >
Superclass;
75 typedef Image<TPixelType, VImageDimension>
B0ImageType;
84 typedef typename DWIImageType::SizeType
SizeType;
105 itkSetObjectMacro(MaskImage, MaskImageType);
106 itkGetConstObjectMacro(MaskImage, MaskImageType);
109 itkSetObjectMacro(B0Image, B0ImageType);
110 itkGetObjectMacro(B0Image, B0ImageType);
112 itkSetMacro(ConfigurationFile, std::string);
113 itkGetMacro(ConfigurationFile, std::string);
114 itkSetMacro(DWIFile, std::string);
115 itkGetMacro(DWIFile, std::string);
116 itkSetMacro(OrientationFile, std::string);
117 itkGetMacro(OrientationFile, std::string);
118 itkSetMacro(BFile, std::string);
119 itkGetMacro(BFile, std::string);
122 itkSetMacro(UseRelativePath,
bool);
123 itkGetMacro(UseRelativePath,
bool);
124 itkBooleanMacro(UseRelativePath);
127 itkSetMacro(OutputEachShell,
bool);
128 itkGetMacro(OutputEachShell,
bool);
129 itkBooleanMacro(OutputEachShell);
132 using Superclass::SetInput;
133 void SetInput(
const DWIImageType *input);
134 const DWIImageType * GetInput();
151 void WriteToConfigurationFile(
const std::string& file);
158 void PrintSelf(std::ostream& os, Indent indent)
const ITK_OVERRIDE;
165 void operator=(
const Self &);
183 #if !defined(ITK_MANUAL_INSTANTIATION) && !defined(__itkDWIWriter_hxx)
B0ImageType::RegionType B0RegionType
DWIImageType::IndexType IndexType
VectorImage< TPixelType, VImageDimension > DWIImageType
SamplingSchemeQSpaceType::Pointer SamplingSchemeQSpacePointer
SmartPointer< Self > Pointer
B0ImageType MaskImageType
DWIImageType::SizeType SizeType
SamplingSchemeQSpace< double > SamplingSchemeQSpaceType
DWIImageType::DirectionType DirectionType
MaskImageType::Pointer m_MaskImage
ImageSource< VectorImage< TPixelType, VImageDimension > > Superclass
utl::NDArray< double, 2 > MatrixType
B0ImageType::SpacingType B0SpacingType
B0ImageType::IndexType B0IndexType
DWIImageType::PixelType PixelType
this class describes sampling in Q space.
B0ImageType::SizeType B0SizeType
write gradient file, b values and DWI files (with optional index file)
std::string m_ConfigurationFile
B0ImageType::Pointer m_B0Image
std::vector< double > STDVectorType
DWIImageType::RegionType RegionType
B0ImageType::PixelType B0PixelType
utl_shared_ptr< MatrixType > MatrixPointer
DWIImageType::SpacingType SpacingType
SamplingSchemeQSpacePointer m_SamplingSchemeQSpace
std::string m_OrientationFile
B0ImageType::DirectionType B0DirectionType
SmartPointer< Self > Pointer
Image< TPixelType, VImageDimension > B0ImageType
utl_shared_ptr< STDVectorType > STDVectorPointer