15 #ifndef __IPSDKIMAGEPROCESSING_IMAGEYSTRIP2DSPLIT_H__ 16 #define __IPSDKIMAGEPROCESSING_IMAGEYSTRIP2DSPLIT_H__ 18 #include <IPSDKImageProcessing/DataSplit/Strip/YStrip2d/BaseImageYStrip2dSplit.h> 26 template <
typename TProcessor,
typename InputDataType,
typename TAttribute>
28 typename TAttribute::ValueType>
62 void init(
const boost::shared_ptr<InputDataType>& pImage,
65 void init(
const boost::shared_ptr<InputDataType>& pImage,
79 const boost::shared_ptr<OutputType>& pImageYStrip2d);
89 template <
typename TProcessor,
typename InputDataType,
typename TAttribute>
90 inline const std::string&
93 return TAttribute::getObjectNameStr();
96 template <
typename TProcessor,
typename InputDataType,
typename TAttribute>
97 inline const std::string&
100 return TAttribute::getToolTipStr();
103 template <
typename TProcessor,
typename InputDataType,
typename TAttribute>
110 this->initBase(pImage, stripAllocationType, stripParsingDirection);
113 template <
typename TProcessor,
typename InputDataType,
typename TAttribute>
121 this->initBase(pImage, stripAllocationType, stripParsingDirection, lineParsingDirection);
124 template <
typename TProcessor,
typename InputDataType,
typename TAttribute>
130 "This attribute is not part of processor class");
132 return dynamic_cast<const TProcessor*
>(&processor) != 0;
135 template <
typename TProcessor,
typename InputDataType,
typename TAttribute>
138 const boost::shared_ptr<OutputType>& pImageYStrip2d)
141 TProcessor& tProcessor =
static_cast<TProcessor&
>(processor);
144 tProcessor.TProcessor::template set<TAttribute>(pImageYStrip2d);
155 #endif // __IPSDKIMAGEPROCESSING_IMAGEYSTRIP2DSPLIT_H__ BoolResult processAttribute(processor::BaseProcessor &processor, const boost::shared_ptr< OutputType > &pImageYStrip2d)
initialize processor attribute associate to split operation for a given element index ...
Definition: ImageYStrip2dSplit.h:137
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
Concrete class for split operation generating image y strips 2d.
Definition: ImageYStrip2dSplit.h:27
void init(const boost::shared_ptr< InputDataType > &pImage, const image::eStripAllocationType &stripAllocationType, const image::eStripParsingDirection &stripParsingDirection)
initialization method for splitted objects
Definition: ImageYStrip2dSplit.h:105
const std::string & getAttributeName() const
retrieve attribute name associated to split operation
Definition: ImageYStrip2dSplit.h:91
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
TAttribute AttributeType
attribute type associated to object
Definition: ImageYStrip2dSplit.h:36
bool checkProcessorType(const processor::BaseProcessor &processor)
check processor type in derived class
Definition: ImageYStrip2dSplit.h:126
const std::string & getAttributeToolTip() const
retrieve attribute tooltip associated to split operation
Definition: ImageYStrip2dSplit.h:98
TProcessor ProcessorType
processor type associated to object
Definition: ImageYStrip2dSplit.h:33
eStripParsingDirection
Enumerate describing strip parsing direction.
Definition: ImageStripTypes.h:72
TAttribute::ValueType OutputType
output data type for split operation
Definition: ImageYStrip2dSplit.h:39
Base class for split operation generating image y strips 2d.
Definition: BaseImageYStrip2dSplit.h:32