IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
InputImageTile2d.h
1 // InputImageTile2d.h:
3 // -------------------
4 //
14 
15 #ifndef __IPSDKIMAGE_INPUTIMAGETILE2D_H__
16 #define __IPSDKIMAGE_INPUTIMAGETILE2D_H__
17 
18 #include <IPSDKImage/Fragment/Tile/Tile2d/BaseImageTile2d.h>
19 #include <IPSDKImage/Fragment/BorderPolicy/2d/Border2dPolicy.h>
20 
21 namespace ipsdk {
22 namespace image {
23 
24 class InputImageTile3d;
25 
28 
30 {
31  // declare serial class
33 
34  // declare input data
36 
37  // friend class for protected members access
38  friend struct ImageTileExtractor;
39  friend class InputImageTile3d;
40 
41 // predefined public types
42 public:
43  // Image support type
44  typedef const BaseImage ImageType;
45 
46  // Input storage type associated to tile
47  typedef PlanStorageConstPtr InputStorageType;
48 
49 public:
55 
56 // methods
57 public:
58  //-----------------------------------
61  //-----------------------------------
62 
69  BoolResult readFromImage() const;
71 
72 protected:
79  void init(const ipUInt64 zPlanIdx,
80  const ipUInt64 cPlanIdx,
81  const ipUInt64 tPlanIdx,
82  const ipUInt64 tileStartOffsetX,
83  const ipUInt64 tileStartOffsetY,
84  const ipUInt64 tileSizeX,
85  const ipUInt64 tileSizeY,
86  const PlanStorageConstPtr& pPlanStorage,
87  const DataIdentifierConstPtr& pImageIdentifier,
88  const DataItemMapConstPtr& pImageHeader);
89 
100  void init(const ipUInt64 zPlanIdx,
101  const ipUInt64 cPlanIdx,
102  const ipUInt64 tPlanIdx,
103  const ipInt64 tileStartOffsetX,
104  const ipInt64 tileStartOffsetY,
105  const ipUInt64 tileSizeX,
106  const ipUInt64 tileSizeY,
107  const PlanStorageConstPtr& pPlanStorage,
108  const DataIdentifierConstPtr& pImageIdentifier,
109  const DataItemMapConstPtr& pImageHeader,
110  const Border2dPolicy& border2dPolicy);
111 
121  void init(const ipUInt64 zPlanIdx,
122  const ipUInt64 cPlanIdx,
123  const ipUInt64 tPlanIdx,
124  const ipInt64 tileStartOffsetX,
125  const ipInt64 tileStartOffsetY,
126  const ipUInt64 tileSizeX,
127  const ipUInt64 tileSizeY,
128  const ipUInt64 imageSizeX,
129  const ipUInt64 imageSizeY,
131  const DataIdentifierConstPtr& pImageIdentifier,
132  const DataItemMapConstPtr& pImageHeader);
133 
135  void updateBorderData() const;
136 
137 // attributes
138 protected:
141 };
142 
145 
146 } // end of namespace image
147 } // end of namespace ipsdk
148 
149 #endif // __IPSDKIMAGE_INPUTIMAGETILE2D_H__
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
uint64_t ipUInt64
Base types definition.
Definition: BaseTypes.h:55
#define IPSDK_DECLARE_INPUT_DATA()
macro allowing to declare an input data
Definition: DataStatusHdrMacros.h:106
Structure used to extract image tiles from an image.
Definition: ImageTileExtractor.h:33
Base class for 2 image tiles.
Definition: BaseImageTile2d.h:35
Class used to define policy for 2d strip borders management during a kernel algorithm processing...
Definition: Border2dPolicy.h:34
Input class for 2d image tiles.
Definition: InputImageTile2d.h:29
#define IPSDK_DECLARE_SERIAL_WITHOUT_COPY(libraryName, className)
macro enabling serialization on class
Definition: SerializationHdrMacro.h:79
boost::shared_ptr< const BasePlanStorage > PlanStorageConstPtr
shared pointer to const image plan storage
Definition: PlanStorageTypes.h:58
IPSDKIMAGEPROCESSING_API processor::RulePtr bufferType(const ImageAttributeConstWeakPtr &pImageAttribute, const IBTAttributeConstWeakPtr &pIBTAttribute)
function allowing to check that an image correspond to a given image buffer types attribute ...
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
Input class for 3d image tiles.
Definition: InputImageTile3d.h:27
boost::shared_ptr< const DataIdentifier > DataIdentifierConstPtr
shared pointer to const data identifier
Definition: DataIdentifierTypes.h:31
Base class for images data type.
Definition: BaseImage.h:43
int64_t ipInt64
Base types definition.
Definition: BaseTypes.h:54
Border2dPolicy _border2dPolicy
border policy associated to tile
Definition: InputImageTile2d.h:140
eImageBufferType
types associated to image buffers
Definition: ImageTypes.h:78