16 #ifndef __IPSDKIMAGEPROCESSING_INTENSITYMEASURESETSPLIT_H__ 17 #define __IPSDKIMAGEPROCESSING_INTENSITYMEASURESETSPLIT_H__ 19 #include <IPSDKImageProcessing/DataSplit/MeasureSet/BaseIntensityMeasureSetSplit.h> 28 template <
typename TProcessor,
typename InputDataType,
typename TAttribute>
66 void init(
const boost::shared_ptr<InputDataType>& pMeasureSet,
79 const boost::shared_ptr<InputDataType>& pSubMeasureSet);
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>
111 this->initBase(pMeasureSet, pShape2dColl, pMeasureSetColl, pShapeIndexesColl);
114 template <
typename TProcessor,
typename InputDataType,
typename TAttribute>
120 "This attribute is not part of processor class");
122 return dynamic_cast<const TProcessor*
>(&processor) != 0;
125 template <
typename TProcessor,
typename InputDataType,
typename TAttribute>
128 const boost::shared_ptr<InputDataType>& pSubMeasureSet)
131 TProcessor& tProcessor =
static_cast<TProcessor&
>(processor);
134 tProcessor.TProcessor::template set<TAttribute>(pSubMeasureSet);
145 #endif // __IPSDKIMAGEPROCESSING_INTENSITYMEASURESETSPLIT_H__ Class allowing to encapsulate a typed process result associated to a string description.
Definition: ProcessingResult.h:28
BoolResult processAttribute(processor::BaseProcessor &processor, const boost::shared_ptr< InputDataType > &pSubMeasureSet)
initialize processor attribute associate to split operation for a given sub measure set ...
Definition: IntensityMeasureSetSplit.h:127
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
bool checkProcessorType(const processor::BaseProcessor &processor)
check processor type in derived class
Definition: IntensityMeasureSetSplit.h:116
boost::shared_ptr< MeasureSetColl > MeasureSetCollPtr
shared pointer to measure set collection
Definition: MeasureSetSplitTypes.h:54
void init(const boost::shared_ptr< InputDataType > &pMeasureSet, const ipsdk::shape::segmentation::Shape2dCollConstPtr &pShape2dColl, const MeasureSetCollPtr &pMeasureSetColl, const UInt64VectorCollPtr &pShapeIndexesColl)
initialization method for splitted objects
Definition: IntensityMeasureSetSplit.h:105
TAttribute AttributeType
attribute type associated to object
Definition: IntensityMeasureSetSplit.h:37
TProcessor ProcessorType
processor type associated to object
Definition: IntensityMeasureSetSplit.h:34
const std::string & getAttributeName() const
retrieve attribute name associated to split operation
Definition: IntensityMeasureSetSplit.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
boost::shared_ptr< UInt64VectorColl > UInt64VectorCollPtr
shared pointer to collection of index associated to split operation coded with 64 bits ...
Definition: MeasureSetSplitTypes.h:66
Base class for intensity shape measure set split operations for data dispatch.
Definition: BaseIntensityMeasureSetSplit.h:34
boost::shared_ptr< const Shape2dColl > Shape2dCollConstPtr
shared pointer to const shape 2d collection object
Definition: Shape2dTypes.h:34
const std::string & getAttributeToolTip() const
retrieve attribute tooltip associated to split operation
Definition: IntensityMeasureSetSplit.h:98
Predefined types for shape 2d management.
TAttribute::ValueType OutputType
output data type for split operation
Definition: IntensityMeasureSetSplit.h:40
Concrete class for split operation generating intensity sub measure set for data dispatch.
Definition: IntensityMeasureSetSplit.h:29