16 #ifndef __IPSDKIMAGEPROCESSING_BASEIMAGEYSTRIP2DWITHKERNELSPLIT_H__ 17 #define __IPSDKIMAGEPROCESSING_BASEIMAGEYSTRIP2DWITHKERNELSPLIT_H__ 21 #pragma warning (push) 22 #pragma warning (disable : 4251) 24 #include <IPSDKImageProcessing/DataSplit/Strip/BaseImageStripSplit.h> 26 #include <IPSDKBaseData/Range/ElementsRange.h> 29 #include <boost/thread/mutex.hpp> 38 template <
typename InputDataType,
typename OutputDataType>
91 ipUInt64 getStartingKernelSizeX()
const;
92 ipUInt64 getStartingKernelSizeY()
const;
99 ipUInt64 getEndingKernelSizeX()
const;
100 ipUInt64 getEndingKernelSizeY()
const;
107 const boost::shared_ptr<OutputDataType>& pImageYStrip2dWithKernel) = 0;
116 BorderStorageType& pStrip,
117 BorderStorageMap& stripMap);
126 BorderStorageMap& stripMap);
139 void initBase(
const boost::shared_ptr<InputDataType>& pImage,
155 void initBase(
const boost::shared_ptr<InputDataType>& pImage,
171 void initBase(
const boost::shared_ptr<InputDataType>& pImage,
210 BorderStorageMap _startingInternalStripsMap;
214 BorderStorageMap _endingInternalStripsMap;
226 #pragma warning (pop) 228 #endif // __IPSDKIMAGEPROCESSING_BASEIMAGEYSTRIP2DWITHKERNELSPLIT_H__
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
Class encapsulating a 2d kernel spanning along x and y axis.
Definition: KernelXY.h:34
std::map< ElementsRange, BorderStorageType > BorderStorageMap
collection of border strip index by range
Definition: BaseImageYStrip2dWithKernelSplit.h:50
eImageStripSplitType getImageStripSplitType() const
retrieve image strip split operation type
Definition: BaseImageYStrip2dWithKernelSplit.h:62
uint64_t ipUInt64
Base types definition.
Definition: BaseTypes.h:55
Split operation generating image 2d strip with splitting along Y axis associated to a kernel...
Definition: ImageStripSplitTypes.h:41
OutputDataType::BorderStorageType BorderStorageType
border strip storage type
Definition: BaseImageYStrip2dWithKernelSplit.h:47
Base class for processor class.
Definition: BaseProcessor.h:43
eStripAllocationType
Enumerate describing image strip allocation policy.
Definition: ImageStripTypes.h:88
OutputDataType OutputType
output data type for split operation
Definition: BaseImageYStrip2dWithKernelSplit.h:44
#define IPSDKIMAGEPROCESSING_API
Import/Export macro for library IPSDKImageProcessing.
Definition: IPSDKImageProcessingExports.h:25
Predefined types for image strips management.
Class encapsulating a 2d structuring element spanning along x and y axis.
Definition: StructuringElementXY.h:32
Base class for request origin description.
Definition: BaseRequestOrigin.h:28
Predefined types for structuring element management.
eStripParsingDirection
Enumerate describing strip parsing direction.
Definition: ImageStripTypes.h:72
eImageStripSplitType
Enumerate describing image strip split type.
Definition: ImageStripSplitTypes.h:33
Base class for images data type.
Definition: BaseImage.h:43
Predefined types for kernel management.
Base class for image strip split operations for data dispatch.
Definition: BaseImageStripSplit.h:35
Base class for split operation generating image y strips 2d associated to a kernel.
Definition: BaseImageYStrip2dWithKernelSplit.h:39