diff options
Diffstat (limited to 'cpp')
-rw-r--r-- | cpp/include/qpid/framing/FieldValue.h | 5 | ||||
-rw-r--r-- | cpp/src/qpid/framing/FieldValue.cpp | 5 |
2 files changed, 8 insertions, 2 deletions
diff --git a/cpp/include/qpid/framing/FieldValue.h b/cpp/include/qpid/framing/FieldValue.h index 6c2f5b5876..23d436ecb6 100644 --- a/cpp/include/qpid/framing/FieldValue.h +++ b/cpp/include/qpid/framing/FieldValue.h @@ -24,7 +24,6 @@ #include "qpid/Exception.h" #include "qpid/framing/amqp_types.h" #include "qpid/framing/Buffer.h" -#include "qpid/framing/Endian.h" #include "qpid/framing/FieldTable.h" #include "qpid/CommonImportExport.h" @@ -105,6 +104,8 @@ class FieldValue { protected: FieldValue(uint8_t t, Data* d): typeOctet(t), data(d) {} + static uint8_t* convertIfRequired(uint8_t* const octets, int width); + private: uint8_t typeOctet; std::auto_ptr<Data> data; @@ -199,7 +200,7 @@ inline T FieldValue::getFloatingPointValue() const { FixedWidthValue<W>* const fwv = dynamic_cast< FixedWidthValue<W>* const>(data.get()); if (fwv) { T value; - uint8_t* const octets = Endian::convertIfRequired(fwv->rawOctets(), W); + uint8_t* const octets = convertIfRequired(fwv->rawOctets(), W); uint8_t* const target = reinterpret_cast<uint8_t*>(&value); for (uint i = 0; i < W; ++i) target[i] = octets[i]; return value; diff --git a/cpp/src/qpid/framing/FieldValue.cpp b/cpp/src/qpid/framing/FieldValue.cpp index bc82a5561a..5bac931b83 100644 --- a/cpp/src/qpid/framing/FieldValue.cpp +++ b/cpp/src/qpid/framing/FieldValue.cpp @@ -207,4 +207,9 @@ void FieldValue::print(std::ostream& out) const { out << ')'; } +uint8_t* FieldValue::convertIfRequired(uint8_t* const octets, int width) +{ + return Endian::convertIfRequired(octets, width); +} + }} |