CGEM BOSS 6.6.5.i
BESIII Offline Software System
Loading...
Searching...
No Matches
McEventSelector.h
Go to the documentation of this file.
1//====================================================================
2// McEventSelector.h
3//--------------------------------------------------------------------
4//
5// Package : McEventSelector
6//
7// Description: The McEventSelector component is able
8// to produce a list of event references given a set of "selection
9// criteria".
10//
11// Author : P. Calafiura
12// Created : 2/28/00
13// Changes :
14//
15//
16//====================================================================
17
18#ifndef MCEVENTSELECTOR_MCEVENTSELECTOR_H
19#define MCEVENTSELECTOR_MCEVENTSELECTOR_H 1
20
21// Include files
22#include "GaudiKernel/IEvtSelector.h"
23#include "GaudiKernel/Service.h"
24#include "GaudiKernel/Property.h" /*no forward decl: typedef*/
25
26// Forward declarations
27class ISvcLocator;
28
29#ifdef WIN32
30// Disable warning C4786: identifier was truncated to '255' characters in the debug information
31#pragma warning ( disable : 4786 )
32#endif
33
34
35//--------------------------------------------------------------------
36// Event Selector
37//--------------------------------------------------------------------
38
39class McEventSelector : virtual public Service,
40 virtual public IEvtSelector {
41public:
42 // Standard Constructor.
43 McEventSelector(const std::string& name, ISvcLocator* svcloc);
44
45 // Standard Destructor.
47
48 // Implementation of Service base class methods.
49 virtual StatusCode initialize();
50 virtual StatusCode finalize();
51
52 virtual StatusCode queryInterface(const InterfaceID& riid,
53 void** ppvInterface);
54 virtual StatusCode createContext(Context*& refpCtxt) const;
55
56 virtual StatusCode last(Context& refContext) const;
57 virtual StatusCode next(Context& refCtxt) const;
58 virtual StatusCode next(Context& refCtxt,int jump) const;
59 virtual StatusCode previous(Context& refCtxt) const;
60 virtual StatusCode previous(Context& refCtxt,int jump) const;
61 virtual StatusCode rewind(Context& refCtxt) const;
62
63 virtual StatusCode createAddress(const Context& refCtxt,
64 IOpaqueAddress*&) const;
65 virtual StatusCode releaseContext(Context*& refCtxt) const;
66 virtual StatusCode resetCriteria(const std::string& cr,Context& c)const;
67
68private:
69 IntegerProperty m_runNo;
70 IntegerProperty m_firstEventNo;
71 IntegerProperty m_eventsPerRun;
72
73 /*
74 static IService* createClassObject( const std::string& svcname, ISvcLocator* svcloc );
75 // IEvtSelector implementation
76 virtual StatusCode initialize();
77 virtual StatusCode setCriteria( const std::string& criteria );
78 virtual StatusCode setCriteria( const SelectionCriteria& criteria );
79 virtual Iterator* begin() const;
80 virtual Iterator* end() const;
81 virtual Iterator& next(Iterator& it) const;
82 virtual Iterator& previous(Iterator& it) const;
83 IOpaqueAddress* reference(const Iterator& it) const;
84
85 // IInterface implementation
86 virtual StatusCode queryInterface(const IID& riid, void** ppvInterface);
87
88 // Constructors & Destructors
89 McEventSelector( const std::string& name, ISvcLocator* svcloc );
90 ~McEventSelector();
91
92private:
93 // EventSource* p_eventSource;
94 McIterator* p_beginIter;
95 McIterator* p_endIter;
96 IntegerProperty m_runNo;
97 IntegerProperty m_firstEventNo;
98 IntegerProperty m_eventsPerRun;
99 */
100
101};
102
103#endif // MCEVENTCNV_MCEVENTSELECTOR_H
104
105
virtual StatusCode initialize()
virtual StatusCode previous(Context &refCtxt) const
virtual StatusCode resetCriteria(const std::string &cr, Context &c) const
virtual StatusCode rewind(Context &refCtxt) const
virtual StatusCode releaseContext(Context *&refCtxt) const
McEventSelector(const std::string &name, ISvcLocator *svcloc)
virtual StatusCode finalize()
virtual StatusCode queryInterface(const InterfaceID &riid, void **ppvInterface)
virtual StatusCode createAddress(const Context &refCtxt, IOpaqueAddress *&) const
virtual StatusCode createContext(Context *&refpCtxt) const
virtual StatusCode last(Context &refContext) const
virtual StatusCode next(Context &refCtxt) const