16 #ifndef __IPSDKIMAGEPROCESSING_IMAGEXSTRIP2DWITHKERNELSPLIT_H__ 17 #define __IPSDKIMAGEPROCESSING_IMAGEXSTRIP2DWITHKERNELSPLIT_H__ 19 #include <IPSDKImageProcessing/DataSplit/Strip/XStrip2dWithKernel/BaseImageXStrip2dWithKernelSplit.h> 27 template <
typename TProcessor,
typename InputDataType,
typename TAttribute>
29 typename TAttribute::ValueType>
68 void init(
const boost::shared_ptr<InputDataType>& pImage,
85 void init(
const boost::shared_ptr<InputDataType>& pImage,
102 void init(
const boost::shared_ptr<InputDataType>& pImage,
119 const boost::shared_ptr<OutputType>& pImageYStrip2dWithKernel);
129 template <
typename TProcessor,
typename InputDataType,
typename TAttribute>
130 inline const std::string&
133 return TAttribute::getObjectNameStr();
136 template <
typename TProcessor,
typename InputDataType,
typename TAttribute>
137 inline const std::string&
140 return TAttribute::getToolTipStr();
143 template <
typename TProcessor,
typename InputDataType,
typename TAttribute>
152 this->initBase(pImage,
154 stripAllocationType, stripParsingDirection,
158 template <
typename TProcessor,
typename InputDataType,
typename TAttribute>
167 this->initBase(pImage,
168 structuringElementXY,
169 stripAllocationType, stripParsingDirection,
173 template <
typename TProcessor,
typename InputDataType,
typename TAttribute>
185 this->initBase(pImage,
186 startingKernelSizeX, endingKernelSizeX, startingKernelSizeY, endingKernelSizeY,
187 stripAllocationType, stripParsingDirection,
191 template <
typename TProcessor,
typename InputDataType,
typename TAttribute>
197 "This attribute is not part of processor class");
199 return dynamic_cast<const TProcessor*
>(&processor) != 0;
202 template <
typename TProcessor,
typename InputDataType,
typename TAttribute>
205 const boost::shared_ptr<OutputType>& pImageXStrip2dWithKernel)
208 TProcessor& tProcessor =
static_cast<TProcessor&
>(processor);
211 tProcessor.TProcessor::template set<TAttribute>(pImageXStrip2dWithKernel);
222 #endif // __IPSDKIMAGEPROCESSING_IMAGEXSTRIP2DWITHKERNELSPLIT_H__ Class allowing to encapsulate a typed process result associated to a string description.
Definition: ProcessingResult.h:28
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
bool checkProcessorType(const processor::BaseProcessor &processor)
check processor type in derived class
Definition: ImageXStrip2dWithKernelSplit.h:193
Class encapsulating a 2d kernel spanning along x and y axis.
Definition: KernelXY.h:34
TAttribute::ValueType OutputType
output data type for split operation
Definition: ImageXStrip2dWithKernelSplit.h:40
const std::string & getAttributeName() const
retrieve attribute name associated to split operation
Definition: ImageXStrip2dWithKernelSplit.h:131
uint64_t ipUInt64
Base types definition.
Definition: BaseTypes.h:55
Definition: NumericLimits.h:27
Base class for processor class.
Definition: BaseProcessor.h:43
structure allowing to check whether a given attribute exists in attribute collection information ...
Definition: AttributeCollInfoCheckMacros.h:131
eStripAllocationType
Enumerate describing image strip allocation policy.
Definition: ImageStripTypes.h:88
BoolResult processAttribute(processor::BaseProcessor &processor, const boost::shared_ptr< OutputType > &pImageYStrip2dWithKernel)
initialize processor attribute associate to split operation for a given element index ...
Definition: ImageXStrip2dWithKernelSplit.h:204
TAttribute AttributeType
attribute type associated to object
Definition: ImageXStrip2dWithKernelSplit.h:37
TProcessor ProcessorType
processor type associated to object
Definition: ImageXStrip2dWithKernelSplit.h:34
Base class for split operation generating image x strips 2d associated to a kernel.
Definition: BaseImageXStrip2dWithKernelSplit.h:38
const std::string & getAttributeToolTip() const
retrieve attribute tooltip associated to split operation
Definition: ImageXStrip2dWithKernelSplit.h:138
Class encapsulating a 2d structuring element spanning along x and y axis.
Definition: StructuringElementXY.h:32
eStripParsingDirection
Enumerate describing strip parsing direction.
Definition: ImageStripTypes.h:72
void init(const boost::shared_ptr< InputDataType > &pImage, const KernelXY &kernelXY, const image::eStripAllocationType &stripAllocationType, const image::eStripParsingDirection &stripParsingDirection, const ipUInt64 nbMaxEltsPerSplit=NumericLimits< ipUInt64 >::max())
initialization method for splitted objects
Definition: ImageXStrip2dWithKernelSplit.h:145
Concrete class for split operation generating image x strips 2d associated to a kernel.
Definition: ImageXStrip2dWithKernelSplit.h:28