Atlas-C++
Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes
Atlas::Codecs::Bach Class Reference
Inheritance diagram for Atlas::Codecs::Bach:
Atlas::Codec Atlas::Bridge

List of all members.

Public Member Functions

 Bach (std::iostream &s, Atlas::Bridge &b)
virtual void poll (bool can_read=true)
virtual void streamBegin ()
 Begin an Atlas stream.
virtual void streamMessage ()
 Start a message in an Atlas stream.
virtual void streamEnd ()
 Ends the Atlas stream.
virtual void mapMapItem (const std::string &name)
 Starts a map object to the currently streamed map.
virtual void mapListItem (const std::string &name)
 Starts a list object to the currently streamed map.
virtual void mapIntItem (const std::string &name, long)
 Adds an integer to the currently streames map.
virtual void mapFloatItem (const std::string &name, double)
 Adds a float to the currently streamed map.
virtual void mapStringItem (const std::string &name, const std::string &)
 Adds a string to the currently streamed map.
virtual void mapEnd ()
 Ends the currently streamed map.
virtual void listMapItem ()
 Starts a map object in the currently streamed list.
virtual void listListItem ()
 Starts a list object in the currently streamed list.
virtual void listIntItem (long)
 Adds an integer to the currently streames list.
virtual void listFloatItem (double)
 Adds a float to the currently streamed list.
virtual void listStringItem (const std::string &)
 Adds a string to the currently streamed list.
virtual void listEnd ()
 Ends the currently streamed list.
unsigned linenum () const

Protected Types

enum  State {
  PARSE_INIT, PARSE_STREAM, PARSE_MAP, PARSE_LIST,
  PARSE_NAME, PARSE_DATA, PARSE_INT, PARSE_FLOAT,
  PARSE_STRING, PARSE_LITERAL, PARSE_COMMENT
}

Protected Member Functions

bool stringmode () const
void parseInit (char)
void parseStream (char)
void parseMap (char)
void parseList (char)
void parseData (char)
void parseInt (char)
void parseFloat (char)
void parseString (char)
void parseLiteral (char)
void parseName (char)
void parseComment (char)
const std::string encodeString (const std::string &)
const std::string decodeString (const std::string &)
void writeIntItem (const std::string &, long)
void writeFloatItem (const std::string &, double)
void writeStringItem (const std::string &, const std::string &)
void writeLine (const std::string &, bool=true, bool=false)

Protected Attributes

std::iostream & m_socket
Bridgem_bridge
bool m_comma
unsigned m_linenum
std::string m_name
std::string m_data
std::stack< State > m_state

The documentation for this class was generated from the following file:

Copyright 2000-2004 the respective authors.

This document can be licensed under the terms of the GNU Free Documentation License or the GNU General Public License and may be freely distributed under the terms given by one of these licenses.