IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
ImageTileExtractor.h
1 // ImageTileExtractor.h:
3 // ---------------------
4 //
14 
15 #ifndef __IPSDKIMAGE_IMAGETILEEXTRACTOR_H__
16 #define __IPSDKIMAGE_IMAGETILEEXTRACTOR_H__
17 
25 #include <IPSDKUtil/Tools/ProcessingResult.h>
26 
27 namespace ipsdk {
28 namespace image {
29 
32 
34 {
54  static void extractInputTile2d(const ipUInt64 zPlanIdx,
55  const ipUInt64 cPlanIdx,
56  const ipUInt64 tPlanIdx,
57  const ipInt64 tileStartOffsetX,
58  const ipInt64 tileStartOffsetY,
59  const ipUInt64 tileSizeX,
60  const ipUInt64 tileSizeY,
61  const BaseImage& inputImage,
62  const Border2dPolicy& border2dPolicy,
63  InputImageTile2d& imageTile2d);
64 
76  template <typename FragmentType>
77  static void extractTile2d(const ipUInt64 zPlanIdx,
78  const ipUInt64 cPlanIdx,
79  const ipUInt64 tPlanIdx,
80  const ipUInt64 tileStartOffsetX,
81  const ipUInt64 tileStartOffsetY,
82  const ipUInt64 tileSizeX,
83  const ipUInt64 tileSizeY,
84  typename FragmentType::ImageType& inputImage,
85  FragmentType& imageTile2d);
86 
110  static void extractInputTile3d(const ipUInt64 cPlanIdx,
111  const ipUInt64 tPlanIdx,
112  const ipInt64 tileStartOffsetX,
113  const ipInt64 tileStartOffsetY,
114  const ipInt64 tileStartOffsetZ,
115  const ipUInt64 tileSizeX,
116  const ipUInt64 tileSizeY,
117  const ipUInt64 tileSizeZ,
118  const BaseImage& inputImage,
119  const Border3dPolicy& border3dPolicy,
120  InputImageTile3d& imageTile3d);
121 
133  template <typename FragmentType>
134  static void extractTile3d(const ipUInt64 cPlanIdx,
135  const ipUInt64 tPlanIdx,
136  const ipUInt64 tileStartOffsetX,
137  const ipUInt64 tileStartOffsetY,
138  const ipUInt64 tileStartOffsetZ,
139  const ipUInt64 tileSizeX,
140  const ipUInt64 tileSizeY,
141  const ipUInt64 tileSizeZ,
142  typename FragmentType::ImageType& inputImage,
143  FragmentType& imageTile3d);
144 };
145 
148 
149 } // end of namespace image
150 } // end of namespace ipsdk
151 
152 #endif // __IPSDKIMAGE_IMAGETILEEXTRACTOR_H__
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
uint64_t ipUInt64
Base types definition.
Definition: BaseTypes.h:55
Structure used to extract image tiles from an image.
Definition: ImageTileExtractor.h:33
Predefined types for data identifier management.
Class used to define policy for 2d strip borders management during a kernel algorithm processing...
Definition: Border2dPolicy.h:34
Predefined types for border 3d policy management.
Input class for 2d image tiles.
Definition: InputImageTile2d.h:29
Predefined types for border 2d policy management.
Definition of import/export macro for library.
#define IPSDKIMAGE_API
Import/Export macro for library IPSDKImage.
Definition: IPSDKImageExports.h:27
Class used to define policy for 3d strip borders management during a kernel algorithm processing...
Definition: Border3dPolicy.h:34
Input class for 3d image tiles.
Definition: InputImageTile3d.h:27
Predefined types for image tile management.
Base class for images data type.
Definition: BaseImage.h:43
Predefined types for data items.
int64_t ipInt64
Base types definition.
Definition: BaseTypes.h:54
Predefined type for image management.