16 #ifndef __IPSDKIMAGEPROCESSING_STATICIMAGEZSTRIP3DWITHKERNELSPLIT_H__ 17 #define __IPSDKIMAGEPROCESSING_STATICIMAGEZSTRIP3DWITHKERNELSPLIT_H__ 19 #include <IPSDKImageProcessing/DataSplit/StaticStrip/ZStrip3dWithKernel/BaseStaticImageZStrip3dWithKernelSplit.h> 27 template <
typename TProcessor,
typename InputDataType,
typename TAttribute>
29 typename TAttribute::ValueType>
75 void init(
const boost::shared_ptr<InputDataType>& pImage,
99 void init(
const boost::shared_ptr<InputDataType>& pImage,
123 void init(
const boost::shared_ptr<InputDataType>& pImage,
142 const boost::shared_ptr<OutputType>& pImageZStrip3dWithKernel);
152 template <
typename TProcessor,
typename InputDataType,
typename TAttribute>
153 inline const std::string&
156 return TAttribute::getObjectNameStr();
159 template <
typename TProcessor,
typename InputDataType,
typename TAttribute>
160 inline const std::string&
163 return TAttribute::getToolTipStr();
166 template <
typename TProcessor,
typename InputDataType,
typename TAttribute>
175 this->initBase(pImage, planElementInfoColl,
177 stripAllocationType, stripParsingDirection);
180 template <
typename TProcessor,
typename InputDataType,
typename TAttribute>
189 this->initBase(pImage, planElementInfoColl,
190 structuringElementXYZ,
191 stripAllocationType, stripParsingDirection);
194 template <
typename TProcessor,
typename InputDataType,
typename TAttribute>
208 this->initBase(pImage, planElementInfoColl,
209 startingKernelSizeX, endingKernelSizeX,
210 startingKernelSizeY, endingKernelSizeY,
211 startingKernelSizeZ, endingKernelSizeZ,
212 stripAllocationType, stripParsingDirection);
215 template <
typename TProcessor,
typename InputDataType,
typename TAttribute>
221 "This attribute is not part of processor class");
223 return dynamic_cast<const TProcessor*
>(&processor) != 0;
226 template <
typename TProcessor,
typename InputDataType,
typename TAttribute>
229 const boost::shared_ptr<OutputType>& pImageZStrip3dWithKernel)
232 TProcessor& tProcessor =
static_cast<TProcessor&
>(processor);
235 tProcessor.TProcessor::template set<TAttribute>(pImageZStrip3dWithKernel);
246 #endif // __IPSDKIMAGEPROCESSING_STATICIMAGEZSTRIP3DWITHKERNELSPLIT_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
void init(const boost::shared_ptr< InputDataType > &pImage, const ElementsRangeColl &planElementInfoColl, const KernelXYZ &kernelXYZ, const image::eStripAllocationType &stripAllocationType, const image::eStripParsingDirection &stripParsingDirection)
base class initialization method
Definition: StaticImageZStrip3dWithKernelSplit.h:168
std::vector< ElementsRange > ElementsRangeColl
collection of strip split element informations
Definition: StaticImageStripSplitTypes.h:49
TAttribute AttributeType
attribute type associated to object
Definition: StaticImageZStrip3dWithKernelSplit.h:37
TProcessor ProcessorType
processor type associated to object
Definition: StaticImageZStrip3dWithKernelSplit.h:34
uint64_t ipUInt64
Base types definition.
Definition: BaseTypes.h:55
const std::string & getAttributeName() const
retrieve attribute name associated to split operation
Definition: StaticImageZStrip3dWithKernelSplit.h:154
bool checkProcessorType(const processor::BaseProcessor &processor)
check processor type in derived class
Definition: StaticImageZStrip3dWithKernelSplit.h:217
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
const std::string & getAttributeToolTip() const
retrieve attribute tooltip associated to split operation
Definition: StaticImageZStrip3dWithKernelSplit.h:161
BoolResult processAttribute(processor::BaseProcessor &processor, const boost::shared_ptr< OutputType > &pImageZStrip3dWithKernel)
initialize processor attribute associate to split operation for a given element index ...
Definition: StaticImageZStrip3dWithKernelSplit.h:228
Concrete class for static split operation generating image z strips 3d associated to a kernel...
Definition: StaticImageZStrip3dWithKernelSplit.h:28
Class encapsulating a 3d structuring element spanning along x, y and z axis.
Definition: StructuringElementXYZ.h:35
TAttribute::ValueType OutputType
output data type for split operation
Definition: StaticImageZStrip3dWithKernelSplit.h:40
eStripParsingDirection
Enumerate describing strip parsing direction.
Definition: ImageStripTypes.h:72
Base class for static split operation generating image z strips 3d associated to a kernel...
Definition: BaseStaticImageZStrip3dWithKernelSplit.h:38
Class encapsulating a 3d kernel spanning along x, y and z axis.
Definition: KernelXYZ.h:34