21 #ifndef otbPointSetSource_hxx
22 #define otbPointSetSource_hxx
32 template <
class TOutputPo
intSet>
39 this->ProcessObject::SetNumberOfRequiredOutputs(1);
40 this->ProcessObject::SetNthOutput(0, output.GetPointer());
42 m_GenerateDataRegion = 0;
43 m_GenerateDataNumberOfRegions = 0;
49 template <
class TOutputPo
intSet>
52 return static_cast<itk::DataObject*
>(TOutputPointSet::New().GetPointer());
58 template <
class TOutputPo
intSet>
61 if (this->GetNumberOfOutputs() < 1)
66 return static_cast<TOutputPointSet*
>(this->ProcessObject::GetOutput(0));
72 template <
class TOutputPo
intSet>
75 return static_cast<TOutputPointSet*
>(this->ProcessObject::GetOutput(idx));
81 template <
class TOutputPo
intSet>
85 <<
"SetOutput(): This method is slated to be removed from ITK. Please use GraftOutput() in possible combination with DisconnectPipeline() instead.");
86 this->ProcessObject::SetNthOutput(0, output);
93 template <
class TOutputPo
intSet>
96 Superclass::GenerateInputRequestedRegion();
102 template <
class TOutputPo
intSet>
105 this->GraftNthOutput(0, graft);
111 template <
class TOutputPo
intSet>
114 if (idx >= this->GetNumberOfOutputs())
116 itkExceptionMacro(<<
"Requested to graft output " << idx <<
" but this filter only has " << this->GetNumberOfOutputs() <<
" Outputs.");
121 itkExceptionMacro(<<
"Requested to graft output that is a NULL pointer");
124 itk::DataObject* output = this->GetOutput(idx);
127 output->Graft(graft);
133 template <
class TOutputPo
intSet>
136 Superclass::PrintSelf(os, indent);
OutputPointSetType::Pointer OutputPointSetPointer
void PrintSelf(std::ostream &os, itk::Indent indent) const override
itk::DataObject::Pointer DataObjectPointer
virtual void GraftNthOutput(DataObjectPointerArraySizeType idx, itk::DataObject *output)
void SetOutput(OutputPointSetType *output)
OutputPointSetType * GetOutput(void)
DataObjectPointer MakeOutput(DataObjectPointerArraySizeType idx) override
void GenerateInputRequestedRegion() override
TOutputPointSet OutputPointSetType
itk::ProcessObject::DataObjectPointerArraySizeType DataObjectPointerArraySizeType
virtual void GraftOutput(itk::DataObject *output)
The "otb" namespace contains all Orfeo Toolbox (OTB) classes.