/home/bes3soft/bes3soft/Boss/7.0.2/dist/7.0.2/Event/RawDataCnv/RawDataCnv-00-04-35/RawDataCnv/RawDataSelector.h

Go to the documentation of this file.
00001 //=====================================================================
00002 //      RawDataSelector.h
00003 //=====================================================================
00004 //
00005 // Description: An event selector service that steps through Event
00006 //              Filter packed raw events by use of an event source
00007 //              object and an iterator object called RawDataIterator. 
00008 //              The type of event source is specified at run time. It
00009 //              can be a single file, a set of files or the network.
00010 //
00011 //---------------------------------------------------------------------
00012 
00013 #ifndef RAWDATA_SELECTOR_H
00014 #define RAWDATA_SELECTOR_H
00015 
00016 // Include files.
00017 #include <string>
00018 #include "GaudiKernel/Service.h"
00019 #include "GaudiKernel/IEvtSelector.h"
00020 #include "GaudiKernel/IProperty.h"
00021 
00022 
00023 // Forward declarations.
00024 class IAddressCreator;
00025 class ISvcLocator;
00026 class RawDataContext;
00027 class IRawDataInputSvc;
00028 
00029 // Class RawDataSelector.
00030 class RawDataSelector : virtual public Service, 
00031                            virtual public IEvtSelector, 
00032                            virtual public IProperty 
00033 {
00034 
00035 public:
00036 
00037    // Standard Constructor.
00038    RawDataSelector(const std::string& name, ISvcLocator* svcloc);
00039   
00040    // Standard Destructor.
00041    ~RawDataSelector();
00042 
00043    // Implementation of Service base class methods.
00044    virtual StatusCode initialize();
00045 
00046    // Implementation of the IEvtSelector interface methods.
00047    virtual StatusCode createContext(Context*& it) const;
00048    virtual StatusCode next(Context& it) const;
00049    virtual StatusCode next(Context& it, int jump) const;
00050    virtual StatusCode previous(Context& it) const;
00051    virtual StatusCode previous(Context& it, int jump) const;
00052 
00053    virtual StatusCode last(Context& it) const;
00054    virtual StatusCode rewind(Context& it) const;
00055 
00056    virtual StatusCode createAddress(const Context& it,IOpaqueAddress*& iop) const;
00057    virtual StatusCode releaseContext(Context*& it) const;
00058    virtual StatusCode resetCriteria(const std::string& criteria, Context& context) const;
00059 
00060    virtual StatusCode queryInterface(const InterfaceID& riid, void** ppvInterface);
00061 
00062 private:
00063 
00064    IRawDataInputSvc*     m_eventSource;
00065    RawDataContext*       m_beginContext;
00066    RawDataContext*       m_endContext;
00067    IAddressCreator*      m_addressCreator; 
00068    std::string           m_eventSourceName;
00069 
00070 
00071 };
00072 
00073 #endif  // RAWDATA_SELECTOR_H

Generated on Tue Nov 29 22:58:31 2016 for BOSS_7.0.2 by  doxygen 1.4.7