IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
ShapeToLabel2dImgLvl3.h
1 // ShapeToLabel2dImgLvl3.h:
3 // ------------------------
4 //
14 
15 #ifndef __IPSDKIPLSHAPESEGMENTATION_SHAPETOLABEL2DIMGLVL3_H__
16 #define __IPSDKIPLSHAPESEGMENTATION_SHAPETOLABEL2DIMGLVL3_H__
17 
20 #include <map>
21 
22 // Attributes headers
23 #include <IPSDKIPL/IPSDKIPLAttributes/Attribute/GeometryEntityColl/InLabelsShape2d.h>
24 #include <IPSDKIPL/IPSDKIPLAttributes/Attribute/Strip/YStrip2d/OutLabelYStrip2d.h>
25 
26 namespace ipsdk {
27 namespace imaproc {
28 namespace shape {
29 namespace segmentation {
30 
33 
34 // declare processing algorithm
35 IPSDK_DECLARE_PROCESSING_ALGORITHM(IPSDKIPLShapeSegmentation, ShapeToLabel2dImg,
37  (((ipsdk)(imaproc)(attr))(InLabelsShape2d))
38  (((ipsdk)(imaproc)(attr))(OutLabelYStrip2d)))
39 
40  // implementation of image processing data identifier retrieval method
41  // for function selector usage
42  IPSDK_DECLARE_ALGORITHM_FUNCTION_SELECTOR(((STRIP)(OutLabelYStrip2d)));
43 
44  // declaration of parsed data during processing
45  IPSDK_DECLARE_ALGORITHM_PARSED_DATA(((LINESTRIP)(OutLabelYStrip2d)));
46 
47 // methods
48 public:
49 
50 protected:
54 
56  template <typename OutBufType,
57  ipsdk::eInstructionSet::domain IS>
58  ipsdk::BoolResult genericProcessFunction(const ipsdk::processor::ProcessingInfo& info);
59 
61  void clearIntermediateData();
62 
63 // attributes
64 protected:
66  typedef std::map<ipUInt64, geom::Shape2dConstPtr> Shape2dByLabel;
67 
69  Shape2dByLabel _shape2dByLabel;
70 };
71 
74 
75 } // end of namespace segmentation
76 } // end of namespace shape
77 } // end of namespace imaproc
78 } // end of namespace ipsdk
79 
80 #endif // __IPSDKIPLSHAPESEGMENTATION_SHAPETOLABEL2DIMGLVL3_H__
Definition of import/export macro for library.
IPSDKBASEPROCESSING_API RulePtr none()
ipsdk::core::ExecResult preProcess()
method called before processing
#define IPSDK_DECLARE_PROCESSING_ALGORITHM(libraryName, algoName, RuleString, attributeSeq)
#define IPSDK_DECLARE_ALGORITHM_PARSED_DATA(dataSeq)
#define IPSDK_DECLARE_ALGORITHM_FUNCTION_SELECTOR(dataTypeSeq)
IPSDK_DECLARE_GPU_PROCESSING_ALGORITHM(IPSDKIPLFiltering, Convolution2dImg, ipsdk::imaproc::matchSize(_pInSubGpuImg, _pOutImg),(((ipsdk)(imaproc)(attr))(InSubGpuImg))(((ipsdk)(imaproc)(attr))(InKnlXY))(((ipsdk)(imaproc)(attr))(InNormalize))(((ipsdk)(imaproc)(attr))(InConvolBorder2d))(((ipsdk)(imaproc)(attr))(OutImg))) IPSDKCUDA_DECLARE_ALGORITHM_FUNCTION_SELECTOR((InSubGpuImg)(OutImg)) public void clearIntermediateData()
method called before processing