ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Simulation
BeamEffects
src
VertexBeamCondPositioner.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef BEAMEFFECTS_VERTEXBEAMCONPOSITIONER_H
6
#define BEAMEFFECTS_VERTEXBEAMCONPOSITIONER_H 1
7
8
// STL includes
9
#include <string>
10
#include <utility>
11
// FrameWork includes
12
#include "GaudiKernel/ServiceHandle.h"
13
#include "
AthenaBaseComps/AthAlgTool.h
"
14
#include "
AthenaKernel/IAthRNGSvc.h
"
15
#include "
CxxUtils/checker_macros.h
"
16
#include "
HepMC_Interfaces/ILorentzVectorGenerator.h
"
17
#include "
BeamSpotConditionsData/BeamSpotData.h
"
18
namespace
ATHRNG
{
19
class
RNGWrapper
;
20
}
21
22
namespace
Simulation
{
23
33
class
VertexBeamCondPositioner
:
public
extends<AthAlgTool, ILorentzVectorGenerator> {
34
35
public
:
36
38
VertexBeamCondPositioner
(
const
std::string& t,
const
std::string& n,
const
IInterface* p );
39
41
~VertexBeamCondPositioner
() =
default
;
42
44
StatusCode
initialize
() override final;
45
StatusCode
finalize
() override final;
46
48
CLHEP
::HepLorentzVector *
generate
(
const
EventContext& ctx)
const
override final;
49
50
private
:
51
52
SG
::ReadCondHandleKey<
InDet
::BeamSpotData>
m_beamSpotKey
{
this
,
"BeamSpotKey"
,
"BeamSpotData"
,
"SG key for beam spot"
};
53
ServiceHandle<IAthRNGSvc>
m_rndGenSvc
{
this
,
"RandomSvc"
,
"AthRNGSvc"
};
54
ATHRNG::RNGWrapper
* m_randomEngine
ATLAS_THREAD_SAFE
{};
55
56
Gaudi::Property<std::string>
m_randomEngineName
{
this
,
"RandomStream"
,
"VERTEX"
};
57
Gaudi::Property<bool>
m_timeSmearing
{
this
,
"SimpleTimeSmearing"
,
false
};
58
Gaudi::Property<float>
m_timeWidth
{
this
,
"TimeWidth"
, 0.};
59
60
61
};
62
63
}
64
65
#endif
//> !BEAMEFFECTS_VERTEXBEAMCONPOSITIONER_H
AthAlgTool.h
BeamSpotData.h
IAthRNGSvc.h
ILorentzVectorGenerator.h
checker_macros.h
Define macros for attributes used to control the static checker.
ATHRNG::RNGWrapper
A wrapper class for event-slot-local random engines.
Definition
RNGWrapper.h:56
ServiceHandle
Definition
ClusterMakerTool.h:36
Simulation::VertexBeamCondPositioner::m_timeSmearing
Gaudi::Property< bool > m_timeSmearing
Do time smearing.
Definition
VertexBeamCondPositioner.h:57
Simulation::VertexBeamCondPositioner::initialize
StatusCode initialize() override final
Athena algtool's Hooks.
Definition
VertexBeamCondPositioner.cxx:33
Simulation::VertexBeamCondPositioner::VertexBeamCondPositioner
VertexBeamCondPositioner(const std::string &t, const std::string &n, const IInterface *p)
Constructor with parameters.
Definition
VertexBeamCondPositioner.cxx:25
Simulation::VertexBeamCondPositioner::ATLAS_THREAD_SAFE
ATHRNG::RNGWrapper *m_randomEngine ATLAS_THREAD_SAFE
Slot-local RNG.
Definition
VertexBeamCondPositioner.h:54
Simulation::VertexBeamCondPositioner::m_rndGenSvc
ServiceHandle< IAthRNGSvc > m_rndGenSvc
Definition
VertexBeamCondPositioner.h:53
Simulation::VertexBeamCondPositioner::finalize
StatusCode finalize() override final
Athena algtool's Hooks.
Definition
VertexBeamCondPositioner.cxx:50
Simulation::VertexBeamCondPositioner::m_randomEngineName
Gaudi::Property< std::string > m_randomEngineName
Name of the random number stream.
Definition
VertexBeamCondPositioner.h:56
Simulation::VertexBeamCondPositioner::m_timeWidth
Gaudi::Property< float > m_timeWidth
Width of time for smearing.
Definition
VertexBeamCondPositioner.h:58
Simulation::VertexBeamCondPositioner::m_beamSpotKey
SG::ReadCondHandleKey< InDet::BeamSpotData > m_beamSpotKey
Definition
VertexBeamCondPositioner.h:52
Simulation::VertexBeamCondPositioner::~VertexBeamCondPositioner
~VertexBeamCondPositioner()=default
Destructor.
const
ATHRNG
Definition
IAthRNGSvc.h:23
CLHEP
STD'S.
Definition
CaloNoiseCompCondAlg.h:57
InDet
Primary Vertex Finder.
Definition
VP1ErrorUtils.h:36
SG
Forward declaration.
Definition
CaloCellPacker_400_500.h:32
Simulation
Definition
BeamEffectsAlg.cxx:21
generate
Definition
generate.cxx:28
private
#define private
Definition
testRead.cxx:27
Generated on
for ATLAS Offline Software by
1.17.0