ATLAS Offline Software
|
#include <InDetIterativePriVxFinderTool.h>
Public Member Functions | |
InDetIterativePriVxFinderTool (const std::string &t, const std::string &n, const IInterface *p) | |
Constructor. More... | |
virtual | ~InDetIterativePriVxFinderTool () |
Destructor. More... | |
virtual StatusCode | initialize () override |
virtual std::pair< xAOD::VertexContainer *, xAOD::VertexAuxContainer * > | findVertex (const EventContext &ctx, const TrackCollection *trackTES) const override |
Find vertex from Trk::TrackCollection. More... | |
virtual std::pair< xAOD::VertexContainer *, xAOD::VertexAuxContainer * > | findVertex (const EventContext &ctx, const xAOD::TrackParticleContainer *trackParticles) const override |
Find vertex from xAOD::TrackParticleContainer. More... | |
virtual StatusCode | finalize () override |
virtual std::pair< xAOD::VertexContainer *, xAOD::VertexAuxContainer * > | findVertex (const EventContext &ctx, const TrackCollection *trackTES) const=0 |
Finding method. More... | |
virtual std::pair< xAOD::VertexContainer *, xAOD::VertexAuxContainer * > | findVertex (const EventContext &ctx, const xAOD::TrackParticleContainer *trackParticles) const=0 |
Finding method. More... | |
virtual std::pair< xAOD::VertexContainer *, xAOD::VertexAuxContainer * > | findVertex (const TrackCollection *trackTES) const |
Finding method. More... | |
virtual std::pair< xAOD::VertexContainer *, xAOD::VertexAuxContainer * > | findVertex (const xAOD::TrackParticleContainer *trackParticles) const |
Finding method. 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 |
virtual std::pair< xAOD::VertexContainer *, xAOD::VertexAuxContainer * > | findVertex (const TrackCollection *trackTES) const |
virtual std::pair< xAOD::VertexContainer *, xAOD::VertexAuxContainer * > | findVertex (const xAOD::TrackParticleContainer *trackParticles) const |
Static Public Member Functions | |
static const InterfaceID & | interfaceID () |
Protected Member Functions | |
void | renounceArray (SG::VarHandleKeyArray &handlesArray) |
remove all handles from I/O resolution More... | |
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. More... | |
Private Types | |
typedef ServiceHandle< StoreGateSvc > | StoreGateSvc_t |
Private Member Functions | |
std::pair< xAOD::VertexContainer *, xAOD::VertexAuxContainer * > | findVertex (const EventContext &ctx, const std::vector< Trk::ITrackLink * > &trackVector) const |
void | removeCompatibleTracks (xAOD::Vertex *myxAODVertex, std::vector< const Trk::TrackParameters * > &perigeesToFit, std::vector< Trk::ITrackLink * > &seedTracks) const |
void | removeAllFrom (std::vector< const Trk::TrackParameters * > &perigeesToFit, std::vector< Trk::ITrackLink * > &seedTracks) const |
double | compatibility (const Trk::TrackParameters &measPerigee, const xAOD::Vertex &vertex) const |
void | SGError (const std::string &errService) |
virtual void | printParameterSettings () |
Internal method to print the parameters setting. More... | |
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &) |
specialization for handling Gaudi::Property<SG::VarHandleKey> More... | |
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleKeyArrayType &) |
specialization for handling Gaudi::Property<SG::VarHandleKeyArray> More... | |
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleType &) |
specialization for handling Gaudi::Property<SG::VarHandleBase> More... | |
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &t, const SG::NotHandleType &) |
specialization for handling everything that's not a Gaudi::Property<SG::VarHandleKey> or a <SG::VarHandleKeyArray> More... | |
Static Private Member Functions | |
static void | countTracksAndNdf (xAOD::Vertex *myxAODVertex, double &ndf, int &ntracks) |
Private Attributes | |
ToolHandle< Trk::IVertexFitter > | m_iVertexFitter |
ToolHandle< InDet::IInDetTrackSelectionTool > | m_trkFilter |
ToolHandle< Trk::IVertexSeedFinder > | m_SeedFinder |
ToolHandle< Trk::IImpactPoint3dEstimator > | m_ImpactPoint3dEstimator |
ToolHandle< Trk::IVertexLinearizedTrackFactory > | m_LinearizedTrackFactory |
SG::ReadCondHandleKey< InDet::BeamSpotData > | m_beamSpotKey |
BooleanProperty | m_useBeamConstraint {this, "useBeamConstraint", false} |
DoubleProperty | m_significanceCutSeeding {this, "significanceCutSeeding", 10.} |
DoubleProperty | m_maximumChi2cutForSeeding {this, "maximumChi2cutForSeeding", 36.} |
IntegerProperty | m_maxVertices {this, "maxVertices", 25} |
BooleanProperty | m_createSplitVertices {this, "createSplitVertices", false} |
IntegerProperty | m_splitVerticesTrkInvFraction {this, "splitVerticesTrkInvFraction", 2, "inverse fraction to split tracks (1:N)"} |
BooleanProperty | m_reassignTracksAfterFirstFit {this, "reassignTracksAfterFirstFit", false} |
BooleanProperty | m_doMaxTracksCut {this, "doMaxTracksCut", false} |
UnsignedIntegerProperty | m_maxTracks {this, "MaxTracks", 5000} |
StoreGateSvc_t | m_evtStore |
Pointer to StoreGate (event store by default) More... | |
StoreGateSvc_t | m_detStore |
Pointer to StoreGate (detector store by default) More... | |
std::vector< SG::VarHandleKeyArray * > | m_vhka |
bool | m_varHandleArraysDeclared |
This class provides an implementation for a primary vertex finding tool, which uses the Adaptive Vertex Fitter to reject outliers not belonging to the primary vertex interaction.
Changes:
David Shope david (2016-04-26) .ric hard. shop e@cer n.ch
EDM Migration to xAOD - from Trk::VxCandidate to xAOD::Vertex
findVertex will now always return an xAOD::VertexContainer, even when using a TrackCollection or a TrackParticleBaseCollection as input.
Dave Casper dcasp (2018-03-28) Migrate beam spot service to conditions handle er@u ci.ed u
Definition at line 68 of file InDetIterativePriVxFinderTool.h.
|
privateinherited |
Definition at line 388 of file AthCommonDataStore.h.
InDet::InDetIterativePriVxFinderTool::InDetIterativePriVxFinderTool | ( | const std::string & | t, |
const std::string & | n, | ||
const IInterface * | p | ||
) |
|
virtualdefault |
Destructor.
|
private |
Definition at line 830 of file InDetIterativePriVxFinderTool.cxx.
|
staticprivate |
Definition at line 900 of file InDetIterativePriVxFinderTool.cxx.
|
inlineprivateinherited |
specialization for handling Gaudi::Property<SG::VarHandleKeyArray>
Definition at line 170 of file AthCommonDataStore.h.
|
inlineprivateinherited |
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition at line 156 of file AthCommonDataStore.h.
|
inlineprivateinherited |
specialization for handling Gaudi::Property<SG::VarHandleBase>
Definition at line 184 of file AthCommonDataStore.h.
|
inlineprivateinherited |
specialization for handling everything that's not a Gaudi::Property<SG::VarHandleKey> or a <SG::VarHandleKeyArray>
Definition at line 199 of file AthCommonDataStore.h.
|
inlineinherited |
Declare a new Gaudi property.
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.
|
inlineinherited |
Declare a new Gaudi property.
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.
|
inlineinherited |
Definition at line 259 of file AthCommonDataStore.h.
|
inlineinherited |
Declare a new Gaudi property.
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.
|
inlineinherited |
Declare a new Gaudi property.
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.
|
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.
|
inlineinherited |
The standard StoreGateSvc
(event store) Returns (kind of) a pointer to the StoreGateSvc
.
Definition at line 90 of file AthCommonDataStore.h.
|
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 |
Definition at line 810 of file InDetIterativePriVxFinderTool.cxx.
|
private |
Definition at line 235 of file InDetIterativePriVxFinderTool.cxx.
|
overridevirtual |
Find vertex from Trk::TrackCollection.
EventContext | |
input | track container |
Implements InDet::IVertexFinder.
Definition at line 130 of file InDetIterativePriVxFinderTool.cxx.
virtual std::pair<xAOD::VertexContainer*, xAOD::VertexAuxContainer*> InDet::IVertexFinder::findVertex |
Finding method.
Has as input a track collection and as output a VxContainer.
|
overridevirtual |
Find vertex from xAOD::TrackParticleContainer.
EventContext | |
input | track particle container |
Implements InDet::IVertexFinder.
Definition at line 175 of file InDetIterativePriVxFinderTool.cxx.
virtual std::pair<xAOD::VertexContainer*, xAOD::VertexAuxContainer*> InDet::IVertexFinder::findVertex |
Finding method.
Has as input a track collection and as output a VxContainer.
|
inline |
Finding method.
Has as input a track collection and as output a VxContainer.
Definition at line 100 of file IVertexFinder.h.
|
inlinevirtualinherited |
Definition at line 100 of file IVertexFinder.h.
|
inline |
Finding method.
Has as input a track collection and as output a VxContainer.
Definition at line 106 of file IVertexFinder.h.
|
inlinevirtualinherited |
Definition at line 106 of file IVertexFinder.h.
|
overridevirtual |
Definition at line 70 of file InDetIterativePriVxFinderTool.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.
|
inlinestaticinherited |
Definition at line 73 of file IVertexFinder.h.
|
inlineinherited |
Definition at line 24 of file AthCommonMsg.h.
|
inlineinherited |
Definition at line 27 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.
|
privatevirtual |
Internal method to print the parameters setting.
Definition at line 816 of file InDetIterativePriVxFinderTool.cxx.
|
private |
Definition at line 860 of file InDetIterativePriVxFinderTool.cxx.
|
private |
Definition at line 926 of file InDetIterativePriVxFinderTool.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.
|
private |
Definition at line 824 of file InDetIterativePriVxFinderTool.cxx.
|
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 DerivationFramework::CfAthAlgTool, AthCheckedComponent< AthAlgTool >, AthCheckedComponent<::AthAlgTool >, and asg::AsgMetadataTool.
|
overridevirtualinherited |
Handle START transition.
We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.
|
inlineinherited |
Definition at line 308 of file AthCommonDataStore.h.
|
private |
Definition at line 150 of file InDetIterativePriVxFinderTool.h.
|
private |
Definition at line 164 of file InDetIterativePriVxFinderTool.h.
|
privateinherited |
Pointer to StoreGate (detector store by default)
Definition at line 393 of file AthCommonDataStore.h.
|
private |
Definition at line 171 of file InDetIterativePriVxFinderTool.h.
|
privateinherited |
Pointer to StoreGate (event store by default)
Definition at line 390 of file AthCommonDataStore.h.
|
private |
Definition at line 138 of file InDetIterativePriVxFinderTool.h.
|
private |
Definition at line 126 of file InDetIterativePriVxFinderTool.h.
|
private |
Definition at line 144 of file InDetIterativePriVxFinderTool.h.
|
private |
Definition at line 160 of file InDetIterativePriVxFinderTool.h.
|
private |
Definition at line 172 of file InDetIterativePriVxFinderTool.h.
|
private |
Definition at line 162 of file InDetIterativePriVxFinderTool.h.
|
private |
Definition at line 168 of file InDetIterativePriVxFinderTool.h.
|
private |
Definition at line 135 of file InDetIterativePriVxFinderTool.h.
|
private |
Definition at line 158 of file InDetIterativePriVxFinderTool.h.
|
private |
Definition at line 165 of file InDetIterativePriVxFinderTool.h.
|
private |
Definition at line 129 of file InDetIterativePriVxFinderTool.h.
|
private |
Definition at line 157 of file InDetIterativePriVxFinderTool.h.
|
privateinherited |
Definition at line 399 of file AthCommonDataStore.h.
|
privateinherited |
Definition at line 398 of file AthCommonDataStore.h.