IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
BaseCreateShapeMeasureSetInitializer.h
1 // BaseCreateShapeMeasureSetInitializer.h:
3 // ---------------------------------------
4 //
14 
15 #ifndef __IPSDKIMAGEPROCESSING_BASECREATESHAPEMEASURESETINITIALIZER_H__
16 #define __IPSDKIMAGEPROCESSING_BASECREATESHAPEMEASURESETINITIALIZER_H__
17 
18 // suppression warnings
19 // warning C4251: 'ipsdk::imaproc::BaseCreateShapeMeasureSetInitializer::_pInputShapeMeasureInfoSetAttribute' : class 'boost::weak_ptr<T>' needs to have dll-interface to be used by clients of class 'ipsdk::imaproc::BaseCreateShapeMeasureSetInitializer'
20 #pragma warning (push)
21 #pragma warning (disable : 4251)
22 
23 #include <IPSDKImageProcessing/OutputInitializer/ShapeMeasureSet/BaseShapeMeasureSetInitializer.h>
25 
26 namespace ipsdk {
27 namespace imaproc {
28 
31 
33 {
34 // predefined public type
35 public:
37  static const eShapeMeasureSetInitializerType::domain g_shapeMeasureSetInitializerType = eShapeMeasureSetInitializerType::eSMSIT_Create;
38 
39 public:
45 
46 // methods
47 public:
49  eShapeMeasureSetInitializerType getShapeMeasureSetInitializerType() const;
50 
53  const BaseShapeMeasureInfoSetAttribute& getInputShapeMeasureInfoSetAttribute() const;
54 
62  void init(const ShapeMeasureSetAttributeWeakPtr& pOutputAttribute,
63  const ShapeMeasureInfoSetAttributeConstWeakPtr& pInputShapeMeasureInfoSetAttribute);
64 
65 protected:
68  virtual BoolResult initAttribute(BaseShapeMeasureSetAttribute& baseAttributeOut,
69  const ipsdk::shape::analysis::MeasureSetPtr& pMeasureSet) = 0;
70 
71 private:
74  BoolResult initAttribute();
75 
77  std::string createInitializerFormalString() const;
78 
80  std::string createInitializerEvaluatedString() const;
81 
82 // attributes
83 protected:
86 };
87 
90 
93 {
95 }
96 
99 
100 } // end of namespace imaproc
101 } // end of namespace ipsdk
102 
103 #pragma warning (pop)
104 
105 #endif // __IPSDKIMAGEPROCESSING_BASECREATESHAPEMEASURESETINITIALIZER_H__
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
Base class for shape measure set attributes.
Definition: BaseShapeMeasureSetAttribute.h:27
Base class for shape measure set creation initializer.
Definition: BaseCreateShapeMeasureSetInitializer.h:32
Predefined types for shape measure information set attributes management.
eShapeMeasureSetInitializerType getShapeMeasureSetInitializerType() const
retrieve shape measure set initializer type
Definition: BaseCreateShapeMeasureSetInitializer.h:92
boost::weak_ptr< BaseShapeMeasureSetAttribute > ShapeMeasureSetAttributeWeakPtr
Definition: ShapeMeasureSetAttributeTypes.h:39
eShapeMeasureSetInitializerType
Enumerate describing shape measure set initializer type.
Definition: ShapeMeasureSetInitializerTypes.h:33
#define IPSDKIMAGEPROCESSING_API
Import/Export macro for library IPSDKImageProcessing.
Definition: IPSDKImageProcessingExports.h:25
static const eShapeMeasureSetInitializerType::domain g_shapeMeasureSetInitializerType
shape measure set output initializer type
Definition: BaseCreateShapeMeasureSetInitializer.h:37
ShapeMeasureInfoSetAttributeConstWeakPtr _pInputShapeMeasureInfoSetAttribute
pointer to input shape measure info set attribute used by initializer
Definition: BaseCreateShapeMeasureSetInitializer.h:85
boost::shared_ptr< MeasureSet > MeasureSetPtr
shared pointer to shape measure set
Definition: MeasureTypes.h:97
boost::weak_ptr< const BaseShapeMeasureInfoSetAttribute > ShapeMeasureInfoSetAttributeConstWeakPtr
Definition: ShapeMeasureInfoSetAttributeTypes.h:40
Base class for output shape measure set initializer.
Definition: BaseShapeMeasureSetInitializer.h:28
Base class for shape measure information set attributes.
Definition: BaseShapeMeasureInfoSetAttribute.h:27
Output initializer used to create an output shape measure set.
Definition: ShapeMeasureSetInitializerTypes.h:35