3 #ifndef GEODE_PDXREADER_H_
4 #define GEODE_PDXREADER_H_
24 #include "PdxUnreadFields.hpp"
31 typedef SharedPtr<PdxReader> PdxReaderPtr;
77 virtual char readChar(
const char* fieldName) = 0;
88 virtual wchar_t readWideChar(
const char* fieldName) = 0;
99 virtual bool readBoolean(
const char* fieldName) = 0;
110 virtual int8_t readByte(
const char* fieldName) = 0;
121 virtual int16_t readShort(
const char* fieldName) = 0;
132 virtual int32_t readInt(
const char* fieldName) = 0;
143 virtual int64_t readLong(
const char* fieldName) = 0;
154 virtual float readFloat(
const char* fieldName) = 0;
165 virtual double readDouble(
const char* fieldName) = 0;
177 virtual char* readString(
const char* fieldName) = 0;
189 virtual wchar_t* readWideString(
const char* fieldName) = 0;
200 virtual CacheablePtr readObject(
const char* fieldName) = 0;
212 virtual char* readCharArray(
const char* fieldName, int32_t& length) = 0;
225 virtual wchar_t* readWideCharArray(
const char* fieldName,
226 int32_t& length) = 0;
237 virtual bool* readBooleanArray(
const char* fieldName, int32_t& length) = 0;
249 virtual int8_t* readByteArray(
const char* fieldName, int32_t& length) = 0;
262 virtual int16_t* readShortArray(
const char* fieldName, int32_t& length) = 0;
275 virtual int32_t* readIntArray(
const char* fieldName, int32_t& length) = 0;
288 virtual int64_t* readLongArray(
const char* fieldName, int32_t& length) = 0;
300 virtual float* readFloatArray(
const char* fieldName, int32_t& length) = 0;
312 virtual double* readDoubleArray(
const char* fieldName, int32_t& length) = 0;
325 virtual char** readStringArray(
const char* fieldName, int32_t& length) = 0;
339 virtual wchar_t** readWideStringArray(
const char* fieldName,
340 int32_t& length) = 0;
366 virtual int8_t** readArrayOfByteArrays(
const char* fieldName,
367 int32_t& arrayLength,
368 int32_t** elementLength) = 0;
389 virtual bool hasField(
const char* fieldName) = 0;
402 virtual bool isIdentityField(
const char* fieldName) = 0;
420 #endif // GEODE_PDXREADER_H_