|
ATLAS Offline Software
|
Go to the documentation of this file.
13 #ifndef DERIVATIONFRAMEWORK_BPhysAddMuonBasedInvMass_H
14 #define DERIVATIONFRAMEWORK_BPhysAddMuonBasedInvMass_H
23 #include "GaudiKernel/ToolHandle.h"
32 typedef std::vector<const xAOD::TrackParticle*>
TrackBag;
33 typedef std::vector<const xAOD::Muon*>
MuonBag;
113 const IInterface*
p);
136 const std::vector<double>&
161 std::pair<double,double>
163 const std::vector<double> &massHypotheses,
187 const std::vector<int>& pvtypes,
188 const int minNTracksInPV,
296 #endif // DERIVATIONFRAMEWORK_BPhysAddMuonBasedInvMass_H
const xAOD::TrackParticle * adjustTrackParticle(const xAOD::Muon *muon, BasedInvCache &cache) const
Extract TrackParticle for Muon and adjust kinematics.
Dummy class used to allow special convertors to be called for surfaces owned by a detector element.
std::vector< xAOD::BPhysHelper::pv_type > m_pvAssocTypes
std::vector< int > m_pvTypesToConsider
MuonBag findAllMuonsInDecay(xAOD::BPhysHelper &vtx) const
Find all muons associated to secondary vertex.
void initPvAssocTypeVec()
Initialize PV-to-SV association type vector.
std::vector< const xAOD::Muon * > MuonBag
Augment secondary vertices with muon-information-based mass.
AmgSymMatrix(3) BPhysAddMuonBasedInvMass
std::pair< double, double > getInvariantMassWithError(TrackBag trksIn, const std::vector< double > &massHypotheses, const Amg::Vector3D &pos, BasedInvCache &) const
Calculate invariant mass and uncertainty from a set of tracks.
pv_type
: Enum type of the PV
::StatusCode StatusCode
StatusCode definition for legacy code.
std::vector< const xAOD::TrackParticle * > TrackBag
int m_addMinChi2ToAnyPVMode
std::vector< double > m_trkMasses
BPhysAddMuonBasedInvMass(const std::string &t, const std::string &n, const IInterface *p)
Main contructor.
Eigen::Matrix< double, 3, 1 > Vector3D
double getMinChi2ToAnyPV(xAOD::BPhysHelper &vtx, const xAOD::VertexContainer *pvContainer, const std::vector< int > &pvtypes, const int minNTracksInPV, const int mode, const xAOD::BPhysHelper::pv_type &pvAssocType, BasedInvCache &cache) const
Determine minimum log chi2 of signal muon tracks w.r.t.
virtual StatusCode addBranches() const
Main method called for each event.
std::string m_pvContainerName
: B-physics xAOD helpers.
bool m_adjustToMuonKinematics
double getTrackPVChi2(const xAOD::TrackParticle &track, const Amg::Vector3D &pos, BasedInvCache &cache) const
Calculate log chi2 value of a track w.r.t.
TrackBag getIdTracksForMuons(MuonBag &muons) const
Obtain a set of ID tracks for a set of muons.
std::pair< TrackBag, int > getTracksWithMuons(xAOD::BPhysHelper &vtx, BasedInvCache &) const
Obtain a set of tracks with muon track information if available.
std::string m_vertexContainerName
Class describing a TrackParticle.
ToolHandle< Reco::ITrackToVertex > m_trackToVertexTool
virtual StatusCode finalize()
Finalize augmentation tool.
std::pair< double, double > getMuCalcMass(xAOD::BPhysHelper &vtx, const std::vector< double > &trkMasses, int nMuRequested, BasedInvCache &cache) const
virtual StatusCode initialize()
Initialize augmentation tool.
std::string m_branchPrefix