00001 #ifndef QMF_DATA_ADDR_H
00002 #define QMF_DATA_ADDR_H
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #if !defined(QMF_USE_DEPRECATED_API) && !defined(qmf2_EXPORTS) && !defined(SWIG)
00025 # error "The API defined in this file has been DEPRECATED and will be removed in the future."
00026 # error "Define 'QMF_USE_DEPRECATED_API' to enable continued use of the API."
00027 #endif
00028
00029 #include <qmf/ImportExport.h>
00030 #include "qmf/Handle.h"
00031 #include "qpid/types/Variant.h"
00032 #include <string>
00033
00034 namespace qmf {
00035
00036 #ifndef SWIG
00037 template <class> class PrivateImplRef;
00038 #endif
00039
00040 class DataAddrImpl;
00041
00042 class QMF_CLASS_EXTERN DataAddr : public qmf::Handle<DataAddrImpl> {
00043 public:
00044 QMF_EXTERN DataAddr(DataAddrImpl* impl = 0);
00045 QMF_EXTERN DataAddr(const DataAddr&);
00046 QMF_EXTERN DataAddr& operator=(const DataAddr&);
00047 QMF_EXTERN ~DataAddr();
00048
00049 QMF_EXTERN bool operator==(const DataAddr&);
00050 QMF_EXTERN bool operator<(const DataAddr&);
00051
00052 QMF_EXTERN DataAddr(const qpid::types::Variant::Map&);
00053 QMF_EXTERN DataAddr(const std::string& name, const std::string& agentName, uint32_t agentEpoch=0);
00054 QMF_EXTERN const std::string& getName() const;
00055 QMF_EXTERN const std::string& getAgentName() const;
00056 QMF_EXTERN uint32_t getAgentEpoch() const;
00057 QMF_EXTERN qpid::types::Variant::Map asMap() const;
00058
00059 QMF_EXTERN bool operator==(const DataAddr&) const;
00060 QMF_EXTERN bool operator<(const DataAddr&) const;
00061
00062 #ifndef SWIG
00063 private:
00064 friend class qmf::PrivateImplRef<DataAddr>;
00065 friend struct DataAddrImplAccess;
00066 #endif
00067 };
00068
00069 }
00070
00071 #endif