IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
BaseStructuringElementXYZAttribute.h
1 // BaseStructuringElementXYZAttribute.h:
3 // -------------------------------------
4 //
14 
15 #ifndef __IPSDKIMAGEPROCESSING_BASESTRUCTURINGELEMENTXYZATTRIBUTE_H__
16 #define __IPSDKIMAGEPROCESSING_BASESTRUCTURINGELEMENTXYZATTRIBUTE_H__
17 
18 // suppression warnings
19 // warning C4251: 'ipsdk::imaproc::BaseStructuringElementXYZAttribute::_pStructuringElement' : class 'boost::shared_ptr<T>' needs to have dll-interface to be used by clients of class 'ipsdk::imaproc::BaseStructuringElementXYZAttribute'
20 #pragma warning (push)
21 #pragma warning (disable : 4251)
22 
23 #include <IPSDKImageProcessing/Attribute/StructuringElement/BaseStructuringElementAttribute.h>
24 
25 namespace ipsdk {
26 namespace imaproc {
27 
30 
32 {
33  // declare serial class
35 
36 // predefined public types
37 public:
40 
43 
44 protected:
47 
48 public:
51 
52 // methods
53 public:
55  eStructuringElementType getStructuringElementType() const;
56 
60  const ValueType& getStructuringElementInfo() const;
61 
65  const StructuringElementXYZ& getStructuringElement() const;
66 
70  const StorageType& getStorage() const;
71 
72 protected:
78  void initBase(const StorageType& pStructuringElementInfo);
79 
81  void clearDerived();
82 
83 // attributes
84 protected:
87 };
88 
91 
94 {
96 }
97 
100 
101 } // end of namespace imaproc
102 } // end of namespace ipsdk
103 
104 #pragma warning (pop)
105 
106 #endif // __IPSDKIMAGEPROCESSING_BASESTRUCTURINGELEMENTXYZATTRIBUTE_H__
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
boost::shared_ptr< const StructuringElementXYZInfo > StructuringElementXYZInfoConstPtr
shared pointer to StructuringElementXYZInfo
Definition: StructuringElementInfoTypes.h:84
StorageType _pStructuringElementInfo
structuring element associated to attribute
Definition: BaseStructuringElementXYZAttribute.h:86
#define IPSDK_DECLARE_ABSTRACT_SERIAL_WITHOUT_COPY(libraryName, className)
macro enabling serialization on abstract class
Definition: SerializationHdrMacro.h:97
#define IPSDKIMAGEPROCESSING_API
Import/Export macro for library IPSDKImageProcessing.
Definition: IPSDKImageProcessingExports.h:25
Concrete class for objects encapsulating informations about 3d binary structuring element objects...
Definition: StructuringElementXYZInfo.h:35
3d binary structuring element type spanning x, y and z direction
Definition: StructuringElementTypes.h:41
Base class for structuring element attributes.
Definition: BaseStructuringElementAttribute.h:29
Class encapsulating a 3d structuring element spanning along x, y and z axis.
Definition: StructuringElementXYZ.h:35
eStructuringElementType getStructuringElementType() const
retrieve structuring element attribute type
Definition: BaseStructuringElementXYZAttribute.h:93
eStructuringElementType
Enumerate describing binary structuring element type.
Definition: StructuringElementTypes.h:37
StructuringElementXYZInfo ValueType
value type associated to object
Definition: BaseStructuringElementXYZAttribute.h:39
StructuringElementXYZInfoConstPtr StorageType
storage type associated to object
Definition: BaseStructuringElementXYZAttribute.h:42
Base class for XYZ structuring element (SE) attributes.
Definition: BaseStructuringElementXYZAttribute.h:31