Go to the documentation of this file.00001 #ifndef QMF_SCHEMA_ID_H
00002 #define QMF_SCHEMA_ID_H
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00019 
00020 
00021 
00022 
00023 
00024 #include <qmf/ImportExport.h>
00025 #include "qmf/Handle.h"
00026 #include "qpid/types/Uuid.h"
00027 #include "qmf/SchemaTypes.h"
00028 #include <string>
00029 
00030 namespace qmf {
00031 
00032 #ifndef SWIG
00033     template <class> class PrivateImplRef;
00034 #endif
00035 
00036     class SchemaIdImpl;
00037 
00038     class QMF_CLASS_EXTERN SchemaId : public qmf::Handle<SchemaIdImpl> {
00039     public:
00040         QMF_EXTERN SchemaId(SchemaIdImpl* impl = 0);
00041         QMF_EXTERN SchemaId(const SchemaId&);
00042         QMF_EXTERN SchemaId& operator=(const SchemaId&);
00043         QMF_EXTERN ~SchemaId();
00044 
00045         QMF_EXTERN SchemaId(int, const std::string&, const std::string&);
00046         QMF_EXTERN void setHash(const qpid::types::Uuid&);
00047         QMF_EXTERN int getType() const;
00048         QMF_EXTERN const std::string& getPackageName() const;
00049         QMF_EXTERN const std::string& getName() const;
00050         QMF_EXTERN const qpid::types::Uuid& getHash() const;
00051 
00052 #ifndef SWIG
00053     private:
00054         friend class qmf::PrivateImplRef<SchemaId>;
00055         friend struct SchemaIdImplAccess;
00056 #endif
00057     };
00058 
00059 }
00060 
00061 #endif