EncoderBase.h

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) : m_b(b) { }
00033 
00034     ~EncoderBase() { }
00035     
00036     void streamBegin() { m_b.streamBegin(); }
00037     void streamMessage() { m_b.streamMessage(); }
00038     void streamEnd() { m_b.streamEnd(); }
00039     
00040     void mapMapItem(const std::string& name)
00041     { m_b.mapMapItem(name); }
00042     void mapListItem(const std::string& name)
00043     { m_b.mapListItem(name); }
00044     void mapIntItem(const std::string& name, long i)
00045     { m_b.mapIntItem(name, i); }
00046     void mapFloatItem(const std::string& name, double d)
00047     { m_b.mapFloatItem(name, d); }
00048     void mapStringItem(const std::string& name, const std::string& s)
00049     { m_b.mapStringItem(name, s); }
00050     void mapEnd()
00051     { m_b.mapEnd(); }
00052     
00053     void listMapItem() { m_b.listMapItem(); }
00054     void listListItem() { m_b.listListItem(); }
00055     void listIntItem(long i) { m_b.listIntItem(i); }
00056     void listFloatItem(double d) { m_b.listFloatItem(d); }
00057     void listStringItem(const std::string& s) { m_b.listStringItem(s); }
00058     void listEnd() { m_b.listEnd(); }
00059 
00060 protected:
00062     Atlas::Bridge & m_b;
00063 };
00064 
00065 } // namespace Atlas 
00066 
00067 #endif // ATLAS_ENCODERBASE_H

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.