Codemesh Runtime v3 C++ API Reference  3.9.205
xmog_remote_data.h
1 //
2 // Copyright (c) 1999-2020 by Codemesh, Inc.. ALL RIGHTS RESERVED.
3 //
4 
5 #ifndef xmogRemoteData_inc
6 #define xmogRemoteData_inc
7 
8 
9 #include "xmog.h"
10 
11 
12 #if (XMOG_IMPLEMENTS_REMOTE_CLIENT==1)
13 
14 
15 class ACE_Message_Block;
16 
17 
18 #include "xmog_remote_constants.h"
19 #include "xmog_java_client.h"
20 
21 
32 {
44  xmog_remote_data( ACE_Message_Block * pBlk, jint primLimit, jint strcharLimit );
45 
51  int encode( jboolean z );
52 
58  int decode_jboolean( jboolean & z);
59 
65  int encode( jbyte b );
66 
72  int decode_byte( jbyte & b );
73 
79  int encode( jchar ch );
80 
86  int decode_char( jchar & ch );
87 
93  int encode( jdouble d );
94 
100  int decode_double( jdouble & d );
101 
107  int encode( jfloat f );
108 
114  int decode_float( jfloat & f );
115 
121  int encode( jint i );
122 
128  int decode_int( jint & i );
129 
135  int encode( jlong l );
136 
142  int decode_long( jlong & l );
143 
149  int encode( jshort s );
150 
156  int decode_short( jshort & s );
157 
162  void encode( bool arrz[], jint length );
163 
168  void encode( const xmog_java_bool_array & arrz );
169 
173  int encode_empty_string();
174 
178  int encode_null();
179 
186  int encode_utf8( const char * utf, jint len = -1 );
187 
188 private:
189 
200  int encode( int type, int written, int align, int datasize, void* data );
201 
212  int decode( int type, char * ptr, int align, int datasize, void* result );
213 
214  ACE_Message_Block * pBlk_;
215 
216  jint primLimit_;
217 
218  jint strcharLimit_;
219 };
220 
221 
222 #endif /* (XMOG_IMPLEMENTS_REMOTE_CLIENT==1) */
223 
224 
225 #endif /* xmogRemoteData_inc */
xmog_remote_data
An abstraction around object data and how to serialize/deserialize it.
Definition: xmog_remote_data.h:31
xmog_java_bool_array
The wrapper type for the Java boolean[] type.
Definition: xmog_java_array.h:780

Copyright (c) 1999-2020 by Codemesh, Inc., ALL RIGHTS RESERVED.