diff options
Diffstat (limited to 'cpp/include/qpid/framing/FieldValue.h')
-rw-r--r-- | cpp/include/qpid/framing/FieldValue.h | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/cpp/include/qpid/framing/FieldValue.h b/cpp/include/qpid/framing/FieldValue.h index 458de62fdf..e964da495a 100644 --- a/cpp/include/qpid/framing/FieldValue.h +++ b/cpp/include/qpid/framing/FieldValue.h @@ -175,11 +175,19 @@ class FixedWidthValue : public FieldValue::Data { return v; } uint8_t* rawOctets() { return octets; } - uint8_t* rawOctets() const { return octets; } + const uint8_t* rawOctets() const { return octets; } void print(std::ostream& o) const { o << "F" << width << ":"; }; }; +class UuidData : public FixedWidthValue<16> { + public: + UuidData(); + UuidData(const unsigned char* bytes); + bool convertsToString() const; + std::string getString() const; +}; + template <class T, int W> inline T FieldValue::getIntegerValue() const { @@ -356,7 +364,7 @@ class Var16Value : public FieldValue { class Var32Value : public FieldValue { public: QPID_COMMON_EXTERN Var32Value(const std::string& v, uint8_t code); -}; + }; class Struct32Value : public FieldValue { public: @@ -453,6 +461,7 @@ class ListValue : public FieldValue { class UuidValue : public FieldValue { public: + QPID_COMMON_EXTERN UuidValue(); QPID_COMMON_EXTERN UuidValue(const unsigned char*); }; |