Classes | Namespaces | Functions

parser.h File Reference

Virtual parser wrapper. More...

#include "dll.h"
#include "data.h"
#include "protocol.h"
#include <stdint.h>
#include <iosfwd>
#include <map>
Include dependency graph for parser.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  Barry::Parser
 Base class for the parser hierarchy. More...
class  Barry::NullParser
 If in debug mode, this class can be used as a null parser. More...
class  Barry::HexDumpParser
 Dumps raw hex of the given DBData to the given stream. More...
class  Barry::RecordParserBase
 Abstract base class for the following RecordParser template, that exposes some information on the specifics that the record parser can handle. More...
class  Barry::NullStore< RecordT >
 A Storage class for RecordParser<> that does nothing, for the cases where you only want to dump parsed record data to a stream. More...
class  Barry::DumpStore< RecordT >
 A Storage class for RecordParser<> that dumps the parsed record data to the given stream. More...
class  Barry::RecordStore< RecordT >
 A Storage class for RecordParser that stores a copy of the parsed record. More...
class  Barry::RecordParser< RecordT, StorageT >
 Template class for easy creation of specific parser objects. More...
class  Barry::AllRecordStore
 Base class with overloaded functor behaviour for all available record classes. More...
class  Barry::MultiRecordParser
 Container parser class that accepts multiple Parser objects (often RecordParser<> objects but they don't have to be) and automatically routes incoming records to the appropriate parser. More...
class  Barry::AllRecordDumpStore
 Derived from AllRecordStore, which just calls each record's Dump() member with the given stream. More...
class  Barry::AllRecordParser
 Convenience parser that creates a MultiRecordParser with all known record parsers added. More...
class  Barry::TeeParser
 Sends incoming DBData objects to all the parsers in its list. More...

Namespaces

namespace  Barry
 

Project namespace, containing all related functions and classes.


Functions

template<class RecordT >
void Barry::ParseDBData (const DBData &data, RecordT &rec, const IConverter *ic)
 Contains the proper way to convert a DBData object into a record.

Detailed Description

Virtual parser wrapper.

Definition in file parser.h.