|
Gaudi Framework, version v21r8 |
| Home | Generated: 17 Mar 2010 |
00001 // $Id: PoolDbEvtSelector.h,v 1.3 2004/07/06 13:10:21 mato Exp $ 00002 //==================================================================== 00003 // PoolDbEvtSelector.h 00004 //-------------------------------------------------------------------- 00005 // 00006 // Package : GaudiPoolDb 00007 // 00008 // Description: The PoolDbEvtSelector component is able 00009 // to produce a list of event references given a set of "selection 00010 // criteria". 00011 // 00012 // Author : M.Frank 00013 // Created : 4/01/99 00014 // 00015 //==================================================================== 00016 // $Header: /tmp/svngaudi/tmp.jEpFh25751/Gaudi/GaudiPoolDb/GaudiPoolDb/PoolDbEvtSelector.h,v 1.3 2004/07/06 13:10:21 mato Exp $ 00017 00018 #ifndef POOLDB_POOLDBEVTSELECTOR_H 00019 #define POOLDB_POOLDBEVTSELECTOR_H 1 00020 00021 // Include files 00022 #include "GaudiKernel/Kernel.h" 00023 #include "GaudiKernel/IEvtSelector.h" 00024 #include "GaudiKernel/IProperty.h" 00025 #include "GaudiKernel/ISvcLocator.h" 00026 #include "GaudiKernel/Service.h" 00027 #include "GaudiKernel/DataObject.h" 00028 #include "PersistencySvc/ITokenIterator.h" 00029 // C++ include files 00030 #include <list> 00031 00032 // Forward declarations 00033 class IPoolDbMgr; 00034 00035 //-------------------------------------------------------------------- 00036 // Event Selector 00037 //-------------------------------------------------------------------- 00038 00039 class GAUDI_API PoolDbEvtSelector: public extends1<Service, IEvtSelector> { 00040 public: 00042 virtual StatusCode initialize(); 00043 00045 virtual StatusCode finalize(); 00046 00048 00052 virtual StatusCode createContext(Context*& refpCtxt) const; 00053 00057 virtual StatusCode last(Context& refContext) const; 00058 00060 00064 virtual StatusCode next(Context& refCtxt) const; 00065 00067 00071 virtual StatusCode next(Context& refCtxt,int jump) const; 00072 00074 00079 virtual StatusCode previous(Context& refCtxt) const; 00080 00082 00087 virtual StatusCode previous(Context& refCtxt,int jump) const; 00088 00090 00094 virtual StatusCode rewind(Context& refCtxt) const; 00095 00097 00101 virtual StatusCode createAddress(const Context& refCtxt, IOpaqueAddress*&) const; 00102 00104 00108 virtual StatusCode releaseContext(Context*& refCtxt) const; 00109 00116 virtual StatusCode resetCriteria(const std::string& cr,Context& c)const; 00117 00119 PoolDbEvtSelector( const std::string& name, ISvcLocator* svcloc ); 00120 00122 virtual ~PoolDbEvtSelector(); 00123 00124 protected: 00125 // Data Members 00126 std::string m_cnvSvcName; 00127 mutable SmartIF<IPoolDbMgr> m_dbMgr; 00128 CLID m_rootCLID; 00129 std::string m_rootName; 00130 std::string m_criteria; 00131 }; 00132 #endif // POOLDB_POOLDBEVTSELECTOR_H