IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
Guid.h
1 // Guid.h:
3 // -------
4 //
14 
15 #ifndef __IPSDKUTIL_GUID_H__
16 #define __IPSDKUTIL_GUID_H__
17 
19 #include <boost/uuid/uuid.hpp>
20 #include <string>
21 
22 namespace ipsdk {
23 
26 
27 class IPSDKUTIL_API Guid : public boost::uuids::uuid
28 {
29 public:
32  Guid();
33  explicit Guid(const boost::uuids::uuid& identifier);
34  ~Guid();
36 
37 // methods
38 public:
41  operator boost::uuids::uuid();
42  operator boost::uuids::uuid() const;
44 
47  std::string getString() const;
48 
50  static Guid getNilGuid();
51 
52 // attributes
53 protected:
54 
55 };
56 
59 
60 inline
61 Guid::operator boost::uuids::uuid()
62 {
63  return static_cast<boost::uuids::uuid&>(*this);
64 }
65 
66 inline
67 Guid::operator boost::uuids::uuid() const
68 {
69  return static_cast<boost::uuids::uuid const&>(*this);
70 }
71 
74 
75 } // end of namespace ipsdk
76 
77 #endif // __IPSDKUTIL_GUID_H__
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
Class encapsulating an auto initialized uuid.
Definition: Guid.h:27
#define IPSDKUTIL_API
Import/Export macro for library IPSDKUtil.
Definition: IPSDKUtilExports.h:27
Definition of import/export macro for library.