|
ATLAS Offline Software
|
#include <MSConstraintTracksProvider.h>
|
| MSConstraintTracksProvider (const std::string &type, const std::string &name, const IInterface *parent) |
|
virtual | ~MSConstraintTracksProvider () |
|
virtual StatusCode | initialize () |
|
virtual StatusCode | finalize () |
|
virtual StatusCode | trackCollection (const TrackCollection *&tracks) |
|
virtual void | printSummary () |
| Print statistical summary to logfile. More...
|
|
virtual void | setLogStream (std::ostream *os) |
| sets the output stream for the logfile More...
|
|
ServiceHandle< StoreGateSvc > & | evtStore () |
| The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
const ServiceHandle< StoreGateSvc > & | evtStore () const |
| The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
const ServiceHandle< StoreGateSvc > & | detStore () const |
| The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
virtual StatusCode | sysInitialize () override |
| Perform system initialization for an algorithm. More...
|
|
virtual StatusCode | sysStart () override |
| Handle START transition. More...
|
|
virtual std::vector< Gaudi::DataHandle * > | inputHandles () const override |
| Return this algorithm's input handles. More...
|
|
virtual std::vector< Gaudi::DataHandle * > | outputHandles () const override |
| Return this algorithm's output handles. More...
|
|
Gaudi::Details::PropertyBase & | declareProperty (Gaudi::Property< T > &t) |
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleKey &hndl, const std::string &doc, const SG::VarHandleKeyType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleBase &hndl, const std::string &doc, const SG::VarHandleType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleKeyArray &hndArr, const std::string &doc, const SG::VarHandleKeyArrayType &) |
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, T &property, const std::string &doc, const SG::NotHandleType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, T &property, const std::string &doc="none") |
| Declare a new Gaudi property. More...
|
|
void | updateVHKA (Gaudi::Details::PropertyBase &) |
|
MsgStream & | msg () const |
|
MsgStream & | msg (const MSG::Level lvl) const |
|
bool | msgLvl (const MSG::Level lvl) const |
|
◆ StoreGateSvc_t
◆ MSConstraintTracksProvider()
Trk::MSConstraintTracksProvider::MSConstraintTracksProvider |
( |
const std::string & |
type, |
|
|
const std::string & |
name, |
|
|
const IInterface * |
parent |
|
) |
| |
◆ ~MSConstraintTracksProvider()
Trk::MSConstraintTracksProvider::~MSConstraintTracksProvider |
( |
| ) |
|
|
virtualdefault |
◆ bookNtuple()
bool Trk::MSConstraintTracksProvider::bookNtuple |
( |
| ) |
|
|
private |
◆ combinedMuonSelection()
Definition at line 259 of file MSConstraintTracksProvider.cxx.
261 const Trk::Perigee* IDTrkMeasuredPerigee =
dynamic_cast<const Trk::Perigee*
>(& (
it->inDetTrackParticle()->definingParameters()));
262 if(!IDTrkMeasuredPerigee){
263 ATH_MSG_DEBUG(
"NO inDetTrackParticle or no IDTrkMeasuredPerigee");
267 const Trk::Perigee* METrkMeasuredPerigee =
dynamic_cast<const Trk::Perigee*
>(&(
it->muonExtrapolatedTrackParticle()->definingParameters()));
268 if(!METrkMeasuredPerigee){
269 ATH_MSG_DEBUG(
"NO muonExtrapolatedTrackParticle or no METrkMeasuredPerigee");
273 const double pt = fabs(
it->pt())/1000.;
274 const double eta = fabs(
it->eta());
279 (eta > 0.8 && eta < 1.2) ){
280 ATH_MSG_DEBUG(
" this combinedMuon not pass basic pt and eta cuts --- pt: "<<
pt <<
" eta: " << eta);
284 const int nPixHits =
it->numberOfPixelHits();
294 const double idQoverPatIP = IDTrkMeasuredPerigee->parameters()[
Trk::qOverP] * 1000.;
295 const double idz0atIP = IDTrkMeasuredPerigee->parameters()[
Trk::z0];
296 const double idd0atIP = IDTrkMeasuredPerigee->parameters()[
Trk::d0];
297 double ptIDatIP = 0.;
298 if ( idQoverPatIP != 0 ) ptIDatIP = fabs(1.0/idQoverPatIP)*
sin(IDTrkMeasuredPerigee->parameters()[
Trk::theta]);
309 ATH_MSG_DEBUG(
"this combined muon not pass ID cuts --- nPixHits: " << nPixHits <<
" nSCTHits: " <<
nSCTHits <<
310 "nTRTHits: " <<
nTRTHits <<
" idd0atIP: " << idd0atIP <<
" idz0atIP: " << idz0atIP <<
" ptIDatIP: " << ptIDatIP );
316 const int nMDTHits =
it->numberOfMDTHits();
317 const int nRPCPhiHits =
it->numberOfRPCPhiHits();
318 const int nTGCPhiHits =
it->numberOfTGCPhiHits();
320 const double msQoverPatIP = METrkMeasuredPerigee->parameters()[
Trk::qOverP] * 1000.;
321 const double msz0atIP = METrkMeasuredPerigee->parameters()[
Trk::z0];
322 const double msd0atIP = METrkMeasuredPerigee->parameters()[
Trk::d0];
324 double ptMSatIP = 0.;
325 if ( msQoverPatIP != 0 ) ptMSatIP = fabs(1.0/msQoverPatIP)*
sin(METrkMeasuredPerigee->parameters()[
Trk::theta]);
338 ATH_MSG_DEBUG(
"this combined muon not pass MS cuts --- nMDTHits: " << nMDTHits <<
" nRPCPhiHits: " << nRPCPhiHits <<
339 " nTGCPhiHits: " << nTGCPhiHits <<
" msd0atIP: " << msd0atIP <<
340 " msz0atIP: " << msz0atIP <<
" pMSatIP:" << ptMSatIP);
349 if (aTrackParticle) aTrack = aTrackParticle->
originalTrack();
351 if (aTrack && aTrack !=
it->inDetTrkTrack()) {
356 std::vector<const Muon::MuonSegment*> segments;
357 unsigned int nSeg =
it->numberOfSegments();
358 segments.reserve(nSeg);
359 for(
unsigned int si=0; si<nSeg; ++si ){
361 if( seg ) segments.push_back(seg);
367 const int sectors =
summary.sectors.size();
368 const int phiLayers =
summary.phiLayers.size();
369 const int stationLayers =
summary.stationLayers.size();
376 ATH_MSG_DEBUG(
"this combined muon not pass muonHitSummary cuts --- sectors: "<< sectors <<
" phiLayers: "<< phiLayers <<
" stationLayers: " << stationLayers);
381 m_pID =
it->inDetTrackParticle()->p();
382 m_pMS =
it->muonExtrapolatedTrackParticle()->p();
383 m_ptID =
it->inDetTrackParticle()->pt();
384 m_ptMS =
it->muonExtrapolatedTrackParticle()->pt();
385 m_charge =
it->inDetTrackParticle()->charge();
388 m_IDEta =
it->inDetTrackParticle()->eta();
390 m_IDPhi =
it->inDetTrackParticle()->phi();
◆ declareGaudiProperty() [1/4]
specialization for handling Gaudi::Property<SG::VarHandleKeyArray>
Definition at line 170 of file AthCommonDataStore.h.
175 hndl.documentation());
◆ declareGaudiProperty() [2/4]
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition at line 156 of file AthCommonDataStore.h.
161 hndl.documentation());
◆ declareGaudiProperty() [3/4]
specialization for handling Gaudi::Property<SG::VarHandleBase>
Definition at line 184 of file AthCommonDataStore.h.
189 hndl.documentation());
◆ declareGaudiProperty() [4/4]
◆ declareProperty() [1/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation string for the property. |
This is the version for types that derive from SG::VarHandleBase
. The property value object is put on the input and output lists as appropriate; then we forward to the base class.
Definition at line 245 of file AthCommonDataStore.h.
250 this->declare(hndl.
vhKey());
251 hndl.
vhKey().setOwner(
this);
253 return PBASE::declareProperty(
name,hndl,
doc);
◆ declareProperty() [2/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation string for the property. |
This is the version for types that derive from SG::VarHandleKey
. The property value object is put on the input and output lists as appropriate; then we forward to the base class.
Definition at line 221 of file AthCommonDataStore.h.
229 return PBASE::declareProperty(
name,hndl,
doc);
◆ declareProperty() [3/6]
◆ declareProperty() [4/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation string for the property. |
This is the generic version, for types that do not derive from SG::VarHandleKey
. It just forwards to the base class version of declareProperty
.
Definition at line 333 of file AthCommonDataStore.h.
338 return PBASE::declareProperty(
name, property,
doc);
◆ declareProperty() [5/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation string for the property. |
This dispatches to either the generic declareProperty
or the one for VarHandle/Key/KeyArray.
Definition at line 352 of file AthCommonDataStore.h.
◆ declareProperty() [6/6]
◆ detStore()
◆ evtStore() [1/2]
◆ evtStore() [2/2]
◆ 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
◆ fillNtuple()
StatusCode Trk::MSConstraintTracksProvider::fillNtuple |
( |
| ) |
|
|
privatevirtual |
◆ finalize()
StatusCode Trk::MSConstraintTracksProvider::finalize |
( |
| ) |
|
|
virtual |
◆ initialize()
StatusCode Trk::MSConstraintTracksProvider::initialize |
( |
| ) |
|
|
virtual |
◆ initializeNtuple()
void Trk::MSConstraintTracksProvider::initializeNtuple |
( |
| ) |
|
|
private |
◆ 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 & ITrackCollectionProvider::interfaceID |
( |
| ) |
|
|
inlinestaticinherited |
◆ msg() [1/2]
◆ msg() [2/2]
◆ msgLvl()
◆ 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.
◆ printSummary()
void Trk::MSConstraintTracksProvider::printSummary |
( |
| ) |
|
|
virtual |
◆ renounce()
◆ renounceArray()
◆ setLogStream()
virtual void Trk::ITrackCollectionProvider::setLogStream |
( |
std::ostream * |
os | ) |
|
|
inlinevirtualinherited |
◆ setNtuple()
void Trk::MSConstraintTracksProvider::setNtuple |
( |
TFile * |
| ) |
|
|
privatevirtual |
◆ 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.
◆ trackCollection()
Implements Trk::ITrackCollectionProvider.
Definition at line 411 of file MSConstraintTracksProvider.cxx.
414 originalTracks =
nullptr;
419 ATH_MSG_WARNING(
"One probability is that you are not running on ESD/DESD ");
423 originalTracks =
nullptr;
427 ATH_MSG_DEBUG(
" have tracks of this event: " << originalTracks->size());
431 return StatusCode::SUCCESS;
439 int goodQualityCombinedMuon = 0;
441 for ( ; combinedTrackIt != combinedTrackItE; ++combinedTrackIt ) {
444 if (
muon->isCombinedMuon() &&
muon->hasMuonExtrapolatedTrackParticle() &&
muon->hasInDetTrackParticle() ){
447 ATH_MSG_DEBUG(
"have good quality combined Muons of the event: " << ++goodQualityCombinedMuon);
449 const Trk::Perigee* METrkMeasuredPerigee =
dynamic_cast<const Trk::Perigee*
>(&(
muon->muonExtrapolatedTrackParticle()->definingParameters()));
450 if(!METrkMeasuredPerigee){
451 ATH_MSG_DEBUG(
"NO muonExtrapolatedTrackParticle or no METrkMeasuredPerigee");
462 if(!IDTrkMeasuredPerigee){
463 ATH_MSG_DEBUG(
"NO inDetTrackParticle or no IDTrkMeasuredPerigee");
469 std::vector<Trk::DefinedParameter> parFromMSVec;
470 parFromMSVec.push_back( qOverPFromMS) ;
475 auto pmot = std::make_unique<Trk::PseudoMeasurementOnTrack>(
478 auto trackStateOnSurfaces = std::make_unique<Trk::TrackStates>();
479 trackStateOnSurfaces->reserve(
muon->inDetTrackParticle()->originalTrack()->trackStateOnSurfaces()->size() + 1);
482 std::bitset<Trk::TrackStateOnSurface::NumberOfTrackStateOnSurfaceTypes>
type;
485 const Perigee* IDPerigeeParameters =
muon->inDetTrackParticle()->originalTrack()->perigeeParameters();
487 auto IDPerigeeParametersClone =
488 (IDPerigeeParameters)
489 ? std::make_unique<Perigee>(*IDPerigeeParameters)
492 if(IDPerigeeParameters && IDPerigeeParametersClone ){
493 trackStateOnSurfaces->push_back(
new const Trk::TrackStateOnSurface(std::move(pmot), std::move(IDPerigeeParametersClone),
nullptr,
type));
495 for ( ;
sb !=
muon->inDetTrackParticle()->originalTrack()->trackStateOnSurfaces()->end(); ++
sb) trackStateOnSurfaces->push_back((**sb).clone());
498 muon->inDetTrackParticle()->originalTrack()->info(),
499 std::move(trackStateOnSurfaces),
506 if(!MSConstraintFittedTrack){
511 ATH_MSG_WARNING(
"Try to push the originalIDTrack into the trackCollection");
513 if(IDOriginalTrackClone){
517 "IDOriginalTrackClone parameters --- pt: "
518 << fabs(1. / (aMeasPerClone->parameters()[
Trk::qOverP])) *
520 <<
" d0: " << aMeasPerClone->parameters()[
Trk::d0]);
523 if(!IDOriginalTrackClone){
540 delete MSConstraintFittedTrackClone;
551 ATH_MSG_WARNING(
"failed in IDPerigeeParameters or IDPerigeeParametersClone !");
559 ATH_MSG_WARNING(
"problem with recording MSMomentumConstraintTracks to StoreGate!");
560 return StatusCode::SUCCESS;
569 return StatusCode::SUCCESS;
◆ updateVHKA()
◆ m_charge
int Trk::MSConstraintTracksProvider::m_charge |
|
private |
◆ m_charge_constrained
int Trk::MSConstraintTracksProvider::m_charge_constrained |
|
private |
◆ m_combinedEta
double Trk::MSConstraintTracksProvider::m_combinedEta |
|
private |
◆ m_combinedPhi
double Trk::MSConstraintTracksProvider::m_combinedPhi |
|
private |
◆ m_detStore
◆ m_doTree
bool Trk::MSConstraintTracksProvider::m_doTree |
|
private |
◆ m_eBLhits
int Trk::MSConstraintTracksProvider::m_eBLhits |
|
private |
◆ m_event
int Trk::MSConstraintTracksProvider::m_event |
|
private |
◆ m_evtStore
◆ m_IDEta
double Trk::MSConstraintTracksProvider::m_IDEta |
|
private |
◆ m_IDEta_constrained
double Trk::MSConstraintTracksProvider::m_IDEta_constrained |
|
private |
◆ m_IDPhi
double Trk::MSConstraintTracksProvider::m_IDPhi |
|
private |
◆ m_IDPhi_constrained
double Trk::MSConstraintTracksProvider::m_IDPhi_constrained |
|
private |
◆ m_inputMuonCollection
std::string Trk::MSConstraintTracksProvider::m_inputMuonCollection |
|
private |
◆ m_inputTracksCollection
std::string Trk::MSConstraintTracksProvider::m_inputTracksCollection |
|
private |
◆ m_logStream
std::ostream* Trk::ITrackCollectionProvider::m_logStream = nullptr |
|
protectedinherited |
◆ m_maxIDd0
double Trk::MSConstraintTracksProvider::m_maxIDd0 |
|
private |
◆ m_maxIDz0
double Trk::MSConstraintTracksProvider::m_maxIDz0 |
|
private |
◆ m_maxMSd0
double Trk::MSConstraintTracksProvider::m_maxMSd0 |
|
private |
◆ m_maxMSz0
double Trk::MSConstraintTracksProvider::m_maxMSz0 |
|
private |
◆ m_maxNumberOfSectors
double Trk::MSConstraintTracksProvider::m_maxNumberOfSectors |
|
private |
◆ m_maxRetrievalErrors
int Trk::MSConstraintTracksProvider::m_maxRetrievalErrors |
|
private |
◆ m_minIDPt
double Trk::MSConstraintTracksProvider::m_minIDPt |
|
private |
◆ m_minMDTHits
int Trk::MSConstraintTracksProvider::m_minMDTHits |
|
private |
◆ m_minMSPt
double Trk::MSConstraintTracksProvider::m_minMSPt |
|
private |
◆ m_minNumberOfPhiLayers
double Trk::MSConstraintTracksProvider::m_minNumberOfPhiLayers |
|
private |
◆ m_minPIXHits
int Trk::MSConstraintTracksProvider::m_minPIXHits |
|
private |
◆ m_minPt
double Trk::MSConstraintTracksProvider::m_minPt |
|
private |
◆ m_minRPCPhiHits
int Trk::MSConstraintTracksProvider::m_minRPCPhiHits |
|
private |
◆ m_minSCTHits
int Trk::MSConstraintTracksProvider::m_minSCTHits |
|
private |
◆ m_minStationLayers
double Trk::MSConstraintTracksProvider::m_minStationLayers |
|
private |
◆ m_minTGCPhiHits
int Trk::MSConstraintTracksProvider::m_minTGCPhiHits |
|
private |
◆ m_minTRTHits
int Trk::MSConstraintTracksProvider::m_minTRTHits |
|
private |
◆ m_muonHitSummaryTool
◆ m_nBLhits
int Trk::MSConstraintTracksProvider::m_nBLhits |
|
private |
◆ m_nCBMuonsFailedRefit
int Trk::MSConstraintTracksProvider::m_nCBMuonsFailedRefit |
|
private |
◆ m_nCBMuonsFromSG
int Trk::MSConstraintTracksProvider::m_nCBMuonsFromSG |
|
private |
◆ m_nCBMuonsHasEXandID
int Trk::MSConstraintTracksProvider::m_nCBMuonsHasEXandID |
|
private |
◆ m_nCBMuonsPassSelection
int Trk::MSConstraintTracksProvider::m_nCBMuonsPassSelection |
|
private |
◆ m_nCBMuonsSucRefit
int Trk::MSConstraintTracksProvider::m_nCBMuonsSucRefit |
|
private |
◆ m_nPIXDS
int Trk::MSConstraintTracksProvider::m_nPIXDS |
|
private |
◆ m_nPIXH
int Trk::MSConstraintTracksProvider::m_nPIXH |
|
private |
◆ m_nPIXHits
int Trk::MSConstraintTracksProvider::m_nPIXHits |
|
private |
◆ m_nSCTDS
int Trk::MSConstraintTracksProvider::m_nSCTDS |
|
private |
◆ m_nSCTH
int Trk::MSConstraintTracksProvider::m_nSCTH |
|
private |
◆ m_nSCTHits
int Trk::MSConstraintTracksProvider::m_nSCTHits |
|
private |
◆ m_nTRTHits
int Trk::MSConstraintTracksProvider::m_nTRTHits |
|
private |
◆ m_ntuple
TFile* Trk::MSConstraintTracksProvider::m_ntuple |
|
private |
◆ m_phiLayerNum
int Trk::MSConstraintTracksProvider::m_phiLayerNum |
|
private |
◆ m_phiLayers
int Trk::MSConstraintTracksProvider::m_phiLayers |
|
private |
◆ m_pID
double Trk::MSConstraintTracksProvider::m_pID |
|
private |
◆ m_pID_constrained
double Trk::MSConstraintTracksProvider::m_pID_constrained |
|
private |
◆ m_pMS
double Trk::MSConstraintTracksProvider::m_pMS |
|
private |
◆ m_ptID
double Trk::MSConstraintTracksProvider::m_ptID |
|
private |
◆ m_ptID_constrained
double Trk::MSConstraintTracksProvider::m_ptID_constrained |
|
private |
◆ m_ptMS
double Trk::MSConstraintTracksProvider::m_ptMS |
|
private |
◆ m_run
int Trk::MSConstraintTracksProvider::m_run |
|
private |
◆ m_runOutlierRemoval
◆ m_sectorNum
int Trk::MSConstraintTracksProvider::m_sectorNum |
|
private |
◆ m_sectors
int Trk::MSConstraintTracksProvider::m_sectors |
|
private |
◆ m_stationLayerNum
int Trk::MSConstraintTracksProvider::m_stationLayerNum |
|
private |
◆ m_stationLayers
int Trk::MSConstraintTracksProvider::m_stationLayers |
|
private |
◆ m_trackFitter
◆ m_tree
TTree* Trk::MSConstraintTracksProvider::m_tree |
|
private |
◆ m_useMSConstraintTrkOnly
bool Trk::MSConstraintTracksProvider::m_useMSConstraintTrkOnly |
|
private |
◆ m_varHandleArraysDeclared
◆ m_vhka
The documentation for this class was generated from the following files:
xAOD::MuonContainer * muonContainer
def retrieve(aClass, aKey=None)
int m_nCBMuonsFailedRefit
Const iterator class for DataVector/DataList.
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > MatrixX
Dynamic Matrix - dynamic allocation.
virtual StatusCode trackCollection(const TrackCollection *&tracks)
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
Dummy class used to allow special convertors to be called for surfaces owned by a detector element.
bool m_useMSConstraintTrkOnly
int m_maxRetrievalErrors
maximum allowed number of retrieval errors at the beginning of the job (-1 for infinite)
StoreGateSvc_t m_evtStore
Pointer to StoreGate (event store by default)
std::vector< SG::VarHandleKeyArray * > m_vhka
double m_IDPhi_constrained
int m_nCBMuonsPassSelection
double m_maxNumberOfSectors
ParametersT< TrackParametersDim, Charged, PerigeeSurface > Perigee
double m_minStationLayers
std::pair< double, ParamDefs > DefinedParameter
virtual void setOwner(IDataHandleHolder *o)=0
virtual const S & associatedSurface() const override final
Access to the Surface method.
ServiceHandle< StoreGateSvc > & evtStore()
The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.
RunOutlierRemoval m_runOutlierRemoval
run outlier removal in the GX2 fitter
DataVector< Trk::Track > TrackCollection
This typedef represents a collection of Trk::Track objects.
float nSCTHits(const U &p)
float nTRTHits(const U &p)
std::string m_inputMuonCollection
Name of input combined muons collection.
The ATLAS Muon object - see doxygen, physics workbookd and the Muon Combined Performance WG's pages f...
StoreGateSvc_t m_detStore
Pointer to StoreGate (detector store by default)
definition of StoreGate container holding a vector of Analysis::Muon
bool combinedMuonSelection(const Analysis::Muon *)
virtual void renounce()=0
std::conditional< std::is_base_of< SG::VarHandleKeyArray, T >::value, VarHandleKeyArrayType, type2 >::type type
double m_minNumberOfPhiLayers
const Perigee * perigeeParameters() const
return Perigee.
represents the track state (measurement, material, fit parameters and quality) at a surface.
ToolHandle< IGlobalTrackFitter > m_trackFitter
normal track fitter
const_iterator end() const noexcept
Return a const_iterator pointing past the end of the collection.
PublicToolHandle< Muon::IMuonHitSummaryTool > m_muonHitSummaryTool
#define ATH_MSG_WARNING(x)
std::ostream * m_logStream
logfile output stream
SG::VarHandleKey & vhKey()
Return a non-const reference to the HandleKey.
std::string m_inputTracksCollection
Name of input tracks collection.
const Track * originalTrack() const
Return pointer to associated track.
size_type size() const noexcept
Returns the number of elements in the collection.
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>
@ Measurement
This is a measurement, and will at least contain a Trk::MeasurementBase.
double m_ptID_constrained
const_iterator begin() const noexcept
Return a const_iterator pointing at the beginning of the collection.
double m_IDEta_constrained