21 #ifndef otbUnaryFunctorVectorImageFilter_hxx
22 #define otbUnaryFunctorVectorImageFilter_hxx
25 #include "itkImageRegionIterator.h"
26 #include "itkProgressReporter.h"
34 template <
class TInputImage,
class TOutputImage,
class TFunction>
37 this->DynamicMultiThreadingOn();
38 this->SetNumberOfRequiredInputs(1);
46 template <
class TInputImage,
class TOutputImage,
class TFunction>
49 Superclass::GenerateOutputInformation();
51 this->GetOutput()->SetNumberOfComponentsPerPixel(this->GetInput()->GetNumberOfComponentsPerPixel());
57 template <
class TInputImage,
class TOutputImage,
class TFunction>
61 this->CallCopyOutputRegionToInputRegion(inputRegionForThread, outputRegionForThread);
64 itk::ImageRegionConstIterator<InputImageType> inputIt(this->GetInput(), inputRegionForThread);
67 itk::ImageRegionIterator<OutputImageType> outputIt(this->GetOutput(), outputRegionForThread);
71 while (!outputIt.IsAtEnd() && !inputIt.IsAtEnd())
73 outputIt.Set(m_Functor(inputIt.Get()));
void GenerateOutputInformation(void) override
OutputImageType::RegionType OutputImageRegionType
UnaryFunctorVectorImageFilter()
InputImageType::RegionType InputImageRegionType
void DynamicThreadedGenerateData(const OutputImageRegionType &outputRegionForThread) override
The "otb" namespace contains all Orfeo Toolbox (OTB) classes.