ATLAS Offline Software
IBeamIntensity.h
Go to the documentation of this file.
1 /* -*- C++ -*- */
2 
3 /*
4  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
5 */
6 
7 #ifndef PILEUPTOOLS_IBEAMINTENSITY_H
8 #define PILEUPTOOLS_IBEAMINTENSITY_H
9 
16 #include "GaudiKernel/IService.h"
17 class IBeamIntensity : virtual public IService {
18 public:
21  virtual float normFactor(int bunchXing) const = 0;
22 
25  virtual float largestElementInPattern() const = 0;
26 
29  virtual void selectT0(unsigned int run, unsigned long long event) =0;
30 
32  virtual unsigned int getCurrentT0BunchCrossing() const =0;
33 
35  virtual unsigned int getBeamPatternLength() const =0;
36 
39 };
40 #endif // PILEUPTOOLS_IBEAMINTENSITY_H
IBeamIntensity::largestElementInPattern
virtual float largestElementInPattern() const =0
the largest element in the beam intensity pattern.
IBeamIntensity::getBeamPatternLength
virtual unsigned int getBeamPatternLength() const =0
return the length of the beam pattern
IBeamIntensity::selectT0
virtual void selectT0(unsigned int run, unsigned long long event)=0
randomly select in which bunch the current t0 is wrto the beam intensity distribution.
IBeamIntensity::normFactor
virtual float normFactor(int bunchXing) const =0
a scale factor (average value 1.0) for the beam intensity at a given xing.
event
POOL::TEvent event(POOL::TEvent::kClassAccess)
IBeamIntensity::DeclareInterfaceID
DeclareInterfaceID(IBeamIntensity, 1, 0)
Creates the InterfaceID and interfaceID() method.
run
Definition: run.py:1
IBeamIntensity::getCurrentT0BunchCrossing
virtual unsigned int getCurrentT0BunchCrossing() const =0
return the bunch crossing selected to be the current t0 bunch crossing
IBeamIntensity
Definition: IBeamIntensity.h:17