summaryrefslogtreecommitdiff
path: root/cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp')
-rw-r--r--cpp/include/qpid/framing/FieldValue.h5
-rw-r--r--cpp/src/qpid/framing/FieldValue.cpp5
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);
+}
+
}}