IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
UnrollRingImgLvl3.h
1 // UnrollRingImgLvl3.h:
3 // --------------------
4 //
14 
15 #ifndef __IPSDKIPLGEOMETRICTRANSFORM_UNROLLRINGIMGLVL3_H__
16 #define __IPSDKIPLGEOMETRICTRANSFORM_UNROLLRINGIMGLVL3_H__
17 
20 
21 // Attributes headers
22 #include <IPSDKIPL/IPSDKIPLAttributes/Attribute/TileColl/Tile2dColl/InTile2dColl.h>
23 #include <IPSDKIPL/IPSDKIPLAttributes/Attribute/DataItem/InCenter2d.h>
24 #include <IPSDKIPL/IPSDKIPLAttributes/Attribute/Value/InRadius.h>
25 #include <IPSDKIPL/IPSDKIPLAttributes/Attribute/Value/InRingHalfThickness.h>
26 #include <IPSDKIPL/IPSDKIPLAttributes/Attribute/Value/InTheta0.h>
27 #include <IPSDKIPL/IPSDKIPLAttributes/Attribute/Enumerate/InInterpolationPolicy.h>
28 #include <IPSDKIPL/IPSDKIPLAttributes/Attribute/TileColl/Tile2dColl/OutTile2dColl.h>
29 
30 namespace ipsdk {
31 namespace imaproc {
32 namespace gtrans {
33 
36 
37 // declare processing algorithm
38 IPSDK_DECLARE_PROCESSING_ALGORITHM(IPSDKIPLGeometricTransform, UnrollRingImg,
39  ipsdk::imaproc::matchTileCollSize(_pInTile2dColl, _pOutTile2dColl) &&
40  ipsdk::imaproc::matchBufferType(_pInTile2dColl, _pOutTile2dColl),
41  (((ipsdk)(imaproc)(attr))(InTile2dColl))
42  (((ipsdk)(imaproc)(attr))(InCenter2d))
43  (((ipsdk)(imaproc)(attr))(InRadius))
44  (((ipsdk)(imaproc)(attr))(InRingHalfThickness))
45  (((ipsdk)(imaproc)(attr))(InTheta0))
46  (((ipsdk)(imaproc)(attr))(InInterpolationPolicy))
47  (((ipsdk)(imaproc)(attr))(OutTile2dColl)))
48 
49  // implementation of image processing data identifier retrieval method
50  // for function selector usage
51  IPSDK_DECLARE_ALGORITHM_FUNCTION_SELECTOR(((TILECOLL)(InTile2dColl)));
52 
53  // declaration of parsed data during processing
55 
56 // methods
57 public:
58 
59 protected:
61  template <typename BufType,
62  ipsdk::eInstructionSet::domain IS>
63  ipsdk::BoolResult genericProcessFunction(const ipsdk::processor::ProcessingInfo& info);
64 
66  template <typename BufType,
67  typename NeighborhoodProcessor>
68  void interpolationProcessFunction(const ipsdk::processor::ProcessingInfo& info);
69 
70 // attributes
71 protected:
72 
73 };
74 
77 
78 } // end of namespace gtrans
79 } // end of namespace imaproc
80 } // end of namespace ipsdk
81 
82 #endif // __IPSDKIPLGEOMETRICTRANSFORM_UNROLLRINGIMGLVL3_H__
#define IPSDK_DECLARE_ALGORITHM_NOPARSED_DATA()
Definition of import/export macro for library.
#define IPSDK_DECLARE_PROCESSING_ALGORITHM(libraryName, algoName, RuleString, attributeSeq)
#define IPSDK_DECLARE_ALGORITHM_FUNCTION_SELECTOR(dataTypeSeq)