|
OTB
9.0.0
Orfeo Toolbox
|
Go to the documentation of this file.
21 #ifndef otbStreamingShrinkImageFilter_h
22 #define otbStreamingShrinkImageFilter_h
50 itkStaticConstMacro(ImageDimension,
unsigned int, 2);
55 return ImageDimension;
74 unsigned int GetNumberOfSplits(
const RegionType& region,
unsigned int requestedNumber)
override;
79 RegionType GetSplit(
unsigned int i,
unsigned int numberOfPieces,
const RegionType& region)
override;
81 itkGetMacro(TileSizeAlignment,
unsigned int);
83 itkGetMacro(TileDimension,
unsigned int);
85 itkSetMacro(ShrinkFactor,
unsigned int);
86 itkGetMacro(ShrinkFactor,
unsigned int);
95 void PrintSelf(std::ostream& os, itk::Indent indent)
const override;
108 template <
class TInputImage>
129 typedef typename ImageType::InternalPixelType
PixelType;
131 itkStaticConstMacro(InputImageDimension,
unsigned int, TInputImage::ImageDimension);
135 void PrepareStreaming(itk::DataObject* input,
const RegionType& region)
override;
139 m_ShrinkFactor = val;
144 return m_ShrinkFactor;
169 template <
class TInputImage,
class TOutputImage = TInputImage>
197 itkStaticConstMacro(InputImageDimension,
unsigned int, TInputImage::ImageDimension);
204 return m_ShrunkOutput;
207 void Synthetize(
void)
override;
209 void Reset(
void)
override;
211 itkSetMacro(ShrinkFactor,
unsigned int);
212 itkGetMacro(ShrinkFactor,
unsigned int);
219 void PrintSelf(std::ostream& os, itk::Indent indent)
const override;
221 void BeforeThreadedGenerateData()
override;
224 void ThreadedGenerateData(
const RegionType& outputRegionForThread, itk::ThreadIdType threadId)
override;
226 void AfterThreadedGenerateData()
override;
231 void AllocateOutputs()
override;
233 void GenerateOutputInformation()
override;
238 void operator=(
const Self&) =
delete;
265 template <
class TInputImage,
class TOutputImage = TInputImage>
288 using Superclass::SetInput;
291 this->GetFilter()->SetInput(input);
296 return this->GetFilter()->GetInput();
301 return this->GetFilter()->GetShrunkOutput();
309 m_StreamingManager->SetShrinkFactor(this->GetFilter()->GetShrinkFactor());
310 Superclass::Update();
318 m_StreamingManager = StreamingShrinkStreamingManagerType::New();
319 this->GetStreamer()->SetStreamingManager(m_StreamingManager);
330 void operator=(
const Self&) =
delete;
337 #ifndef OTB_MANUAL_INSTANTIATION
TInputImage::PixelType PixelType
OutputImageType * GetShrunkOutput()
itk::ImageRegion< ImageDimension > RegionType
StreamingShrinkImageFilter Self
itk::SmartPointer< Self > Pointer
static unsigned int GetImageDimension()
StreamingShrinkImageRegionSplitter Self
ImageType::InternalPixelType PixelType
~StreamingShrinkImageFilter() override
This class handles the streaming process used in the writers implementation.
This filter is the base class for all filter persisting data through multiple update....
~StreamingShrinkImageRegionSplitter() override
itk::SmartPointer< const Self > ConstPointer
StreamingShrinkImageFilter()
TInputImage::SizeType SizeType
The "otb" namespace contains all Orfeo Toolbox (OTB) classes.
PersistentFilterStreamingDecorator< PersistentShrinkImageFilter< TInputImage, TOutputImage > > Superclass
OutputImagePointer m_ShrunkOutput
itk::SmartPointer< const Self > ConstPointer
StreamingShrinkStreamingManagerPointerType m_StreamingManager
itk::SmartPointer< const Self > ConstPointer
OutputImageType * GetOutput()
const InputImageType * GetInput()
RegionType::SizeType SizeType
TInputImage InputImageType
ImageType::Pointer ImagePointerType
StreamingShrinkImageRegionSplitter()
TInputImage::IndexType IndexType
ImageType::RegionType RegionType
itk::DataObject::Pointer DataObjectPointer
TOutputImage OutputImageType
TInputImage::RegionType RegionType
itk::Index< ImageDimension > IndexType
itk::Size< ImageDimension > SizeType
unsigned int m_ShrinkFactor
PersistentShrinkImageFilter Self
void SetInput(InputImageType *input)
unsigned int m_TileDimension
unsigned int m_ShrinkFactor
unsigned int m_TileSizeAlignment
TOutputImage::Pointer OutputImagePointer
This filter link a persistent filter with a StreamingImageVirtualWriter.
StreamingManager< TInputImage > Superclass
StreamingShrinkStreamingManager< InputImageType > StreamingShrinkStreamingManagerType
itk::FixedArray< unsigned int, ImageDimension > m_SplitsPerDimension
StreamingShrinkStreamingManagerType::Pointer StreamingShrinkStreamingManagerPointerType
unsigned int m_ShrinkFactor
TInputImage::Pointer InputImagePointer
itk::SmartPointer< Self > Pointer
itk::SmartPointer< Self > Pointer
itk::SmartPointer< const Self > ConstPointer
IndexType::IndexValueType IndexValueType
TInputImage InputImageType
RegionType::IndexType IndexType
SizeType::SizeValueType SizeValueType
#define otbGetObjectMemberMacro(object, name, type)
Generates a quicklook of the input image.
void Update(void) override
Superclass::FilterType PersistentFilterType
StreamingShrinkStreamingManager Self
#define otbSetObjectMemberMacro(object, name, type)
TOutputImage OutputImageType
unsigned int GetShrinkFactor() const
PersistentImageFilter< TInputImage, TOutputImage > Superclass
itk::SmartPointer< Self > Pointer
itk::ImageRegionSplitter< 2 > Superclass
void SetShrinkFactor(unsigned int val)