Loading [MathJax]/extensions/tex2jax.js
 |
ATLAS Offline Software
|
#include <PileUpMTAlg.h>
|
| PileUpMTAlg (const std::string &name, ISvcLocator *pSvcLocator) |
|
virtual | ~PileUpMTAlg () |
|
virtual StatusCode | initialize () override |
| uncomment and implement methods as required More...
|
|
virtual StatusCode | execute () override |
|
virtual StatusCode | finalize () override |
|
virtual bool | isClonable () const override |
|
virtual StatusCode | sysInitialize () override |
| Override sysInitialize. More...
|
|
virtual const DataObjIDColl & | extraOutputDeps () const override |
| Return the list of extra output dependencies. More...
|
|
ServiceHandle< StoreGateSvc > & | evtStore () |
| The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
const ServiceHandle< StoreGateSvc > & | evtStore () const |
| The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
const ServiceHandle< StoreGateSvc > & | detStore () const |
| The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
virtual StatusCode | sysStart () override |
| Handle START transition. More...
|
|
virtual std::vector< Gaudi::DataHandle * > | inputHandles () const override |
| Return this algorithm's input handles. More...
|
|
virtual std::vector< Gaudi::DataHandle * > | outputHandles () const override |
| Return this algorithm's output handles. More...
|
|
Gaudi::Details::PropertyBase & | declareProperty (Gaudi::Property< T > &t) |
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleKey &hndl, const std::string &doc, const SG::VarHandleKeyType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleBase &hndl, const std::string &doc, const SG::VarHandleType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleKeyArray &hndArr, const std::string &doc, const SG::VarHandleKeyArrayType &) |
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, T &property, const std::string &doc, const SG::NotHandleType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, T &property, const std::string &doc="none") |
| Declare a new Gaudi property. More...
|
|
void | updateVHKA (Gaudi::Details::PropertyBase &) |
|
MsgStream & | msg () const |
|
MsgStream & | msg (const MSG::Level lvl) const |
|
bool | msgLvl (const MSG::Level lvl) const |
|
|
StatusCode | get_ei (StoreGateSvc &sg, std::unique_ptr< const xAOD::EventInfo > &ei, std::unique_ptr< xAOD::EventAuxInfo > &eiAux, bool pileup=false) const |
|
unsigned int | get_BCID (int bc, unsigned int central_BCID) const |
|
StatusCode | add_subevt (const std::vector< std::uint32_t > &bcid, SG::WriteHandle< xAOD::EventInfo > &overlaidEvt, SG::WriteHandle< xAOD::EventInfoContainer > &puCont, ServiceHandle< IMinbiasSvc > &mbSvc, xAOD::EventInfo::PileUpType puType, int bc, const EventContext &ctx, unsigned long subevt_id, std::vector< std::uint64_t > &trace) |
|
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &) |
| specialization for handling Gaudi::Property<SG::VarHandleKey> More...
|
|
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleKeyArrayType &) |
| specialization for handling Gaudi::Property<SG::VarHandleKeyArray> More...
|
|
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleType &) |
| specialization for handling Gaudi::Property<SG::VarHandleBase> More...
|
|
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &t, const SG::NotHandleType &) |
| specialization for handling everything that's not a Gaudi::Property<SG::VarHandleKey> or a <SG::VarHandleKeyArray> More...
|
|
Definition at line 68 of file PileUpMTAlg.h.
◆ StoreGateSvc_t
◆ PileUpMTAlg()
PileUpMTAlg::PileUpMTAlg |
( |
const std::string & |
name, |
|
|
ISvcLocator * |
pSvcLocator |
|
) |
| |
◆ ~PileUpMTAlg()
PileUpMTAlg::~PileUpMTAlg |
( |
| ) |
|
|
virtual |
◆ add_subevt()
Definition at line 89 of file PileUpMTAlg.cxx.
99 std::unique_ptr<const xAOD::EventInfo> ei;
100 std::unique_ptr<xAOD::EventAuxInfo> eiAux;
104 trace.push_back(mb_to_modify.eventNumber());
106 mb_to_modify.setBCID(
bcid[bc_idx]);
112 return StatusCode::FAILURE;
114 return StatusCode::SUCCESS;
◆ declareGaudiProperty() [1/4]
specialization for handling Gaudi::Property<SG::VarHandleKeyArray>
Definition at line 170 of file AthCommonDataStore.h.
175 hndl.documentation());
◆ declareGaudiProperty() [2/4]
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition at line 156 of file AthCommonDataStore.h.
161 hndl.documentation());
◆ declareGaudiProperty() [3/4]
specialization for handling Gaudi::Property<SG::VarHandleBase>
Definition at line 184 of file AthCommonDataStore.h.
189 hndl.documentation());
◆ declareGaudiProperty() [4/4]
◆ declareProperty() [1/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation string for the property. |
This is the version for types that derive from SG::VarHandleBase
. The property value object is put on the input and output lists as appropriate; then we forward to the base class.
Definition at line 245 of file AthCommonDataStore.h.
250 this->declare(hndl.
vhKey());
251 hndl.
vhKey().setOwner(
this);
253 return PBASE::declareProperty(
name,hndl,
doc);
◆ declareProperty() [2/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation string for the property. |
This is the version for types that derive from SG::VarHandleKey
. The property value object is put on the input and output lists as appropriate; then we forward to the base class.
Definition at line 221 of file AthCommonDataStore.h.
229 return PBASE::declareProperty(
name,hndl,
doc);
◆ declareProperty() [3/6]
◆ declareProperty() [4/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation string for the property. |
This is the generic version, for types that do not derive from SG::VarHandleKey
. It just forwards to the base class version of declareProperty
.
Definition at line 333 of file AthCommonDataStore.h.
338 return PBASE::declareProperty(
name, property,
doc);
◆ declareProperty() [5/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation string for the property. |
This dispatches to either the generic declareProperty
or the one for VarHandle/Key/KeyArray.
Definition at line 352 of file AthCommonDataStore.h.
◆ declareProperty() [6/6]
◆ detStore()
◆ evtStore() [1/2]
◆ evtStore() [2/2]
◆ execute()
StatusCode PileUpMTAlg::execute |
( |
| ) |
|
|
overridevirtual |
Definition at line 182 of file PileUpMTAlg.cxx.
184 fmt::memory_buffer trace_buf{};
185 auto trace = std::back_inserter(trace_buf);
187 const EventContext& ctx = Gaudi::Hive::currentContext();
188 const auto& evtID = ctx.eventID();
191 setFilterPassed(
false);
195 std::unique_ptr<const xAOD::EventInfo> hsEvt =
nullptr;
196 std::unique_ptr<xAOD::EventAuxInfo> hsEvtAux =
nullptr;
201 ATH_CHECK(overlaidEvt.record(std::make_unique<xAOD::EventInfo>(),
202 std::make_unique<xAOD::EventAuxInfo>()));
203 *overlaidEvt = *hsEvt;
209 overlaidEvt->setRunNumber(evtID.run_number());
210 overlaidEvt->setLumiBlock(evtID.lumi_block());
211 overlaidEvt->setEventNumber(evtID.event_number());
212 overlaidEvt->setBCID(evtID.bunch_crossing_id());
213 overlaidEvt->setTimeStamp(evtID.time_stamp());
214 overlaidEvt->setTimeStampNSOffset(evtID.time_stamp_ns_offset());
217 ATH_CHECK(puCont.record(std::make_unique<xAOD::EventInfoContainer>(),
218 std::make_unique<xAOD::EventInfoAuxContainer>()));
221 m_beamInt->selectT0(evtID.run_number(), evtID.event_number());
222 overlaidEvt->setBCID(
m_beamInt->getCurrentT0BunchCrossing());
229 bool sf_updated =
false;
230 float lumi_sf =
m_beamLumi->scaleFactor(evtID.run_number(),
231 evtID.lumi_block(), sf_updated);
232 float cur_avg_mu = lumi_sf *
m_avgMu;
233 overlaidEvt->setAverageInteractionsPerCrossing(cur_avg_mu);
234 overlaidEvt->setActualInteractionsPerCrossing(
m_beamInt->normFactor(0) *
239 fmt::format_to(trace,
240 "Idx: {} Run: {} LB: {} EVT: {} "
242 ctx.evt(), evtID.run_number(), evtID.lumi_block(),
247 [
this](
int bc) {
return int(
m_beamInt->normFactor(bc)); }) |
248 #
if RANGE_V3_VERSION >= 1200
249 rv::chunk_by(std::equal_to{}) |
251 rv::group_by(std::equal_to{}) |
257 fmt::format_to(trace,
"mu = {}, central BCID = {}, bunch pattern = [{}]\n",
258 cur_avg_mu,
m_beamInt->getCurrentT0BunchCrossing(),
291 std::vector<std::uint32_t>
bcid{};
316 std::vector<std::uint64_t> subevts_vec{};
319 fmt::format_to(trace,
"\tBC {:03} : LOW PT {} ", bc,
322 for (std::size_t
i = 0;
i <
m_lowptMBSvc->getNumForBunch(ctx, bc); ++
i) {
331 fmt::format_to(trace,
"HIGH PT {} | ",
343 fmt::format_to(trace,
"CAVERN {} | ",
355 fmt::format_to(trace,
"BEAM HALO {} | ",
368 fmt::format_to(trace,
"BEAM GAS {} | ",
380 fmt::format_to(trace,
"TOTAL {} | HASH {:08X}\n", subevts_vec.size(),
385 fmt::format_to(trace,
"\n");
386 m_pileupTrace.print(trace_buf);
395 return StatusCode::FAILURE;
398 if (!
tool->filterPassed()) {
399 setFilterPassed(
false);
413 overlaidEvt->setPileUpMixtureID(
415 ATH_MSG_DEBUG(
"PileUpMixtureID = " << overlaidEvt->pileUpMixtureID());
417 setFilterPassed(
true);
433 return StatusCode::SUCCESS;
◆ extraDeps_update_handler()
Add StoreName to extra input/output deps as needed.
use the logic of the VarHandleKey to parse the DataObjID keys supplied via the ExtraInputs and ExtraOuputs Properties to add the StoreName if it's not explicitly given
◆ extraOutputDeps()
const DataObjIDColl & AthAlgorithm::extraOutputDeps |
( |
| ) |
const |
|
overridevirtualinherited |
Return the list of extra output dependencies.
This list is extended to include symlinks implied by inheritance relations.
Definition at line 50 of file AthAlgorithm.cxx.
57 return Algorithm::extraOutputDeps();
◆ finalize()
StatusCode PileUpMTAlg::finalize |
( |
| ) |
|
|
overridevirtual |
◆ get_BCID()
unsigned int PileUpMTAlg::get_BCID |
( |
int |
bc, |
|
|
unsigned int |
central_BCID |
|
) |
| const |
|
inlineprivate |
Definition at line 148 of file PileUpMTAlg.h.
149 constexpr
int maxBCPerOrbit = 3564;
150 return static_cast<unsigned int>((bc +
static_cast<int>(central_BCID)) %
◆ get_ei()
Definition at line 39 of file PileUpMTAlg.cxx.
43 std::string
key =
pileup ?
"EventInfo" :
"HSEventInfo";
58 return StatusCode::FAILURE;
65 if (attr_list_p !=
nullptr) {
66 if (attr_list_p->size() <= 6) {
70 const auto runNum = attr_list[
"RunNumber"].data<
unsigned>();
71 const auto evtNum = attr_list[
"EventNumber"].data<
unsigned long long>();
72 const auto lbNum = attr_list[
"LumiBlockN"].data<
unsigned>();
79 "Could not read Input attribute list and EventInfo has no event "
83 newEi->setEvtStore(&sg);
86 return StatusCode::SUCCESS;
◆ initialize()
StatusCode PileUpMTAlg::initialize |
( |
| ) |
|
|
overridevirtual |
uncomment and implement methods as required
Definition at line 117 of file PileUpMTAlg.cxx.
118 using namespace std::chrono;
122 fmt::format(
"pileup_trace_skipping-{}_{:%Y-%m-%dT%H%M}.txt",
156 fmt::memory_buffer trace_buf{};
157 auto trace = std::back_inserter(trace_buf);
159 fmt::format_to(trace,
"SKIPPING Run: {} LB: {} EVT: {} HS ID: {}\n",
160 it->runNum,
it->lbNum,
it->evtNum,
it->evtIdx);
162 m_pileupTrace.print(trace_buf);
163 return StatusCode::SUCCESS;
165 if (!m_skiptrace_written) {
167 m_skiptrace_written =
true;
170 return StatusCode::SUCCESS;
◆ inputHandles()
Return this algorithm's input handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
◆ isClonable()
virtual bool PileUpMTAlg::isClonable |
( |
| ) |
const |
|
inlineoverridevirtual |
◆ msg() [1/2]
◆ msg() [2/2]
◆ msgLvl()
◆ outputHandles()
Return this algorithm's output handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
◆ renounce()
◆ renounceArray()
◆ sysInitialize()
StatusCode AthAlgorithm::sysInitialize |
( |
| ) |
|
|
overridevirtualinherited |
◆ sysStart()
Handle START transition.
We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.
◆ updateVHKA()
◆ ATLAS_THREAD_SAFE [1/2]
◆ ATLAS_THREAD_SAFE [2/2]
bool m_skiptrace_written PileUpMTAlg::ATLAS_THREAD_SAFE = false |
|
inlinestaticprivate |
◆ m_avgMu
Gaudi::Property<float> PileUpMTAlg::m_avgMu {this, "AverageMu", 200, "Average mu"} |
|
private |
◆ m_BCSpacing
Gaudi::Property<int> PileUpMTAlg::m_BCSpacing |
|
private |
Initial value:{this, "BCSpacing", 25,
"Bunch crossing spacing in ns"}
Definition at line 129 of file PileUpMTAlg.h.
◆ m_beamgasMBSvc
Initial value:{
this, "BeamGasMinbiasSvc", "", "MinbiasSvc for beam gas background"}
Definition at line 102 of file PileUpMTAlg.h.
◆ m_beamhaloMBSvc
Initial value:{
this, "BeamHaloMinbiasSvc", "", "MinbiasSvc for beam halo background"}
Definition at line 100 of file PileUpMTAlg.h.
◆ m_beamInt
Initial value:{this, "BeamIntSvc", "FlatBM",
"Beam intensity service"}
Definition at line 104 of file PileUpMTAlg.h.
◆ m_beamLumi
Initial value:{
this, "BeamLumiSvc", "LumiProfileSvc", "Beam luminosity service"}
Definition at line 106 of file PileUpMTAlg.h.
◆ m_cavernMBSvc
Initial value:{this, "CavernMinbiasSvc", "",
"MinbiasSvc for cavern background"}
Definition at line 98 of file PileUpMTAlg.h.
◆ m_detStore
◆ m_earliestDeltaBC
Gaudi::Property<int> PileUpMTAlg::m_earliestDeltaBC |
|
private |
Initial value:{
this, "EarliestDeltaBC", -32,
"Earliest bunch crossing to consider (as delta)"}
Definition at line 131 of file PileUpMTAlg.h.
◆ m_evtInfoContKey
◆ m_evtInfoKey
Initial value:{this, "EventInfoKey", "OverlayEvent",
"Overlay EventInfo key"}
Definition at line 140 of file PileUpMTAlg.h.
◆ m_evtStore
◆ m_extendedExtraObjects
DataObjIDColl AthAlgorithm::m_extendedExtraObjects |
|
privateinherited |
◆ m_fracHighPt
Gaudi::Property<float> PileUpMTAlg::m_fracHighPt |
|
private |
Initial value:{this, "FracHighPt", 0.,
"Fraction of pileup that has high pT"}
Definition at line 121 of file PileUpMTAlg.h.
◆ m_fracLowPt
Gaudi::Property<float> PileUpMTAlg::m_fracLowPt |
|
private |
Initial value:{this, "FracLowPt", 0.,
"Fraction of pileup that has low pT"}
Definition at line 119 of file PileUpMTAlg.h.
◆ m_highptMBSvc
Initial value:{this, "HighPtMinbiasSvc", "",
"MinbiasSvc for high pT minbias"}
Definition at line 96 of file PileUpMTAlg.h.
◆ m_latestDeltaBC
Gaudi::Property<int> PileUpMTAlg::m_latestDeltaBC |
|
private |
Initial value:{
this, "LatestDeltaBC", +6,
"Latest bunch crossing to consider (as delta)"}
Definition at line 134 of file PileUpMTAlg.h.
◆ m_lowptMBSvc
Initial value:{this, "LowPtMinbiasSvc", "",
"MinbiasSvc for low pT minbias"}
Other useful methods provided by base class are: evtStore() : ServiceHandle to main event data storegate inputMetaStore() : ServiceHandle to input metadata storegate outputMetaStore() : ServiceHandle to output metadata storegate histSvc() : ServiceHandle to output ROOT service (writing TObjects) currentFile() : TFile* to the currently open input file retrieveMetadata(...): See twiki.cern.ch/twiki/bin/view/AtlasProtected/AthAnalysisBase#ReadingMetaDataInCpp.
Definition at line 94 of file PileUpMTAlg.h.
◆ m_numBeamGas
Gaudi::Property<float> PileUpMTAlg::m_numBeamGas |
|
private |
Initial value:{
this, "NumBeamGas", 0., "Number of beam gas background events per BC"}
Definition at line 125 of file PileUpMTAlg.h.
◆ m_numBeamHalo
Gaudi::Property<float> PileUpMTAlg::m_numBeamHalo |
|
private |
Initial value:{
this, "NumBeamHalo", 0., "Number of beam halo background events per BC"}
Definition at line 127 of file PileUpMTAlg.h.
◆ m_numCavern
Gaudi::Property<float> PileUpMTAlg::m_numCavern |
|
private |
Initial value:{
this, "NumCavern", 0., "Number of cavern background events per BC"}
Definition at line 123 of file PileUpMTAlg.h.
◆ m_puTools
Initial value:{
this, "PileUpTools", {}, "Pileup tools"}
Definition at line 113 of file PileUpMTAlg.h.
◆ m_rngSvc
Initial value:{this, "RNGSvc", "AthRNGSvc/PileupRNG",
"RNG service for pile-up digitization"}
Definition at line 108 of file PileUpMTAlg.h.
◆ m_skipEventIdxSvc
Initial value:{
this, "SkipEvtIdxSvc", "SkipEventIdxSvc",
"Skipped event index (run / lb num) provider"}
Definition at line 137 of file PileUpMTAlg.h.
◆ m_skippedHSEvents
Gaudi::Property<int> PileUpMTAlg::m_skippedHSEvents |
|
private |
Initial value:{this, "SkippedHSEvents", 0,
"Number of skipped HS events"}
Definition at line 116 of file PileUpMTAlg.h.
◆ m_varHandleArraysDeclared
◆ m_vhka
◆ m_writeTrace
Gaudi::Property<bool> PileUpMTAlg::m_writeTrace {this, "WriteTrace", false, "Write trace of pileup events used"} |
|
private |
◆ m_xAODEICnvTool
Initial value:{
this, "xAODCnvTool", "xAODMaker::EventInfoCnvTool/EventInfoCnvTool",
"xAOD EventInfo conversion tool"}
Definition at line 110 of file PileUpMTAlg.h.
The documentation for this class was generated from the following files:
def retrieve(aClass, aKey=None)
void setEventNumber(uint64_t value)
Set the current event's event number.
EventInfo_v1 EventInfo
Definition of the latest event info version.
uint64_t eventNumber() const
The current event's event number.
Gaudi::Property< float > m_numBeamHalo
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
Auxiliary information about the event.
void clearSubEvents()
Clear all the currently held sub-events.
ServiceHandle< IMinbiasSvc > m_lowptMBSvc
Other useful methods provided by base class are: evtStore() : ServiceHandle to main event data storeg...
Gaudi::Property< float > m_fracLowPt
StoreGateSvc_t m_evtStore
Pointer to StoreGate (event store by default)
std::vector< SG::VarHandleKeyArray * > m_vhka
PileUpType
Enumerator describing the types of pileup events.
static xAOD::EventInfo::PileUpMixtureID uuidToPileUpMixtureId(const uuid_t &hash)
Convert uuid_t to xAOD::EventInfo::PileUpMixtureID.
uint32_t eventTypeBitmask() const
The event type bitmask.
std::string hashSource() const
Get the current hash base.
Gaudi::Property< int > m_latestDeltaBC
#define ATH_MSG_VERBOSE(x)
Gaudi::Property< float > m_avgMu
@ IS_SIMULATION
true: simulation, false: data
ServiceHandle< IBeamIntensity > m_beamInt
void handler(int sig)
signal handler
virtual void setOwner(IDataHandleHolder *o)=0
Gaudi::Property< bool > m_writeTrace
SG::WriteHandleKey< xAOD::EventInfoContainer > m_evtInfoContKey
Gaudi::Property< float > m_numCavern
Gaudi::Property< int > m_earliestDeltaBC
ServiceHandle< StoreGateSvc > & evtStore()
The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.
ServiceHandle< IMinbiasSvc > m_highptMBSvc
virtual StatusCode sysInitialize() override
Override sysInitialize.
virtual std::vector< Gaudi::DataHandle * > outputHandles() const override
Return this algorithm's output handles.
Gaudi::Property< float > m_numBeamGas
void setStore(const SG::IConstAuxStore *store)
Set the store associated with this object.
ToolHandle< xAODMaker::IEventInfoCnvTool > m_xAODEICnvTool
std::vector< EvtId >::const_iterator EvtIter
::StatusCode StatusCode
StatusCode definition for legacy code.
pointer_type ptr()
Dereference the pointer.
ServiceHandle< IBeamLuminosity > m_beamLumi
Amg::Vector3D transform(Amg::Vector3D &v, Amg::Transform3D &tr)
Transform a point from a Trasformation3D.
void addToHashSource(const std::string &string)
Add a plain string to the stream.
ServiceHandle< IMinbiasSvc > m_beamgasMBSvc
An AttributeList represents a logical row of attributes in a metadata table. The name and type of eac...
StoreGateSvc_t m_detStore
Pointer to StoreGate (detector store by default)
StatusCode initialize(bool used=true)
If this object is used as a property, then this should be called during the initialize phase.
unsigned int get_BCID(int bc, unsigned int central_BCID) const
ServiceHandle< IMinbiasSvc > m_beamhaloMBSvc
StatusCode add_subevt(const std::vector< std::uint32_t > &bcid, SG::WriteHandle< xAOD::EventInfo > &overlaidEvt, SG::WriteHandle< xAOD::EventInfoContainer > &puCont, ServiceHandle< IMinbiasSvc > &mbSvc, xAOD::EventInfo::PileUpType puType, int bc, const EventContext &ctx, unsigned long subevt_id, std::vector< std::uint64_t > &trace)
EventAuxInfo_v3 EventAuxInfo
Definition of the latest event auxiliary info version.
virtual void renounce()=0
std::conditional< std::is_base_of< SG::VarHandleKeyArray, T >::value, VarHandleKeyArrayType, type2 >::type type
std::string join(const std::vector< std::string > &v, const char c=',')
ServiceHandle< IAthRNGSvc > m_rngSvc
Gaudi::Property< int > m_BCSpacing
Gaudi::Property< int > m_skippedHSEvents
setEventNumber setTimeStamp bcid
Class describing the basic event information.
ServiceHandle< ISkipEventIdxSvc > m_skipEventIdxSvc
std::uint64_t hash64(const void *data, std::size_t size)
Passthrough to XXH3_64bits.
@ Signal
The signal event.
DataObjIDColl m_extendedExtraObjects
Gaudi::Property< float > m_fracHighPt
#define ATH_MSG_WARNING(x)
void setRunNumber(uint32_t value)
Set the current event's run number.
ServiceHandle< IMinbiasSvc > m_cavernMBSvc
void calculateHash(uuid_t &hash) const
Calculate the hash.
T * get(TKey *tobj)
get a TObject* from a TKey* (why can't a TObject be a TKey?)
SG::VarHandleKey & vhKey()
Return a non-const reference to the HandleKey.
StatusCode get_ei(StoreGateSvc &sg, std::unique_ptr< const xAOD::EventInfo > &ei, std::unique_ptr< xAOD::EventAuxInfo > &eiAux, bool pileup=false) const
AthAlgorithm()
Default constructor:
ToolHandleArray< IPileUpTool > m_puTools
void setLumiBlock(uint32_t value)
Set the current event's luminosity block number.
const std::vector< SubEvent > & subEvents() const
Get the pileup events that were used in the simulation.
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>
Class describing the properties of one pileup sub-event.
xAOD::EventInfo * addSubEvent(xAOD::EventInfo *targetEv, const xAOD::EventInfo::SubEvent &subev, xAOD::EventInfoContainer *eiContainer, const std::string &eiContKey, StoreGateSvc *subev_store=nullptr)
SG::WriteHandleKey< xAOD::EventInfo > m_evtInfoKey