an algorithm to merge MC track record collTool in the overlay store
More...
#include <MergeGenericMuonSimHitCollTool.h>
an algorithm to merge MC track record collTool in the overlay store
$Id:
- Author
- DCost.nosp@m.anzo.nosp@m.@bnl..nosp@m.gov (from Paolo's MergeMcEventCollTool)
Definition at line 25 of file MergeGenericMuonSimHitCollTool.h.
◆ MergeGenericMuonSimHitCollTool()
MergeGenericMuonSimHitCollTool::MergeGenericMuonSimHitCollTool |
( |
const std::string & |
type, |
|
|
const std::string & |
name, |
|
|
const IInterface * |
parent |
|
) |
| |
◆ filterPassed()
virtual bool PileUpToolBase::filterPassed |
( |
| ) |
const |
|
inlineoverridevirtualinherited |
◆ initialize()
StatusCode MergeGenericMuonSimHitCollTool::initialize |
( |
| ) |
|
|
finaloverridevirtual |
◆ mergeEvent()
StatusCode MergeGenericMuonSimHitCollTool::mergeEvent |
( |
const EventContext & |
ctx | ) |
|
|
finaloverridevirtual |
called at the end of the subevts loop.
Not (necessarily) able to access SubEvents
Definition at line 77 of file MergeGenericMuonSimHitCollTool.cxx.
81 ATH_MSG_ERROR (
" Cannot record new GenericMuonSimHitCollection in overlayed event " );
82 return StatusCode::FAILURE;
85 return StatusCode::SUCCESS;
◆ prepareEvent()
StatusCode MergeGenericMuonSimHitCollTool::prepareEvent |
( |
const EventContext & |
ctx, |
|
|
unsigned int |
nInputEvents |
|
) |
| |
|
finaloverridevirtual |
called before the subevts loop.
Not (necessarily) able to access SubEvents
Definition at line 34 of file MergeGenericMuonSimHitCollTool.cxx.
36 ATH_MSG_DEBUG(
"prepareEvent: there are " << nInputEvents <<
" subevents in this event.");
43 return StatusCode::SUCCESS;
◆ processAllSubEvents() [1/2]
StatusCode MergeGenericMuonSimHitCollTool::processAllSubEvents |
( |
const EventContext & |
ctx | ) |
|
|
finaloverridevirtual |
return false if not interested in certain xing times (in ns) implemented by default in PileUpToolBase as FirstXing<=bunchXing<=LastXing
Merge the GenericMuonSimHitColl
Reimplemented from PileUpToolBase.
Definition at line 88 of file MergeGenericMuonSimHitCollTool.cxx.
93 ATH_MSG_FATAL (
"processAllSubEvents: Could not find PileUpMergeSvc" );
94 return StatusCode::FAILURE;
106 if (!simHitList.empty()) {
108 SimHitList::const_iterator simHitColl_iter(simHitList.begin());
109 const SimHitList::const_iterator endOfSimHitColls(simHitList.end());
110 while (simHitColl_iter!=endOfSimHitColls) {
111 const double timeOfBCID(
static_cast<double>((simHitColl_iter)->
first.time()));
117 ATH_MSG_ERROR(
" Cannot record new GenericMuonSimHitCollection in overlayed event ");
119 return StatusCode::FAILURE;
123 return StatusCode::SUCCESS;
◆ processAllSubEvents() [2/2]
virtual StatusCode IPileUpTool::processAllSubEvents |
|
inherited |
dummy implementation to allow compilation while all Digitization packages are migrated to use this new interface.
◆ processBunchXing()
called for each active bunch-crossing to process current SubEvents bunchXing is in ns
Reimplemented from PileUpToolBase.
Definition at line 45 of file MergeGenericMuonSimHitCollTool.cxx.
53 while (iEvt != eSubEvents) {
59 bunchXing, iEvt).isSuccess()){
61 return StatusCode::FAILURE;
68 const double timeOfBCID(
static_cast<double>(iEvt->time()));
◆ processGenericMuonSimHitColl()
share code between two approaches
Definition at line 126 of file MergeGenericMuonSimHitCollTool.cxx.
129 const int idHit = simhitIter->GenericId();
130 outputCollection->Emplace(idHit, simhitIter->globalTime()+timeOfBCID, simhitIter->globalpreTime()+timeOfBCID, simhitIter->globalPosition(), simhitIter->localPosition(), simhitIter->globalPrePosition(),simhitIter->localPrePosition(), simhitIter->particleEncoding(),simhitIter->kineticEnergy(), simhitIter->globalDirection(),simhitIter->depositEnergy(), simhitIter->StepLength(),simhitIter->truthBarcode() );
◆ resetFilter()
virtual void PileUpToolBase::resetFilter |
( |
| ) |
|
|
inlineoverridevirtualinherited |
◆ toProcess()
virtual bool PileUpToolBase::toProcess |
( |
int |
bunchXing | ) |
const |
|
inlineoverridevirtualinherited |
◆ m_filterPassed
bool PileUpToolBase::m_filterPassed {true} |
|
protectedinherited |
◆ m_firstSubEvent
bool MergeGenericMuonSimHitCollTool::m_firstSubEvent |
|
private |
◆ m_firstXing
Gaudi::Property<int> PileUpToolBase::m_firstXing |
|
protectedinherited |
Initial value:{this, "FirstXing", -999,
"First bunch-crossing in which det is live"}
Definition at line 54 of file PileUpToolBase.h.
◆ m_lastXing
Gaudi::Property<int> PileUpToolBase::m_lastXing |
|
protectedinherited |
Initial value:{this, "LastXing", 999,
"Last bunch-crossing in which det is live"}
Definition at line 56 of file PileUpToolBase.h.
◆ m_outputContainers
◆ m_pMergeSvc
◆ m_SimHitContainerNames
std::vector<std::string> MergeGenericMuonSimHitCollTool::m_SimHitContainerNames |
|
private |
◆ m_SimHitContainerNamesProp
StringArrayProperty MergeGenericMuonSimHitCollTool::m_SimHitContainerNamesProp |
|
private |
◆ m_vetoPileUpTruthLinks
Gaudi::Property<int> PileUpToolBase::m_vetoPileUpTruthLinks |
|
protectedinherited |
Initial value:{this, "VetoPileUpTruthLinks", true,
"Ignore links to suppressed pile-up truth"}
Definition at line 58 of file PileUpToolBase.h.
The documentation for this class was generated from the following files: