11 #include "carma/szaarrayutils/netbuf.h"
12 #include "carma/szaarrayutils/netobj.h"
14 #define NET_READ_HANDLER(fn) void (fn)(void* arg)
16 #ifdef NET_ERROR_HANDLER
17 #undef NET_ERROR_HANDLER
20 #define NET_ERROR_HANDLER(fn) void (fn)(void* arg)
32 NET_READ_SIZE = sza::array::NetReadStr::NET_READ_SIZE,
36 NET_READ_DATA = sza::array::NetReadStr::NET_READ_DATA,
40 NET_READ_DONE = sza::array::NetReadStr::NET_READ_DONE,
44 NET_READ_CLOSED = sza::array::NetReadStr::NET_READ_CLOSED,
48 NET_READ_ERROR = sza::array::NetReadStr::NET_READ_ERROR
59 NetReadStr(
int fd,
unsigned long size);
64 virtual ~NetReadStr();
75 void setBuffer(
void* buffer,
unsigned int size);
87 NetReadId read(
int fd);
103 void startGet(
int *opcode);
113 void getChar(
long ndata,
unsigned char *data);
118 void getShort(
long ndata,
unsigned short *data);
123 void getLong(
long ndata,
unsigned long *data);
128 void getFloat(
long ndata,
float *data);
133 void getDouble(
long ndata,
double *data);
138 void getObj(
const NetObjTable* types,
int id,
void *obj);
143 void incNget(
long nbytes);
148 void installReadHandler(NET_READ_HANDLER(*handler),
void* arg);
153 void installErrorHandler(NET_ERROR_HANDLER(*handler),
void* arg);
160 void privateConstructor(
int fd,
unsigned long size);
165 sza::array::NetReadStr* netStream_;
170 bool netBufAllocated_;
181 NetReadId privateRead(
int fd);
186 NetReadId privateState(sza::array::NetReadStr::NetReadId
id);
193 NET_READ_HANDLER(*readHandler_);
203 NET_READ_HANDLER(*errorHandler_);
215 #endif // End #ifndef