| # Gaudi Framework, version v21r7 |

Home |  | Generated: 22 Jan 2010

# PoolDbEvtSelector.h

Go to the documentation of this file.

    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