Concrete implementation of the ITrackScoringTool pABC.
More...
#include <InDetCosmicScoringTool.h>
Concrete implementation of the ITrackScoringTool pABC.
Definition at line 27 of file InDetCosmicScoringTool.h.
◆ StoreGateSvc_t
◆ InDetCosmicScoringTool()
| InDet::InDetCosmicScoringTool::InDetCosmicScoringTool |
( |
const std::string & | t, |
|
|
const std::string & | n, |
|
|
const IInterface * | p ) |
◆ ~InDetCosmicScoringTool()
| virtual InDet::InDetCosmicScoringTool::~InDetCosmicScoringTool |
( |
| ) |
|
|
virtualdefault |
◆ declareGaudiProperty()
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition at line 156 of file AthCommonDataStore.h.
158 {
161 hndl.documentation());
162
163 }
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T, V, H > &t)
◆ declareProperty()
Definition at line 145 of file AthCommonDataStore.h.
145 {
148 }
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T, V, H > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>
◆ detStore()
◆ evtStore()
◆ extraDeps_update_handler()
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
◆ inputHandles()
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.
◆ interfaceID()
| const InterfaceID & Trk::ITrackScoringTool::interfaceID |
( |
| ) |
|
|
inlinestaticinherited |
◆ msg()
◆ msgLvl()
| bool AthCommonMsg< AlgTool >::msgLvl |
( |
const MSG::Level | lvl | ) |
const |
|
inlineinherited |
◆ outputHandles()
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.
◆ passBasicSelections()
| bool InDet::InDetCosmicScoringTool::passBasicSelections |
( |
const Trk::Track & | track | ) |
const |
|
overridevirtual |
check track selections independent from TrackSummary
Implements Trk::ITrackScoringTool.
Definition at line 24 of file InDetCosmicScoringTool.cxx.
25{
29 return false;
30 }
31 return true;
32}
ParametersBase< TrackParametersDim, Charged > TrackParameters
◆ renounce()
Definition at line 380 of file AthCommonDataStore.h.
381 {
384 }
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)
◆ renounceArray()
◆ score()
◆ simpleScore()
create a score based on how good the passed TrackSummary is
Implements Trk::ITrackScoringTool.
Definition at line 47 of file InDetCosmicScoringTool.cxx.
48{
49
50 if (
msgLvl(MSG::VERBOSE))
msg(MSG::VERBOSE) <<
"Summary for track: " << trackSummary <<
endmsg;
51
52 if (!
track.fitQuality()){
53 msg(MSG::WARNING) <<
"No fit quality! Track info=" <<
track.info().dumpInfo() <<
endmsg;
55 }
56 else {
60
61 int nWeightedClusters = 2 * pixelhits + scthits;
62
63 if (
msgLvl(MSG::VERBOSE))
msg(MSG::VERBOSE) <<
"pixelhits: " << pixelhits <<
"; scthits: " << scthits
64 <<
"; trthits: " << trthits <<
"; nWeightedClusters: " << nWeightedClusters <<
endmsg;
65
67
68 int tubehits=0;
69 for (
const auto *i : *
track.measurementsOnTrack()){
70 if (dynamic_cast<const InDet::TRT_DriftCircleOnTrack*>(i)){
71 double error=sqrt(
i->localCovariance()(0,0));
72 if (error>1) tubehits++;
73
74
75 }
76 }
77 int hitscore = 0;
79 else hitscore = 10 * (pixelhits + scthits) + trthits;
80
81 double fitscore = 0;
82 if (
track.fitQuality()->numberDoF() > 0) fitscore = 0.0001*
track.fitQuality()->chiSquared()
83 /
track.fitQuality()->numberDoF();
84
85 if (
msgLvl(MSG::VERBOSE))
msg(MSG::VERBOSE) <<
"track score: " << hitscore - 0.25*tubehits - fitscore <<
endmsg;
87
88 }
90 }
91}
bool msgLvl(const MSG::Level lvl) const
@ numberOfSCTHits
number of SCT holes
@ numberOfPixelHits
number of pixel layers on track with absence of hits
@ numberOfTRTHits
number of TRT outliers
◆ sysInitialize()
◆ sysStart()
Handle START transition.
We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.
◆ updateVHKA()
Definition at line 308 of file AthCommonDataStore.h.
308 {
309
310
313 for (
auto k :
keys) {
315 }
316 }
317 }
std::vector< SG::VarHandleKeyArray * > m_vhka
◆ m_detStore
◆ m_evtStore
◆ m_maxZImp
| DoubleProperty InDet::InDetCosmicScoringTool::m_maxZImp {this, "maxZImp", 10000., "maximal z impact parameter cut"} |
|
private |
◆ m_minTRTHits
| IntegerProperty InDet::InDetCosmicScoringTool::m_minTRTHits {this, "minTRTHits", 0} |
|
private |
◆ m_nWeightedClustersMin
| IntegerProperty InDet::InDetCosmicScoringTool::m_nWeightedClustersMin {this, "nWeightedClustersMin", 0} |
|
private |
◆ m_varHandleArraysDeclared
◆ m_vhka
The documentation for this class was generated from the following files: