BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
RawDataSelector.h
Go to the documentation of this file.
1//=====================================================================
2// RawDataSelector.h
3//=====================================================================
4//
5// Description: An event selector service that steps through Event
6// Filter packed raw events by use of an event source
7// object and an iterator object called RawDataIterator.
8// The type of event source is specified at run time. It
9// can be a single file, a set of files or the network.
10//
11//---------------------------------------------------------------------
12
13#ifndef RAWDATA_SELECTOR_H
14#define RAWDATA_SELECTOR_H
15
16// Include files.
17#include "GaudiKernel/IAddressCreator.h"
18#include "GaudiKernel/IEvtSelector.h"
19#include "GaudiKernel/IProperty.h"
20#include "GaudiKernel/ISvcLocator.h"
21#include "GaudiKernel/Service.h"
22#include <string>
23
24#include "RawDataCnvSvc/IRawDataInputSvc.h"
25
26#include "RawDataContext.h"
27
28// Class RawDataSelector.
29class RawDataSelector : public extends<Service, IEvtSelector> {
30
31public:
32 // Standard Constructor.
33 RawDataSelector( const std::string& name, ISvcLocator* svcloc );
34
35 // Standard Destructor.
37
38 // Implementation of Service base class methods.
39 virtual StatusCode initialize();
40
41 // Implementation of the IEvtSelector interface methods.
42 virtual StatusCode createContext( Context*& it ) const;
43 virtual StatusCode next( Context& it ) const;
44 virtual StatusCode next( Context& it, int jump ) const;
45 virtual StatusCode previous( Context& it ) const;
46 virtual StatusCode previous( Context& it, int jump ) const;
47
48 virtual StatusCode last( Context& it ) const;
49 virtual StatusCode rewind( Context& it ) const;
50
51 virtual StatusCode createAddress( const Context& it, IOpaqueAddress*& iop ) const;
52 virtual StatusCode releaseContext( Context*& it ) const;
53 virtual StatusCode resetCriteria( const std::string& criteria, Context& context ) const;
54
55 virtual StatusCode queryInterface( const InterfaceID& riid, void** ppvInterface );
56
57private:
58 SmartIF<IRawDataInputSvc> m_eventSource;
59 SmartIF<IAddressCreator> m_addressCreator;
60
61 RawDataContext* m_beginContext;
62 RawDataContext* m_endContext;
63 std::string m_eventSourceName;
64};
65
66#endif // RAWDATA_SELECTOR_H
This class provides the Context for RawDataSelector.
virtual StatusCode previous(Context &it) const
virtual StatusCode createAddress(const Context &it, IOpaqueAddress *&iop) const
virtual StatusCode initialize()
virtual StatusCode previous(Context &it, int jump) const
RawDataSelector(const std::string &name, ISvcLocator *svcloc)
virtual StatusCode queryInterface(const InterfaceID &riid, void **ppvInterface)
virtual StatusCode resetCriteria(const std::string &criteria, Context &context) const
virtual StatusCode last(Context &it) const
virtual StatusCode rewind(Context &it) const
virtual StatusCode next(Context &it, int jump) const
virtual StatusCode next(Context &it) const
virtual StatusCode createContext(Context *&it) const
virtual StatusCode releaseContext(Context *&it) const