Atlas-C++
|
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 2000-2001 Stefanus Du Toit and Aloril. 00004 // Copyright 2001-2005 Alistair Riddoch. 00005 // Automatically generated using gen_cpp.py. 00006 00007 #ifndef ATLAS_OBJECTS_DECODER_H 00008 #define ATLAS_OBJECTS_DECODER_H 00009 00010 00011 #include <Atlas/Message/DecoderBase.h> 00012 00013 namespace Atlas { namespace Objects { 00014 00015 template <class T> class SmartPtr; 00016 class RootData; 00017 typedef SmartPtr<RootData> Root; 00018 00019 class Factories; 00020 00031 class ObjectsDecoder : public Atlas::Message::DecoderBase 00032 { 00033 public: 00035 explicit ObjectsDecoder(Factories * f = 0); 00037 virtual ~ObjectsDecoder(); 00038 00040 Factories * factories() const { 00041 return m_factories; 00042 } 00043 protected: 00045 virtual void messageArrived(const Atlas::Message::MapType&); 00046 00048 virtual void objectArrived(const Root& obj) = 0; 00049 00050 Factories * m_factories; 00051 }; 00052 00053 } } // namespace Atlas::Objects 00054 00055 #endif // ATLAS_OBJECTS_DECODER_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.