16 #ifndef __IPSDKIMAGEPROCESSING_BASELINEZSTRIP3DWITHKERNELPARSER_H__ 17 #define __IPSDKIMAGEPROCESSING_BASELINEZSTRIP3DWITHKERNELPARSER_H__ 21 #pragma warning (push) 22 #pragma warning (disable : 4251) 25 #include <IPSDKImageProcessing/Algorithm/Parser/Strip/BaseStripParser.h> 35 template <
typename BaseStripAttributeClassType>
41 static const eIOStatus::domain g_attributeIO = BaseStripAttributeClassType::g_dataIOStatus;
44 typedef typename BaseStripAttributeClassType::ValueType
ValueType;
47 typedef typename BaseStripAttributeClassType::StorageType
StorageType;
69 void init(
const StorageType& pImageZStrip3dWithKernel);
83 const ValueType& getImageZStrip3dWithKernel()
const;
111 ipUInt64 getStartingKernelSizeX()
const;
116 ipUInt64 getEndingKernelSizeX()
const;
121 ipUInt64 getStartingKernelSizeY()
const;
126 ipUInt64 getEndingKernelSizeY()
const;
131 ipUInt64 getStartingKernelSizeZ()
const;
136 ipUInt64 getEndingKernelSizeZ()
const;
143 virtual ipUInt64 getBufferSize()
const = 0;
152 template <
typename T>
156 return static_cast<const T*
>(accessBuffer(knlPlanIdx, knlRowIdx));
167 virtual const void* accessBuffer(
const ipUInt64 knlPlanIdx,
168 const ipUInt64 knlRowIdx)
const = 0;
171 virtual void clearDerived();
192 #pragma warning (pop) 194 #endif // __IPSDKIMAGEPROCESSING_BASELINEZSTRIP3DWITHKERNELPARSER_H__ boost::shared_ptr< Border3dPolicy > Border3dPolicyPtr
shared pointer to Border3dPolicy
Definition: Border3dPolicyTypes.h:66
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
image::eStripParsingDirection _stripParsingDirection
strip parsing direction
Definition: BaseLineZStrip3dWithKernelParser.h:183
uint64_t ipUInt64
Base types definition.
Definition: BaseTypes.h:55
eStripParserType
Enumerate describing strip parser type.
Definition: StripParserTypes.h:30
Definition of import/export macro for library.
#define IPSDKIMAGEPROCESSING_API
Import/Export macro for library IPSDKImageProcessing.
Definition: IPSDKImageProcessingExports.h:25
Predefined types for border 3d policy management.
Predefined types for image strips management.
Z strip 3d with kernel parser allowing line by line strip parsing.
Definition: StripParserTypes.h:48
BaseStripAttributeClassType::StorageType StorageType
storage type associated to object
Definition: BaseLineZStrip3dWithKernelParser.h:47
image::Border3dPolicyPtr _pBorder3dPolicy
border policy associated to object
Definition: BaseLineZStrip3dWithKernelParser.h:177
StorageType _pImageZStrip3dWithKernel
shared pointer to z strip 3d with kernel
Definition: BaseLineZStrip3dWithKernelParser.h:180
eStripParsingDirection
Enumerate describing strip parsing direction.
Definition: ImageStripTypes.h:72
Base class for z strip 3d parsed line by line and associated to a kernel.
Definition: BaseLineZStrip3dWithKernelParser.h:36
Class used to define policy for 3d strip borders management during a kernel algorithm processing...
Definition: Border3dPolicy.h:34
Base class for objects allowing to parse strip attribute data.
Definition: BaseStripParser.h:27
BaseStripAttributeClassType::ValueType ValueType
value type associated to object
Definition: BaseLineZStrip3dWithKernelParser.h:44
const T * getBuffer(const ipUInt64 knlPlanIdx, const ipUInt64 knlRowIdx) const
retrieve buffer associated to current operation
Definition: BaseLineZStrip3dWithKernelParser.h:153
eStripParserType getStripParserType() const
retrieve strip parser type
Definition: BaseLineZStrip3dWithKernelParser.h:59