Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members  

EvtCollectionStream.h

Go to the documentation of this file.
00001 //      ====================================================================
00002 //  EvtCollectionStream.h
00003 //      --------------------------------------------------------------------
00004 //
00005 //      Package   : GaudiSvc/PersistencySvc
00006 //
00007 //      Author    : Markus Frank
00008 //
00009 //      ====================================================================
00010 #ifndef GAUDISVC_PERSISTENCYSVC_EVTCOLLECTIONSTREAM_H
00011 #define GAUDISVC_PERSISTENCYSVC_EVTCOLLECTIONSTREAM_H
00012 
00013 // STL include files
00014 #include <memory>
00015 #include <vector>
00016 #include <string>
00017 
00018 // Required for inheritance
00019 #include "GaudiKernel/Algorithm.h"
00020 // forward declarations
00021 template <class ConcreteAlgorithm> class AlgFactory;
00022 
00027 class EvtCollectionStream : public Algorithm     {
00028   friend class AlgFactory<EvtCollectionStream>;
00029   typedef std::vector<std::string>    ItemNames;
00030   typedef std::vector<DataStoreItem*> Items;
00031 protected:
00033   INTupleSvc*   m_pTupleSvc;
00035   std::string   m_storeName;
00037   ItemNames     m_itemNames;
00039   Items         m_itemList;
00040 protected:
00042         EvtCollectionStream(const std::string& name, ISvcLocator* pSvcLocator); 
00044   virtual ~EvtCollectionStream();
00046   void clearItems();
00048   void addItem(const std::string& descriptor);
00049 public:
00051         virtual StatusCode initialize();
00053         virtual StatusCode finalize();
00055         virtual StatusCode execute();
00056 };
00057 
00058 #endif // GAUDISVC_PERSISTENCYSVC_EVTCOLLECTIONSTREAM_H

Generated at Wed Nov 21 12:22:29 2001 by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000