![]() |
ATLAS Offline Software
|
class to manipulate MuPatCandidateBase objects More...
#include <MuPatCandidateTool.h>
Public Types | |
| using | MeasVec = std::vector<const Trk::MeasurementBase*> |
| typedef MeasVec::iterator | MeasIt |
| typedef MeasVec::const_iterator | MeasCit |
Public Member Functions | |
| MuPatCandidateTool (const std::string &, const std::string &, const IInterface *) | |
| default AlgTool constructor | |
| virtual | ~MuPatCandidateTool ()=default |
| destructor | |
| virtual StatusCode | initialize () override |
| initialize method, method taken from bass-class AlgTool | |
| bool | extendWithSegment (MuPatTrack &can, MuPatSegment &segInfo, std::unique_ptr< Trk::Track > &track) const |
| extend a track candidate with a segment | |
| std::unique_ptr< MuPatTrack > | createCandidate (MuPatSegment &segInfo, std::unique_ptr< Trk::Track > &track) const |
| create a track candidate from one segment | |
| std::unique_ptr< MuPatTrack > | createCandidate (MuPatSegment &segInfo1, MuPatSegment &segInfo2, std::unique_ptr< Trk::Track > &track) const |
| create a track candidate from two segments | |
| std::unique_ptr< MuPatTrack > | createCandidate (std::unique_ptr< Trk::Track > &track) const |
| create a track candidate from a track | |
| bool | updateTrack (MuPatTrack &candidate, std::unique_ptr< Trk::Track > &track) const |
| set the new track in the candidate, and update candidate contents. | |
| bool | recalculateCandidateSegmentContent (MuPatTrack &candidate) const |
| recalculate the chamber indices on the candidate and reset them. | |
| std::unique_ptr< MuPatSegment > | createSegInfo (const EventContext &ctx, const MuonSegment &segment) const |
| create a MuPatSegment object from a segment | |
| std::set< const MuonGM::MuonReadoutElement * > | readoutElements (const MuPatCandidateBase &entry) const |
| get list of the readout elements of the hits on the entry | |
| std::string | print (const MuPatSegment &segment, int level=0) const |
| print the measurements on the track to string | |
| std::string | print (const std::vector< MuPatSegment * > &segments, int level=0) const |
| std::string | print (const MuPatCandidateBase &candidate, int level=0) const |
| std::string | print (const MuPatTrack &track, int level=0) const |
| std::string | print (const std::vector< std::unique_ptr< MuPatTrack > > &tracks, int level=0) const |
| ServiceHandle< StoreGateSvc > & | evtStore () |
The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc. | |
| const ServiceHandle< StoreGateSvc > & | detStore () const |
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc. | |
| virtual StatusCode | sysInitialize () override |
| Perform system initialization for an algorithm. | |
| virtual StatusCode | sysStart () override |
| Handle START transition. | |
| virtual std::vector< Gaudi::DataHandle * > | inputHandles () const override |
| Return this algorithm's input handles. | |
| virtual std::vector< Gaudi::DataHandle * > | outputHandles () const override |
| Return this algorithm's output handles. | |
| Gaudi::Details::PropertyBase & | declareProperty (Gaudi::Property< T, V, H > &t) |
| void | updateVHKA (Gaudi::Details::PropertyBase &) |
| MsgStream & | msg () const |
| bool | msgLvl (const MSG::Level lvl) const |
Static Public Member Functions | |
| static const InterfaceID & | interfaceID () |
| access to tool interface | |
| static std::unique_ptr< MuPatTrack > | copyCandidate (MuPatTrack *canIn) |
| copy a candidate without copying the track (lazy pointer copy) | |
Protected Member Functions | |
| void | renounceArray (SG::VarHandleKeyArray &handlesArray) |
| remove all handles from I/O resolution | |
| std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > | renounce (T &h) |
| void | extraDeps_update_handler (Gaudi::Details::PropertyBase &ExtraDeps) |
| Add StoreName to extra input/output deps as needed. | |
Private Types | |
| typedef ServiceHandle< StoreGateSvc > | StoreGateSvc_t |
Private Member Functions | |
| void | updateHits (MuPatCandidateBase &entry, const MeasVec &measurements, bool recreateMDT=false, bool recreateCSC=false, bool createComp=false) const |
| update hits for a MuPatCandidateBase | |
| void | addCluster (const Trk::MeasurementBase &meas, std::vector< const MuonClusterOnTrack * > &rots) const |
| extract MuonClusterOnTrack('s) from measurement | |
| void | createAndAddCompetingROTs (const std::vector< const MuonClusterOnTrack * > &rots, MeasVec &hits, MeasVec &allHits, MuPatCandidateBase &entry) const |
| create CompetingMuonClustersOnTracks from ROTs and add them to the MeasVec. | |
| Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T, V, H > &hndl, const SG::VarHandleKeyType &) |
| specialization for handling Gaudi::Property<SG::VarHandleKey> | |
Private Attributes | |
| ToolHandle< IMdtDriftCircleOnTrackCreator > | m_mdtRotCreator |
| ToolHandle< IMuonClusterOnTrackCreator > | m_cscRotCreator |
| ToolHandle< IMuonCompetingClustersOnTrackCreator > | m_compClusterCreator |
| ServiceHandle< Muon::IMuonIdHelperSvc > | m_idHelperSvc {this, "MuonIdHelperSvc", "Muon::MuonIdHelperSvc/MuonIdHelperSvc"} |
| ServiceHandle< IMuonEDMHelperSvc > | m_edmHelperSvc |
| PublicToolHandle< MuonEDMPrinterTool > | m_printer {this, "MuonPrinterTool", "Muon::MuonEDMPrinterTool/MuonEDMPrinterTool"} |
| ToolHandle< MuPatHitTool > | m_hitHandler {this, "HitTool", "Muon::MuPatHitTool/MuPatHitTool", "Tool to manipulate hit lists"} |
| ToolHandle< Muon::IMuonSegmentSelectionTool > | m_segmentSelector |
| Gaudi::Property< bool > | m_createCompetingROTsPhi {this, "CreateCompetingROTsPhi", false} |
| Gaudi::Property< bool > | m_createCompetingROTsEta {this, "CreateCompetingROTsEta", true} |
| Gaudi::Property< bool > | m_doMdtRecreation {this, "DoMdtRecreation", false} |
| Gaudi::Property< bool > | m_doCscRecreation {this, "DoCscRecreation", true} |
| StoreGateSvc_t | m_evtStore |
| Pointer to StoreGate (event store by default) | |
| StoreGateSvc_t | m_detStore |
| Pointer to StoreGate (detector store by default) | |
| std::vector< SG::VarHandleKeyArray * > | m_vhka |
| bool | m_varHandleArraysDeclared |
class to manipulate MuPatCandidateBase objects
Definition at line 49 of file MuPatCandidateTool.h.
| typedef MeasVec::const_iterator Muon::MuPatCandidateTool::MeasCit |
Definition at line 53 of file MuPatCandidateTool.h.
| typedef MeasVec::iterator Muon::MuPatCandidateTool::MeasIt |
Definition at line 52 of file MuPatCandidateTool.h.
| using Muon::MuPatCandidateTool::MeasVec = std::vector<const Trk::MeasurementBase*> |
Definition at line 51 of file MuPatCandidateTool.h.
|
privateinherited |
Definition at line 388 of file AthCommonDataStore.h.
| Muon::MuPatCandidateTool::MuPatCandidateTool | ( | const std::string & | t, |
| const std::string & | n, | ||
| const IInterface * | p ) |
default AlgTool constructor
Definition at line 34 of file MuPatCandidateTool.cxx.
|
virtualdefault |
destructor
|
private |
extract MuonClusterOnTrack('s) from measurement
Definition at line 283 of file MuPatCandidateTool.cxx.
|
static |
copy a candidate without copying the track (lazy pointer copy)
| [in] | can | the MuPatTrack to be copied |
| [out] | the | new candidate, ownership is passed to caller. The new candidate will not own the track (lazy pointer copy) |
Definition at line 95 of file MuPatCandidateTool.cxx.
|
private |
create CompetingMuonClustersOnTracks from ROTs and add them to the MeasVec.
NEVER pass mixed eta/phi hits!!
Definition at line 299 of file MuPatCandidateTool.cxx.
| std::unique_ptr< MuPatTrack > Muon::MuPatCandidateTool::createCandidate | ( | MuPatSegment & | segInfo, |
| std::unique_ptr< Trk::Track > & | track ) const |
create a track candidate from one segment
| [in] | seg1 | the first MuPatSegment to be added, ownership is NOT passed! |
| [in] | seg2 | the second MuPatSegment to be added, ownership is NOT passed! |
| [in] | track | the new track, ownership is passed to the candidate |
| [out] | the | new candidate, ownership is passed to caller |
Definition at line 101 of file MuPatCandidateTool.cxx.
| std::unique_ptr< MuPatTrack > Muon::MuPatCandidateTool::createCandidate | ( | MuPatSegment & | segInfo1, |
| MuPatSegment & | segInfo2, | ||
| std::unique_ptr< Trk::Track > & | track ) const |
create a track candidate from two segments
| [in] | seg1 | the first MuPatSegment to be added, ownership is NOT passed! |
| [in] | seg2 | the second MuPatSegment to be added, ownership is NOT passed! |
| [in] | track | the new track, ownership is passed to the candidate |
| [out] | the | new candidate, ownership is passed to caller |
Definition at line 113 of file MuPatCandidateTool.cxx.
| std::unique_ptr< MuPatTrack > Muon::MuPatCandidateTool::createCandidate | ( | std::unique_ptr< Trk::Track > & | track | ) | const |
create a track candidate from a track
| [in] | track | the new track, ownership is passed to the candidate |
| [out] | the | new candidate, ownership is passed to caller |
Definition at line 121 of file MuPatCandidateTool.cxx.
| std::unique_ptr< MuPatSegment > Muon::MuPatCandidateTool::createSegInfo | ( | const EventContext & | ctx, |
| const MuonSegment & | segment ) const |
create a MuPatSegment object from a segment
| [in] | segment | input segment |
| [out] | the | MuPatSegment object, ownership is passed to caller |
Definition at line 53 of file MuPatCandidateTool.cxx.
|
inlineprivateinherited |
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition at line 156 of file AthCommonDataStore.h.
|
inlineinherited |
Definition at line 145 of file AthCommonDataStore.h.
|
inlineinherited |
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
Definition at line 95 of file AthCommonDataStore.h.
|
inlineinherited |
The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.
Definition at line 85 of file AthCommonDataStore.h.
| bool Muon::MuPatCandidateTool::extendWithSegment | ( | MuPatTrack & | can, |
| MuPatSegment & | segInfo, | ||
| std::unique_ptr< Trk::Track > & | track ) const |
extend a track candidate with a segment
| [in] | can | the MuPatTrack to be extended |
| [in] | track | the new track, ownership is passed to the candidate |
| [in] | seg | the MuPatSegment to be added, ownership is NOT passed! |
| [out] | true | if any segment was removed from the track, false if not |
Definition at line 89 of file MuPatCandidateTool.cxx.
|
protectedinherited |
Add StoreName to extra input/output deps as needed.
use the logic of the VarHandleKey to parse the DataObjID keys supplied via the ExtraInputs and ExtraOuputs Properties to add the StoreName if it's not explicitly given
|
overridevirtual |
initialize method, method taken from bass-class AlgTool
Definition at line 39 of file MuPatCandidateTool.cxx.
|
overridevirtualinherited |
Return this algorithm's input handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
|
inlinestatic |
access to tool interface
Definition at line 66 of file MuPatCandidateTool.h.
|
inlineinherited |
Definition at line 24 of file AthCommonMsg.h.
|
inlineinherited |
Definition at line 30 of file AthCommonMsg.h.
|
overridevirtualinherited |
Return this algorithm's output handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
| std::string Muon::MuPatCandidateTool::print | ( | const MuPatCandidateBase & | candidate, |
| int | level = 0 ) const |
Definition at line 492 of file MuPatCandidateTool.cxx.
| std::string Muon::MuPatCandidateTool::print | ( | const MuPatSegment & | segment, |
| int | level = 0 ) const |
print the measurements on the track to string
This really belongs in MuonEDMPrinterTool in package MuonRecHelperTools. However, due to the tight tag collecting policy for release 15.5.0, this change is not likely to get accepted there. To be moved there as soon as release 16 is open
Definition at line 447 of file MuPatCandidateTool.cxx.
| std::string Muon::MuPatCandidateTool::print | ( | const MuPatTrack & | track, |
| int | level = 0 ) const |
Definition at line 470 of file MuPatCandidateTool.cxx.
| std::string Muon::MuPatCandidateTool::print | ( | const std::vector< MuPatSegment * > & | segments, |
| int | level = 0 ) const |
Definition at line 460 of file MuPatCandidateTool.cxx.
| std::string Muon::MuPatCandidateTool::print | ( | const std::vector< std::unique_ptr< MuPatTrack > > & | tracks, |
| int | level = 0 ) const |
Definition at line 482 of file MuPatCandidateTool.cxx.
| std::set< const MuonGM::MuonReadoutElement * > Muon::MuPatCandidateTool::readoutElements | ( | const MuPatCandidateBase & | entry | ) | const |
get list of the readout elements of the hits on the entry
Definition at line 420 of file MuPatCandidateTool.cxx.
| bool Muon::MuPatCandidateTool::recalculateCandidateSegmentContent | ( | MuPatTrack & | candidate | ) | const |
recalculate the chamber indices on the candidate and reset them.
Return whether segment has been removed.
Definition at line 371 of file MuPatCandidateTool.cxx.
|
inlineprotectedinherited |
Definition at line 380 of file AthCommonDataStore.h.
|
inlineprotectedinherited |
remove all handles from I/O resolution
Definition at line 364 of file AthCommonDataStore.h.
|
overridevirtualinherited |
Perform system initialization for an algorithm.
We override this to declare all the elements of handle key arrays at the end of initialization. See comments on updateVHKA.
Reimplemented in asg::AsgMetadataTool, AthCheckedComponent< AthAlgTool >, AthCheckedComponent<::AthAlgTool >, and DerivationFramework::CfAthAlgTool.
|
overridevirtualinherited |
Handle START transition.
We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.
|
private |
update hits for a MuPatCandidateBase
Definition at line 131 of file MuPatCandidateTool.cxx.
| bool Muon::MuPatCandidateTool::updateTrack | ( | MuPatTrack & | candidate, |
| std::unique_ptr< Trk::Track > & | track ) const |
set the new track in the candidate, and update candidate contents.
Candidate takes ownership of track. Returns whether segments have been removed compared to the pre-existing list of segments.
Definition at line 108 of file MuPatCandidateTool.cxx.
|
inlineinherited |
Definition at line 308 of file AthCommonDataStore.h.
|
private |
Definition at line 157 of file MuPatCandidateTool.h.
|
private |
Definition at line 169 of file MuPatCandidateTool.h.
|
private |
Definition at line 168 of file MuPatCandidateTool.h.
|
private |
Definition at line 155 of file MuPatCandidateTool.h.
|
privateinherited |
Pointer to StoreGate (detector store by default)
Definition at line 393 of file AthCommonDataStore.h.
|
private |
Definition at line 171 of file MuPatCandidateTool.h.
|
private |
Definition at line 170 of file MuPatCandidateTool.h.
|
private |
Definition at line 161 of file MuPatCandidateTool.h.
|
privateinherited |
Pointer to StoreGate (event store by default)
Definition at line 390 of file AthCommonDataStore.h.
|
private |
Definition at line 164 of file MuPatCandidateTool.h.
|
private |
Definition at line 160 of file MuPatCandidateTool.h.
|
private |
Definition at line 153 of file MuPatCandidateTool.h.
|
private |
Definition at line 163 of file MuPatCandidateTool.h.
|
private |
Definition at line 165 of file MuPatCandidateTool.h.
|
privateinherited |
Definition at line 399 of file AthCommonDataStore.h.
|
privateinherited |
Definition at line 398 of file AthCommonDataStore.h.