ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
ForwardDetectors
LUCID
LUCID_Digitization
src
LUCID_PileUpTool.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef LUCID_DIGITIZATION_TOOL_H
6
#define LUCID_DIGITIZATION_TOOL_H
7
8
#include "
PileUpTools/PileUpToolBase.h
"
9
10
#include "
LUCID_DigitizationToolBox.h
"
11
12
#include "
LUCID_SimEvent/LUCID_SimHitCollection.h
"
13
#include "
LUCID_RawEvent/LUCID_DigitContainer.h
"
14
15
#include "
xAODEventInfo/EventInfo.h
"
// SubEventIterator
16
#include "
xAODEventInfo/EventAuxInfo.h
"
// SubEventIterator
17
18
#include "
AthenaKernel/IAthRNGSvc.h
"
19
#include "
PileUpTools/PileUpMergeSvc.h
"
20
21
#include "Gaudi/Property.h"
22
#include "GaudiKernel/ServiceHandle.h"
23
24
#include <vector>
25
#include <utility>
/* pair */
26
27
namespace
CLHEP
{
28
class
HepRandomEngine;
29
}
30
31
class
LUCID_PileUpTool
:
public
PileUpToolBase
,
public
LUCID_DigitizationToolBox
{
32
33
public
:
34
35
LUCID_PileUpTool
(
const
std::string&
type
,
36
const
std::string& name,
37
const
IInterface* parent);
38
39
virtual
StatusCode
initialize
()
override
final
;
40
virtual
StatusCode
finalize
()
override
final
;
41
43
virtual
StatusCode
prepareEvent
(
const
EventContext& ctx,
const
unsigned
int
nInputEvents)
override
final
;
44
46
virtual
StatusCode
processBunchXing
(
int
bunchXing,
47
SubEventIterator
bSubEvents,
48
SubEventIterator
eSubEvents)
override
final
;
51
// virtual bool toProcess(int bunchXing) const override final;
52
54
virtual
StatusCode
mergeEvent
(
const
EventContext& ctx)
override
final
;
55
57
virtual
StatusCode
processAllSubEvents
(
const
EventContext& ctx)
override
final
;
58
59
private
:
60
61
ServiceHandle<PileUpMergeSvc>
m_mergeSvc
{
this
,
"mergeSvc"
,
"PileUpMergeSvc"
,
""
};
62
ServiceHandle<IAthRNGSvc>
m_randomSvc
{
this
,
"RndmSvc"
,
"AthRNGSvc"
,
""
};
63
Gaudi::Property<std::string>
m_randomStreamName
{
this
,
"RandomStreamName"
,
"LUCIDRndEng"
,
""
};
64
65
std::string
m_dataObjectName
;
66
std::string
m_SimHitCollectionName
;
67
std::string
m_digitsContainerName
;
68
std::string
m_key_digitCnt
;
69
70
LUCID_SimHitCollection
*
m_mergedhitList
{};
71
};
72
73
#endif
EventAuxInfo.h
IAthRNGSvc.h
SubEventIterator
std::vector< xAOD::EventInfo::SubEvent >::const_iterator SubEventIterator
Definition
IPileUpTool.h:22
LUCID_DigitContainer.h
LUCID_DigitizationToolBox.h
LUCID_SimHitCollection.h
LUCID_SimHitCollection
AtlasHitsVector< LUCID_SimHit > LUCID_SimHitCollection
Definition
LUCID_SimHitCollection.h:12
PileUpMergeSvc.h
the preferred mechanism to access information from the different event stores in a pileup job.
PileUpToolBase.h
helper base class IPileUpTool::toProcess().
LUCID_DigitizationToolBox::LUCID_DigitizationToolBox
LUCID_DigitizationToolBox()
Definition
LUCID_DigitizationToolBox.cxx:19
LUCID_PileUpTool::LUCID_PileUpTool
LUCID_PileUpTool(const std::string &type, const std::string &name, const IInterface *parent)
Definition
LUCID_PileUpTool.cxx:17
LUCID_PileUpTool::initialize
virtual StatusCode initialize() override final
Definition
LUCID_PileUpTool.cxx:72
LUCID_PileUpTool::m_randomSvc
ServiceHandle< IAthRNGSvc > m_randomSvc
Definition
LUCID_PileUpTool.h:62
LUCID_PileUpTool::m_mergeSvc
ServiceHandle< PileUpMergeSvc > m_mergeSvc
Definition
LUCID_PileUpTool.h:61
LUCID_PileUpTool::mergeEvent
virtual StatusCode mergeEvent(const EventContext &ctx) override final
return false if not interested in certain xing times (in ns) implemented by default in PileUpToolBase...
Definition
LUCID_PileUpTool.cxx:157
LUCID_PileUpTool::m_digitsContainerName
std::string m_digitsContainerName
Definition
LUCID_PileUpTool.h:67
LUCID_PileUpTool::m_randomStreamName
Gaudi::Property< std::string > m_randomStreamName
Definition
LUCID_PileUpTool.h:63
LUCID_PileUpTool::m_mergedhitList
LUCID_SimHitCollection * m_mergedhitList
Definition
LUCID_PileUpTool.h:70
LUCID_PileUpTool::processAllSubEvents
virtual StatusCode processAllSubEvents(const EventContext &ctx) override final
perform the digitization - used by LUCID_DigiTop::execute
Definition
LUCID_PileUpTool.cxx:169
LUCID_PileUpTool::processBunchXing
virtual StatusCode processBunchXing(int bunchXing, SubEventIterator bSubEvents, SubEventIterator eSubEvents) override final
called for each active bunch-crossing to process current SubEvents bunchXing is in ns
Definition
LUCID_PileUpTool.cxx:116
LUCID_PileUpTool::finalize
virtual StatusCode finalize() override final
Definition
LUCID_PileUpTool.cxx:211
LUCID_PileUpTool::m_key_digitCnt
std::string m_key_digitCnt
Definition
LUCID_PileUpTool.h:68
LUCID_PileUpTool::m_dataObjectName
std::string m_dataObjectName
Definition
LUCID_PileUpTool.h:65
LUCID_PileUpTool::prepareEvent
virtual StatusCode prepareEvent(const EventContext &ctx, const unsigned int nInputEvents) override final
called before the subevts loop. Not (necessarily) able to access SubEvents
Definition
LUCID_PileUpTool.cxx:103
LUCID_PileUpTool::m_SimHitCollectionName
std::string m_SimHitCollectionName
Definition
LUCID_PileUpTool.h:66
PileUpToolBase::PileUpToolBase
PileUpToolBase(const std::string &type, const std::string &name, const IInterface *parent)
Definition
PileUpToolBase.cxx:7
ServiceHandle
Definition
ClusterMakerTool.h:36
CLHEP
STD'S.
Definition
CaloNoiseCompCondAlg.h:57
type
EventInfo.h
Generated on
for ATLAS Offline Software by
1.17.0