Go to the documentation of this file.00001 #ifndef QMF_SCHEMA_PROPERTY_H
00002 #define QMF_SCHEMA_PROPERTY_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/Uuid.h"
00032 #include "qpid/types/Variant.h"
00033 #include "qmf/SchemaTypes.h"
00034 #include <string>
00035
00036 namespace qmf {
00037
00038 #ifndef SWIG
00039 template <class> class PrivateImplRef;
00040 #endif
00041
00042 class SchemaPropertyImpl;
00043
00044 class QMF_CLASS_EXTERN SchemaProperty : public Handle<SchemaPropertyImpl> {
00045 public:
00046 QMF_EXTERN SchemaProperty(SchemaPropertyImpl* impl = 0);
00047 QMF_EXTERN SchemaProperty(const SchemaProperty&);
00048 QMF_EXTERN SchemaProperty& operator=(const SchemaProperty&);
00049 QMF_EXTERN ~SchemaProperty();
00050
00051 QMF_EXTERN SchemaProperty(const std::string&, int, const std::string& o="");
00052
00053 QMF_EXTERN void setAccess(int);
00054 QMF_EXTERN void setIndex(bool);
00055 QMF_EXTERN void setOptional(bool);
00056 QMF_EXTERN void setUnit(const std::string&);
00057 QMF_EXTERN void setDesc(const std::string&);
00058 QMF_EXTERN void setSubtype(const std::string&);
00059 QMF_EXTERN void setDirection(int);
00060
00061 QMF_EXTERN const std::string& getName() const;
00062 QMF_EXTERN int getType() const;
00063 QMF_EXTERN int getAccess() const;
00064 QMF_EXTERN bool isIndex() const;
00065 QMF_EXTERN bool isOptional() const;
00066 QMF_EXTERN const std::string& getUnit() const;
00067 QMF_EXTERN const std::string& getDesc() const;
00068 QMF_EXTERN const std::string& getSubtype() const;
00069 QMF_EXTERN int getDirection() const;
00070
00071 #ifndef SWIG
00072 private:
00073 friend class qmf::PrivateImplRef<SchemaProperty>;
00074 friend struct SchemaPropertyImplAccess;
00075 #endif
00076 };
00077
00078 }
00079
00080 #endif