00001
00012 #ifndef P6JSONREADER_H__
00013 #define P6JSONREADER_H__ 1
00014
00015 #include "p6err.h"
00016 #include "p6jsonerrorhandler.h"
00017 #include "p6jsoncontenthandler.h"
00018
00019 namespace P6R {
00020
00021 #ifdef __cplusplus
00022 extern "C" {
00023 #endif
00024
00034 typedef P6UINT32 P6JSONFLAGS;
00035 const P6JSONFLAGS P6JSON_NOFLAGS = 0x00000000;
00036 const P6JSONFLAGS P6JSON_TRACEON = 0x00000001;
00037
00038
00074 interface p6IJSONReader : public p6ICom
00075 {
00090 P6COMMETHOD initialize( P6JSONFLAGS flags, P6UINT32 streamBufSize ) = 0;
00091
00104 P6COMMETHOD getContentHandler( p6IJSONContentHandler** pObject ) = 0;
00105
00116 P6COMMETHOD getErrorHandler( p6IJSONErrorHandler** pObject ) = 0;
00117
00128 P6COMMETHOD setContentHandler( p6IJSONContentHandler* pObject ) = 0;
00129
00138 P6COMMETHOD setErrorHandler( p6IJSONErrorHandler* pObject ) = 0;
00139
00150 P6COMMETHOD releaseAllHandlers() = 0;
00151 };
00152
00153
00154 #define IF_p6IJSONReader {0x34e460b3,0x4a49,0x49a4,{0x8a,0x1a,0x3e,0x75,0xfe,0x28,0xb1,0xc1}}
00155
00156
00157 #define COMP_p6JSONReader {0x90e09ea2,0x158,0x40fe,{0xa3,0x4e,0xe8,0xcb,0x19,0x9a,0xb2,0xd2}}
00158
00159 #ifdef __cplusplus
00160 }
00161 #endif
00162
00163 }
00164
00165
00166 #endif
00167
00168
00169
00170
00171
00172