ATLAS Offline Software
IMinbiasSvc.h
Go to the documentation of this file.
1 /* -*- C++ -*- */
2 /*
3  Copyright (C) 2022 CERN for the benefit of the ATLAS collaboration
4 */
5 
6 #ifndef IMINBIASSVC_H
7 #define IMINBIASSVC_H
8 
9 #include <cstdint>
10 #include <vector>
11 
12 #include "GaudiKernel/IService.h"
13 #include "StoreGate/StoreGateSvc.h"
14 
15 class IMinbiasSvc : virtual public IService {
16  public:
18  const EventContext& ctx) = 0;
19  virtual StoreGateSvc* getMinbias(
21  const EventContext& ctx,
22  std::uint64_t mb_id) = 0;
23  virtual std::size_t getNumForBunch(
24  const EventContext& ctx,
25  int bunch) const = 0;
26 
28  virtual std::int64_t get_hs_id(const EventContext& ctx) const = 0;
30  const EventContext& ctx) = 0;
31 
35 };
36 
37 #endif // IMINBIASSVC_H
IMinbiasSvc::getNumForBunch
virtual std::size_t getNumForBunch(const EventContext &ctx, int bunch) const =0
Get a minbias event.
StoreGateSvc
The Athena Transient Store API.
Definition: StoreGateSvc.h:128
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
IMinbiasSvc::beginHardScatter
virtual StatusCode beginHardScatter(const EventContext &ctx)=0
IMinbiasSvc::DeclareInterfaceID
DeclareInterfaceID(IMinbiasSvc, 1, 1)
Tell IMinbiasSvc we're done with a hard scatter.
xAOD::uint64_t
uint64_t
Definition: EventInfo_v1.cxx:123
IMinbiasSvc::getMinbias
virtual StoreGateSvc * getMinbias(const EventContext &ctx, std::uint64_t mb_id)=0
Tell IMinbiasSvc we're starting a hard scatter.
IMinbiasSvc::endHardScatter
virtual StatusCode endHardScatter(const EventContext &ctx)=0
IMinbiasSvc
Definition: IMinbiasSvc.h:15
IMinbiasSvc::get_hs_id
virtual std::int64_t get_hs_id(const EventContext &ctx) const =0
Return number of minbias events to use for a specific bunch crossing.
StoreGateSvc.h