13 #ifndef __PACKED_MESSAGE_INTERFACE_H
14 #define __PACKED_MESSAGE_INTERFACE_H
17 #include "Foundation/vec3.h"
31 virtual void begin_pack()=0;
32 virtual void begin_unpack()=0;
33 virtual void append(
int)=0;
34 virtual void append(
double)=0;
35 virtual void append(
const string&)=0;
36 virtual void append(
const Vec3&)=0;
37 virtual void append(
bool)=0;
39 virtual int pop_int()=0;
40 virtual double pop_double()=0;
41 virtual void pop_doubles(
double*,
int)=0;
42 virtual string pop_string()=0;
43 virtual Vec3 pop_vec3()=0;
44 virtual bool pop_bool()=0;
46 template<
typename T>
void pack(
const T&);
47 template<
typename T>
void unpack(T&);
50 #endif //__PACKED_MESSAGE_INTERFACE_H