an algorithm to merge MC track record collTool in the overlay store
More...
#include <MergeTrackRecordCollTool.h>
|
| | MergeTrackRecordCollTool (const std::string &type, const std::string &name, const IInterface *parent) |
| virtual StatusCode | initialize () override final |
| | Initialize tool.
|
| virtual StatusCode | prepareEvent (const EventContext &ctx, unsigned int nInputEvents) override final |
| | called before the subevts loop.
|
| virtual StatusCode | mergeEvent (const EventContext &ctx) override final |
| | called at the end of the subevts loop.
|
| 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
|
| virtual bool | toProcess (int bunchXing) const override final |
| | return false if not interested in certain xing times (in ns) implemented by default in PileUpToolBase as FirstXing<=bunchXing<=LastXing
|
| virtual StatusCode | processAllSubEvents (const EventContext &ctx) override final |
| | Propagate the TrackRecordCollections to the output StoreGate.
|
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 24 of file MergeTrackRecordCollTool.h.
◆ MergeTrackRecordCollTool()
| MergeTrackRecordCollTool::MergeTrackRecordCollTool |
( |
const std::string & | type, |
|
|
const std::string & | name, |
|
|
const IInterface * | parent ) |
◆ filterPassed()
| virtual bool PileUpToolBase::filterPassed |
( |
| ) |
const |
|
inlineoverridevirtualinherited |
◆ initialize()
| StatusCode MergeTrackRecordCollTool::initialize |
( |
| ) |
|
|
finaloverridevirtual |
◆ mergeEvent()
| StatusCode MergeTrackRecordCollTool::mergeEvent |
( |
const EventContext & | ctx | ) |
|
|
finaloverridevirtual |
called at the end of the subevts loop.
Not (necessarily) able to access SubEvents
Definition at line 68 of file MergeTrackRecordCollTool.cxx.
69{
70
71 return StatusCode::SUCCESS;
72}
◆ prepareEvent()
| StatusCode MergeTrackRecordCollTool::prepareEvent |
( |
const EventContext & | ctx, |
|
|
unsigned int | nInputEvents ) |
|
finaloverridevirtual |
called before the subevts loop.
Not (necessarily) able to access SubEvents
Definition at line 24 of file MergeTrackRecordCollTool.cxx.
25{
27 ATH_MSG_DEBUG(
"prepareEvent: there are " << nInputEvents <<
" subevents in this event.");
29 return StatusCode::SUCCESS;
30}
◆ processAllSubEvents()
| StatusCode MergeTrackRecordCollTool::processAllSubEvents |
( |
const EventContext & | ctx | ) |
|
|
finaloverridevirtual |
Propagate the TrackRecordCollections to the output StoreGate.
Reimplemented from PileUpToolBase.
Definition at line 81 of file MergeTrackRecordCollTool.cxx.
82{
84
86 TimedTruthList truthList;
88 if (truthList.begin() != truthList.end()) {
89
91
96 return StatusCode::FAILURE;
97 }
98
99 for (const auto& trcit : oldColl) {
101 }
102
103 ATH_MSG_DEBUG (
"processAllSubEvents: copied original event TrackRecordCollection" );
104 }
105 else {
106 ATH_MSG_ERROR (
"processAllSubEvents: TimedTruthList is empty" );
107 }
108 }
109 else {
110 ATH_MSG_ERROR (
"processAllSubEvents: Can not find TimedTruthList" );
111 }
112 return StatusCode::SUCCESS;
113}
#define ATH_MSG_VERBOSE(x)
AtlasHitsVector< TrackRecord > TrackRecordCollection
std::list< value_t > type
type of the collection of timed data object
◆ processBunchXing()
called for each active bunch-crossing to process current SubEvents bunchXing is in ns
Reimplemented from PileUpToolBase.
Definition at line 32 of file MergeTrackRecordCollTool.cxx.
35{
37
39 if (bSubEvents != eSubEvents) {
42 bunchXing, bSubEvents).isSuccess()) {
47 return StatusCode::FAILURE;
48 }
49
50 for(const auto& trcit : *oldColl) {
52 }
53 ATH_MSG_DEBUG(
"processBunchXing: copied original event TrackRecordCollection" );
55 }
56 else {
57 ATH_MSG_ERROR (
"processBunchXing: TimedTruthList is empty" );
58 }
59 }
60 else {
61 ATH_MSG_ERROR (
"processBunchXing: Can not find TimedTruthList" );
62 }
63 }
64
65 return StatusCode::SUCCESS;
66}
◆ resetFilter()
| virtual void PileUpToolBase::resetFilter |
( |
| ) |
|
|
inlineoverridevirtualinherited |
◆ toProcess()
| bool MergeTrackRecordCollTool::toProcess |
( |
int | bunchXing | ) |
const |
|
finaloverridevirtual |
◆ m_filterPassed
| bool PileUpToolBase::m_filterPassed {true} |
|
protectedinherited |
◆ m_firstSubEvent
| bool MergeTrackRecordCollTool::m_firstSubEvent {true} |
|
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.
54 {this, "FirstXing", -999,
55 "First bunch-crossing in which det is live"};
◆ 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.
56 {this, "LastXing", 999,
57 "Last bunch-crossing in which det is live"};
◆ m_outputKey
◆ m_pMergeSvc
◆ m_trRecCollKey
| StringProperty MergeTrackRecordCollTool::m_trRecCollKey {this, "TrackRecordCollKey", "MuonEntryLayer", ""} |
|
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.
58 {this, "VetoPileUpTruthLinks", true,
59 "Ignore links to suppressed pile-up truth"};
The documentation for this class was generated from the following files: