37
class Packed : public Codec<std::iostream>
37
class Packed : public Codec
41
Packed(std::iostream& s, Atlas::Bridge* b);
41
Packed(std::iostream& s, Atlas::Bridge & b);
43
43
virtual void poll(bool can_read = true);
45
45
virtual void streamBegin();
46
virtual void streamMessage(const Map&);
46
virtual void streamMessage();
47
47
virtual void streamEnd();
49
virtual void mapItem(const std::string& name, const Map&);
50
virtual void mapItem(const std::string& name, const List&);
51
virtual void mapItem(const std::string& name, long);
52
virtual void mapItem(const std::string& name, double);
53
virtual void mapItem(const std::string& name, const std::string&);
49
virtual void mapMapItem(const std::string& name);
50
virtual void mapListItem(const std::string& name);
51
virtual void mapIntItem(const std::string& name, long);
52
virtual void mapFloatItem(const std::string& name, double);
53
virtual void mapStringItem(const std::string& name, const std::string&);
54
54
virtual void mapEnd();
56
virtual void listItem(const Map&);
57
virtual void listItem(const List&);
58
virtual void listItem(long);
59
virtual void listItem(double);
60
virtual void listItem(const std::string&);
56
virtual void listMapItem();
57
virtual void listListItem();
58
virtual void listIntItem(long);
59
virtual void listFloatItem(double);
60
virtual void listStringItem(const std::string&);
61
61
virtual void listEnd();
65
std::iostream& socket;
65
std::iostream& m_socket;
81
std::stack<State> state;
81
std::stack<State> m_state;
86
86
inline void parseStream(char);
87
87
inline void parseMap(char);
96
96
inline const std::string hexEncode(const std::string& data)
98
return Atlas::Codecs::hexEncode("+", "+[]()@#$=", data);
98
return hexEncodeWithPrefix("+", "+[]()@#$=", data);
101
101
inline const std::string hexDecode(const std::string& data)
103
return Atlas::Codecs::hexDecode("+", data);
103
return hexDecodeWithPrefix("+", data);