1 #ifndef ISPN_HOTROD_BASICMARSHALLER_H
2 #define ISPN_HOTROD_BASICMARSHALLER_H
23 static void release(std::vector<char> *buf) {
34 void marshall(
const std::string& s, std::vector<char>& b) {
35 b.assign(s.data(), s.data()+s.size());
38 std::string* s =
new std::string(b.data(), b.size());
46 void marshall(
const int& s, std::vector<char>& b) {
47 char *buf =
new char[4];
48 for (
int i = 0 ; i < 4 ; i++) {
49 buf[3-i] = (char) ((s) >> (8*i));
55 for (
int i = 0; i < 4 ; i++) {
57 result ^= (int) *(b.data()+i) & 0xFF;
59 int* s =
new int(result);
int * unmarshall(const std::vector< char > &b)
Definition: BasicMarshaller.h:53
static void release(std::vector< char > *buf)
Definition: BasicMarshaller.h:23
std::string * unmarshall(const std::vector< char > &b)
Definition: BasicMarshaller.h:37
void marshall(const int &s, std::vector< char > &b)
Definition: BasicMarshaller.h:46
void marshall(const std::string &s, std::vector< char > &b)
Definition: BasicMarshaller.h:34
Definition: BasicMarshaller.h:17
Definition: BasicMarshaller.h:20
static void noRelease(std::vector< char > *)
Definition: BasicMarshaller.h:22
Definition: Marshaller.h:13