IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
InputImageZStripColor3d.h
1 // InputImageZStripColor3d.h:
3 // --------------------------
4 //
14 
15 #ifndef __IPSDKIMAGE_INPUTIMAGEZSTRIPCOLOR3D_H__
16 #define __IPSDKIMAGE_INPUTIMAGEZSTRIPCOLOR3D_H__
17 
18 #include <IPSDKImage/Fragment/Strip/ZStripColor3d/BaseImageZStripColor3d.h>
19 
20 namespace ipsdk {
21 namespace image {
22 
25 
27 {
28  // declare serial class
30  // declare input data
32 
33  // friend class for protected members access
34  friend struct ImageStripExtractor;
35 
36 // predefined public types
37 public:
38  // Image support type
39  typedef const BaseImage ImageType;
40 
41 public:
47 
48 // methods
49 public:
50  //-----------------------------------
53  //-----------------------------------
54 
61  BoolResult readFromImage() const;
63 
67  HybridBuffer& getBuffer(const ipUInt64 cPlanIdx, const ipUInt64 zPlanIdx);
68 
69 protected:
75  void init(const ipUInt64 tPlanIdx,
76  const ColorGeometry& colorGeometry,
77  const ipUInt64 stripStartOffsetZ,
78  const ipUInt64 stripSizeZ,
79  const ipUInt64 imageSizeZ,
80  const eStripAllocationType& stripAllocationType,
81  const eStripParsingDirection& stripParsingDirection,
82  const PlanStorageColl2d& colorVolumeColl,
83  const DataIdentifierConstPtr& pImageIdentifier,
84  const DataItemMapConstPtr& pImageHeader);
85 
87  void createSubStrip(const ipUInt64 cPlanIdx,
88  const ipUInt64 tPlanIdx,
89  const ipUInt64 stripStartOffsetZ,
90  const ipUInt64 stripSizeZ,
91  const ipUInt64 imageSizeZ,
92  const eStripAllocationType& stripAllocationType,
93  const eStripParsingDirection& stripParsingDirection,
94  const PlanStorageColl1d& planStorageColl,
95  const DataIdentifierConstPtr& pImageIdentifier,
96  const DataItemMapConstPtr& pImageHeader,
97  ImageZStrip3dPtr& pImageZStrip3d) const;
98 
99 // attributes
100 protected:
101 
102 };
103 
106 
107 inline HybridBuffer&
109  const ipUInt64 cPlanIdx,
110  const ipUInt64 zPlanIdx)
111 {
112  return accessBuffer(cPlanIdx, zPlanIdx);
113 }
114 
117 
118 } // end of namespace image
119 } // end of namespace ipsdk
120 
121 #endif // __IPSDKIMAGE_INPUTIMAGEYSTRIPCOLOR2D_H__
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
uint64_t ipUInt64
Base types definition.
Definition: BaseTypes.h:55
boost::shared_ptr< BaseImageZStrip3d > ImageZStrip3dPtr
Definition: ImageStripTypes.h:147
#define IPSDK_DECLARE_INPUT_DATA()
macro allowing to declare an input data
Definition: DataStatusHdrMacros.h:106
std::vector< PlanStorageColl1d > PlanStorageColl2d
Definition: ImageTypes.h:190
HybridBuffer & getBuffer(const ipUInt64 cPlanIdx, const ipUInt64 zPlanIdx)
retrieve strip full buffer
Definition: InputImageZStripColor3d.h:108
eStripAllocationType
Enumerate describing image strip allocation policy.
Definition: ImageStripTypes.h:88
Input class for color image 3d strip with splitting along Z axis.
Definition: InputImageZStripColor3d.h:26
#define IPSDK_DECLARE_SERIAL_WITHOUT_COPY(libraryName, className)
macro enabling serialization on class
Definition: SerializationHdrMacro.h:79
Structure used to extract image strips from an image.
Definition: ImageStripExtractor.h:31
boost::shared_ptr< const DataItemMap > DataItemMapConstPtr
shared pointer to const DataItemMap
Definition: DataItemTypes.h:170
#define IPSDKIMAGE_API
Import/Export macro for library IPSDKImage.
Definition: IPSDKImageExports.h:27
eStripParsingDirection
Enumerate describing strip parsing direction.
Definition: ImageStripTypes.h:72
Class encapsulating color geometryThis class allows to define geometry color size and type (grey...
Definition: ColorGeometry.h:35
boost::shared_ptr< const DataIdentifier > DataIdentifierConstPtr
shared pointer to const data identifier
Definition: DataIdentifierTypes.h:31
Class allowing to encapsulate an hybrid form of buffer.
Definition: HybridBuffer.h:52
std::vector< PlanStoragePtr > PlanStorageColl1d
Definition: ImageTypes.h:184
Base class for images data type.
Definition: BaseImage.h:43
Base class for color image 3d strip with splitting along Z axis.
Definition: BaseImageZStripColor3d.h:33
const HybridBuffer & accessBuffer(const ipUInt64 cPlanIdx, const ipUInt64 zPlanIdx) const
access to strip full buffer