00001 // This file may be redistributed and modified only under the terms of 00002 // the GNU Lesser General Public License (See COPYING for details). 00003 // Copyright (C) 2000 Stefanus Du Toit 00004 00005 #ifndef ATLAS_ENCODERBASE_H 00006 #define ATLAS_ENCODERBASE_H 00007 00008 #include <Atlas/Bridge.h> 00009 00010 namespace Atlas { 00011 00028 class EncoderBase : public Atlas::Bridge { 00029 public: 00030 00032 EncoderBase(Atlas::Bridge* b) : b(b) { } 00033 00034 virtual ~EncoderBase() { } 00035 00036 virtual void StreamBegin() { b->StreamBegin(); } 00037 virtual void StreamMessage(const Map& m) { b->StreamMessage(m); } 00038 virtual void StreamEnd() { b->StreamEnd(); } 00039 00040 virtual void MapItem(const std::string& name, const Bridge::Map& m) 00041 { b->MapItem(name, m); } 00042 virtual void MapItem(const std::string& name, const Bridge::List& l) 00043 { b->MapItem(name, l); } 00044 virtual void MapItem(const std::string& name, long i) 00045 { b->MapItem(name, i); } 00046 virtual void MapItem(const std::string& name, double d) 00047 { b->MapItem(name, d); } 00048 virtual void MapItem(const std::string& name, const std::string& s) 00049 { b->MapItem(name, s); } 00050 virtual void MapEnd() { b->MapEnd(); } 00051 00052 virtual void ListItem(const Bridge::Map& m) { b->ListItem(m); } 00053 virtual void ListItem(const Bridge::List& l) { b->ListItem(l); } 00054 virtual void ListItem(long i) { b->ListItem(i); } 00055 virtual void ListItem(double d) { b->ListItem(d); } 00056 virtual void ListItem(const std::string& s) { b->ListItem(s); } 00057 virtual void ListEnd() { b->ListEnd(); } 00058 00059 protected: 00061 Atlas::Bridge* b; 00062 }; 00063 00064 } // namespace Atlas 00065 00066 #endif
Copyright 2000 the respective authors.
This document is licensed under the terms of the GNU Free Documentation License and may be freely distributed under the conditions given by this license.