23 #ifndef otbImportImageFilter_h
24 #define otbImportImageFilter_h
26 #include "itkImageSource.h"
44 template <
typename TOutputImageType>
67 typedef itk::Index<OutputImageType::ImageDimension>
IndexType;
70 typedef itk::Size<OutputImageType::ImageDimension>
SizeType;
74 typedef itk::ImageRegion<OutputImageType::ImageDimension>
RegionType;
77 typedef typename OutputImageType::PixelType
TPixel;
80 TPixel* GetImportPointer();
89 void SetImportPointer(
TPixel* ptr,
unsigned long num,
bool LetFilterManageMemory);
97 if (m_Region != region)
116 itkSetVectorMacro(Spacing,
const double, OutputImageType::ImageDimension);
117 itkSetVectorMacro(Spacing,
const float, OutputImageType::ImageDimension);
122 itkGetVectorMacro(Spacing,
const double, OutputImageType::ImageDimension);
123 void SetSpacing(
const SpacingType& spacing);
128 itkSetVectorMacro(Origin,
const double, OutputImageType::ImageDimension);
129 itkSetVectorMacro(Origin,
const float, OutputImageType::ImageDimension);
130 void SetOrigin(
const OriginType& origin);
135 itkGetVectorMacro(Origin,
const double, OutputImageType::ImageDimension);
137 typedef itk::Matrix<double, OutputImageType::ImageDimension, OutputImageType::ImageDimension>
DirectionType;
150 void PrintSelf(std::ostream& os, itk::Indent indent)
const override;
154 void GenerateData()
override;
159 void GenerateOutputInformation()
override;
168 void EnlargeOutputRequestedRegion(itk::DataObject* output)
override;
175 double m_Spacing[OutputImageType::ImageDimension];
176 double m_Origin[OutputImageType::ImageDimension];
186 #ifndef OTB_MANUAL_INSTANTIATION