ATLAS Offline Software
Control
AthenaKernel
AthenaKernel
IEvtIdModifierSvc.h
Go to the documentation of this file.
1
3
/*
4
Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
5
*/
6
7
// IEvtIdModifierSvc.h
8
// Header file for class IEvtIdModifierSvc
9
// Author: S.Binet<binet@cern.ch>
11
#ifndef ATHENAKERNEL_IEVTIDMODIFIERSVC_H
12
#define ATHENAKERNEL_IEVTIDMODIFIERSVC_H 1
13
17
// STL includes
18
#include <vector>
19
20
// FrameWork includes
21
#include "GaudiKernel/EventIDBase.h"
22
#include "GaudiKernel/IInterface.h"
23
24
// AthenaKernel includes
25
26
// fwd declares
27
class
EventID
;
28
29
// EventInfo type
30
using
event_number_t
=
EventIDBase::event_number_t
;
31
32
// Special global thread_local to pass event index to EventInfoCnv
33
namespace
EventInfoCnvParams
{
34
inline
thread_local
event_number_t
eventIndex
{0};
35
}
36
37
class
IEvtIdModifierSvc
:
virtual
public
::IInterface {
39
// Public typedefs:
41
public
:
42
DeclareInterfaceID
(
IEvtIdModifierSvc
, 1, 0);
43
44
using
number_type
=
EventIDBase::number_type
;
45
47
// Public methods:
49
public
:
52
virtual
~IEvtIdModifierSvc
();
53
55
// Const methods:
57
60
virtual
std::vector<number_type>
run_number_list
()
const
= 0;
61
63
// Non-const methods:
65
68
virtual
void
modify_evtid
(
EventID
& evt_id,
event_number_t
eventIndex
,
69
bool
consume_stream) = 0;
70
};
71
72
#endif //> !ATHENAKERNEL_IEVTIDMODIFIERSVC_H
IEvtIdModifierSvc::run_number_list
virtual std::vector< number_type > run_number_list() const =0
return the (sorted) list of run-numbers which will be modified.
EventInfoCnvParams
Definition:
IEvtIdModifierSvc.h:33
AtlasMcWeight::number_type
unsigned int number_type
Definition:
AtlasMcWeight.h:20
IEvtIdModifierSvc::number_type
EventIDBase::number_type number_type
Definition:
IEvtIdModifierSvc.h:44
IEvtIdModifierSvc
Definition:
IEvtIdModifierSvc.h:37
event_number_t
EventIDBase::event_number_t event_number_t
Definition:
IEvtIdModifierSvc.h:30
IEvtIdModifierSvc::modify_evtid
virtual void modify_evtid(EventID &evt_id, event_number_t eventIndex, bool consume_stream)=0
modify an EventID's content
IEvtIdModifierSvc::DeclareInterfaceID
DeclareInterfaceID(IEvtIdModifierSvc, 1, 0)
EventID
This class provides a unique identification for each event, in terms of run/event number and/or a tim...
Definition:
EventID.h:35
IEvtIdModifierSvc::~IEvtIdModifierSvc
virtual ~IEvtIdModifierSvc()
Destructor:
Definition:
IEvtIdModifierSvc.cxx:18
EventInfoCnvParams::eventIndex
thread_local event_number_t eventIndex
Definition:
IEvtIdModifierSvc.h:34
Generated on Thu Nov 7 2024 21:16:40 for ATLAS Offline Software by
1.8.18