IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
BaseBorder3dPolicyAttribute.h
1 // BaseBorder3dPolicyAttribute.h:
3 // ------------------------------
4 //
15 
16 #ifndef __IPSDKIMAGEPROCESSING_BASEBORDER3DPOLICYATTRIBUTE_H__
17 #define __IPSDKIMAGEPROCESSING_BASEBORDER3DPOLICYATTRIBUTE_H__
18 
19 // suppression warnings
20 // warning C4251: 'ipsdk::imaproc::BaseBorder3dPolicyAttribute::_pBorder3dPolicy' : class 'boost::shared_ptr<T>' needs to have dll-interface to be used by clients of class 'ipsdk::imaproc::BaseBorder3dPolicyAttribute'
21 #pragma warning (push)
22 #pragma warning (disable : 4251)
23 
24 #include <IPSDKImageProcessing/Attribute/BorderPolicy/BaseBorderPolicyAttribute.h>
26 #include <boost/thread/mutex.hpp>
27 
28 namespace ipsdk {
29 namespace imaproc {
30 
33 
35 {
36  // declare serial class
38 
39 // predefined public types
40 public:
43 
46 
47 protected:
50 
51 public:
53  virtual ~BaseBorder3dPolicyAttribute() = 0;
54 
55 // methods
56 public:
60  const image::Border3dPolicy& getBorder3dPolicy() const;
61 
65  const StorageType& getStorage() const;
66 
67 protected:
71  void initBase(const image::Border3dPolicy& border3dPolicy);
72 
74  void clearDerived();
75 
77  static boost::mutex& getMutex();
78 
79 // attributes
80 protected:
83 };
84 
87 
88 } // end of namespace imaproc
89 } // end of namespace ipsdk
90 
91 #pragma warning (pop)
92 
93 #endif // __IPSDKIMAGEPROCESSING_BASEBORDER3DPOLICYATTRIBUTE_H__
Base class for attributes allowing to define a policy for strip borders preparation during a kernel a...
Definition: BaseBorderPolicyAttribute.h:29
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
image::Border3dPolicyConstPtr StorageType
storage type associated to object
Definition: BaseBorder3dPolicyAttribute.h:45
#define IPSDK_DECLARE_ABSTRACT_SERIAL_WITHOUT_COPY(libraryName, className)
macro enabling serialization on abstract class
Definition: SerializationHdrMacro.h:97
boost::shared_ptr< const Border3dPolicy > Border3dPolicyConstPtr
shared pointer to Border3dPolicy
Definition: Border3dPolicyTypes.h:67
#define IPSDKIMAGEPROCESSING_API
Import/Export macro for library IPSDKImageProcessing.
Definition: IPSDKImageProcessingExports.h:25
Predefined types for border 3d policy management.
Base class for attributes allowing to define a policy for 3d strip borders preparation during a kerne...
Definition: BaseBorder3dPolicyAttribute.h:34
image::Border3dPolicy ValueType
value type associated to object
Definition: BaseBorder3dPolicyAttribute.h:42
image::Border3dPolicyConstPtr _pBorder3dPolicy
shared pointer to border policy
Definition: BaseBorder3dPolicyAttribute.h:82
Class used to define policy for 3d strip borders management during a kernel algorithm processing...
Definition: Border3dPolicy.h:34