00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef _ProtocolVersion_
00022 #define _ProtocolVersion_
00023
00024 #include "amqp_types.h"
00025 #include "qpid/CommonImportExport.h"
00026
00027 namespace qpid
00028 {
00029 namespace framing
00030 {
00031
00032 class ProtocolVersion
00033 {
00034 private:
00035 uint8_t major_;
00036 uint8_t minor_;
00037
00038 public:
00039 explicit ProtocolVersion(uint8_t _major=0, uint8_t _minor=0)
00040 : major_(_major), minor_(_minor) {}
00041
00042 QPID_COMMON_EXTERN uint8_t getMajor() const { return major_; }
00043 QPID_COMMON_EXTERN void setMajor(uint8_t major) { major_ = major; }
00044 QPID_COMMON_EXTERN uint8_t getMinor() const { return minor_; }
00045 QPID_COMMON_EXTERN void setMinor(uint8_t minor) { minor_ = minor; }
00046 QPID_COMMON_EXTERN const std::string toString() const;
00047
00048 QPID_COMMON_EXTERN ProtocolVersion& operator=(ProtocolVersion p);
00049
00050 QPID_COMMON_EXTERN bool operator==(ProtocolVersion p) const;
00051 QPID_COMMON_EXTERN bool operator!=(ProtocolVersion p) const { return ! (*this == p); }
00052 };
00053
00054 }
00055 }
00056
00057
00058 #endif // ifndef _ProtocolVersion_