1 #ifndef MuonReco_Muon_h 2 #define MuonReco_Muon_h 270 bool hasShowerInStation(
int station,
int muonSubdetId,
int nDtDigisCut = 20,
int nCscDigisCut = 36 )
const;
272 int numberOfShowers(
int nDtDigisCut = 20,
int nCscDigisCut = 36 )
const;
290 bool isMuon()
const override {
return true; }
353 const std::vector<const MuonChamberMatch*>
chambers(
int station,
int muonSubdetId )
const;
355 std::pair<const MuonChamberMatch*,const MuonSegmentMatch*>
pair(
const std::vector<const MuonChamberMatch*> &,
401 for( std::vector<MuonChamberMatch>::const_iterator
chamber = muMatches_.begin();
403 for ( std::vector<reco::MuonSegmentMatch>::const_iterator segment =
chamber->segmentMatches.begin();
404 segment !=
chamber->segmentMatches.end(); ++segment )
406 if (i==
n)
return segment->t0;
MuonPFIsolation pfIsoSumDRR03_
float dDyDz(int station, int muonSubdetId, ArbitrationType type=SegmentAndTrackArbitration) const
MuonEnergy calEnergy_
energy deposition
int Charge
electric charge type
float segmentX(int station, int muonSubdetId, ArbitrationType type=SegmentAndTrackArbitration) const
bool isMuon() const override
int numberOfMatchedRPCLayers(ArbitrationType type=RPCHitAndTrackArbitration) const
static const unsigned int GlobalMuon
reco::Candidate::LorentzVector pfP4_
unsigned int stationGapMaskPull(float sigmaCut=3.) const
same as above for given number of sigmas
TrackRef track() const override
reference to a Track
float trackY(int station, int muonSubdetId, ArbitrationType type=SegmentAndTrackArbitration) const
bool isStandAloneMuon() const override
virtual MuonTrackType muonBestTrackType() const
void setType(unsigned int type)
MuonIsolation isolationR05_
virtual TrackRef innerTrack() const
float caloCompatibility_
muon hypothesis compatibility with observer calorimeter energy
bool isCaloCompatibilityValid() const
const MuonPFIsolation & pfSumDRIsoProfileR04() const
unsigned int type_
muon type mask
MuonPFIsolation pfIsoMeanDRR04_
const MuonPFIsolation & pfMeanDRIsoProfileR04() const
int numberOfSegments(int station, int muonSubdetId, ArbitrationType type=SegmentAndTrackArbitration) const
get number of segments
int numberOfChambersCSCorDT() const
number of chambers CSC or DT matches only (MuonChamberMatches include RPC rolls)
int numberOfShowers(int nDtDigisCut=20, int nCscDigisCut=36) const
count the number of showers along a muon track
bool passed(uint64_t selection) const
MuonPFIsolation pfIsolationR04_
bool isMatchesValid() const
MuonPFIsolation pfIsolationR03_
PF Isolation information for two cones with dR=0.3 and dR=0.4.
std::pair< const MuonChamberMatch *, const MuonSegmentMatch * > pair(const std::vector< const MuonChamberMatch * > &, ArbitrationType type=SegmentAndTrackArbitration) const
get pointers to best segment and corresponding chamber in vector of chambers
float segmentDxDzErr(int station, int muonSubdetId, ArbitrationType type=SegmentAndTrackArbitration) const
void setCalEnergy(const MuonEnergy &calEnergy)
set energy deposition information
const MuonIsolation & isolationR05() const
reco::Candidate::LorentzVector pfP4() const
const Track * bestTrack() const override
virtual TrackRef tpfmsTrack() const
MuonTime time() const
get DT/CSC combined timing information
static std::string const input
void setSelector(Selector selector, bool passed)
virtual reco::TrackRef track() const
reference to a Track
bool isTrackerMuon() const override
virtual void setTunePBestTrack(MuonTrackType muonType)
float segmentYErr(int station, int muonSubdetId, ArbitrationType type=SegmentAndTrackArbitration) const
float trackEdgeX(int station, int muonSubdetId, ArbitrationType type=SegmentAndTrackArbitration) const
unsigned int expectedNnumberOfMatchedStations(float minDistanceFromEdge=10.0) const
virtual void setInnerTrack(const TrackRef &t)
set reference to Track
MuonTrackRefMap refittedTrackMap_
reference to the Global Track refitted with dedicated TeV reconstructors
virtual void setStandAlone(const TrackRef &t)
TrackBaseRef bestTrackRef() const override
best track RefToBase
float trackDistErr(int station, int muonSubdetId, ArbitrationType type=SegmentAndTrackArbitration) const
float dY(int station, int muonSubdetId, ArbitrationType type=SegmentAndTrackArbitration) const
virtual TrackRef muonBestTrack() const
TrackRef innerTrack_
reference to Track reconstructed in the tracker only
void setSelectors(uint64_t selectors)
edm::RefToBase< reco::Track > TrackBaseRef
persistent reference to a Track, using views
bool isGlobalMuon() const override
void setCaloCompatibility(float input)
static const unsigned int ME0Muon
virtual void setCombined(const TrackRef &t)
const MuonPFIsolation & pfIsolationR03() const
ArbitrationType
define arbitration schemes
float pullDxDz(int station, int muonSubdetId, ArbitrationType type=SegmentAndTrackArbitration, bool includeSegmentError=true) const
TrackRef muonTrack(const MuonTrackType &) const
float segmentY(int station, int muonSubdetId, ArbitrationType type=SegmentAndTrackArbitration) const
bool isPFIsolationValid() const
unsigned int stationGapMaskDistance(float distanceCut=10.) const
MuonQuality combinedQuality() const
get energy deposition information
float segmentDyDz(int station, int muonSubdetId, ArbitrationType type=SegmentAndTrackArbitration) const
int nDof
number of muon stations used
MuonPFIsolation pfIsoSumDRR04_
const std::vector< MuonChamberMatch > & matches() const
MuonTrackType bestTrackType_
reference to the Track chosen to assign the momentum value to the muon
float trackEdgeY(int station, int muonSubdetId, ArbitrationType type=SegmentAndTrackArbitration) const
virtual TrackRef pickyTrack() const
void setPFIsolation(const std::string &label, const reco::MuonPFIsolation &deposit)
T const * get() const
Returns C++ pointer to the item.
bool isQualityValid() const
Functor that operates on <T>
MuonQuality combinedQuality_
quality block
float dX(int station, int muonSubdetId, ArbitrationType type=SegmentAndTrackArbitration) const
float pullY(int station, int muonSubdetId, ArbitrationType type=SegmentAndTrackArbitration, bool includeSegmentError=true) const
void setTime(const MuonTime &time)
set DT/CSC combined timing information
virtual TrackRef outerTrack() const
reference to Track reconstructed in the muon detector only
float trackDyDz(int station, int muonSubdetId, ArbitrationType type=SegmentAndTrackArbitration) const
void setMuonTrack(const MuonTrackType &, const TrackRef &)
bool isEnergyValid() const
TrackRef standAloneMuon() const override
reference to a stand-alone muon Track
unsigned int stationMask(ArbitrationType type=SegmentAndTrackArbitration) const
int numberOfMatchedStations(ArbitrationType type=SegmentAndTrackArbitration) const
MuonEnergy calEnergy() const
get energy deposition information
const std::vector< const MuonChamberMatch * > chambers(int station, int muonSubdetId) const
get vector of muon chambers for given station and detector
float trackYErr(int station, int muonSubdetId, ArbitrationType type=SegmentAndTrackArbitration) const
static const unsigned int RPCMuon
float trackXErr(int station, int muonSubdetId, ArbitrationType type=SegmentAndTrackArbitration) const
float trackDyDzErr(int station, int muonSubdetId, ArbitrationType type=SegmentAndTrackArbitration) const
bool isAValidMuonTrack(const MuonTrackType &type) const
void setRPCTime(const MuonTime &time)
set RPC timing information
float segmentDyDzErr(int station, int muonSubdetId, ArbitrationType type=SegmentAndTrackArbitration) const
static const unsigned int TrackerMuon
float trackX(int station, int muonSubdetId, ArbitrationType type=SegmentAndTrackArbitration) const
unsigned long long uint64_t
float trackDxDz(int station, int muonSubdetId, ArbitrationType type=SegmentAndTrackArbitration) const
int numberOfChambers() const
const MuonPFIsolation & pfIsolationR04() const
const MuonPFIsolation & pfSumDRIsoProfileR03() const
std::map< MuonTrackType, reco::TrackRef > MuonTrackRefMap
TrackRef combinedMuon() const override
reference to a stand-alone muon Track
uint64_t selectors() const
void setCombinedQuality(const MuonQuality &combinedQuality)
set energy deposition information
static const unsigned int PFMuon
MuonIsolation isolationR03_
Isolation information for two cones with dR=0.3 and dR=0.5.
std::vector< MuonChamberMatch > & matches()
get muon matching information
math::XYZTLorentzVector LorentzVector
Lorentz vector.
int numberOfMatches(ArbitrationType type=SegmentAndTrackArbitration) const
get number of chambers with matched segments
MuonTime rpcTime() const
get RPC timing information
TrackRef outerTrack_
reference to Track reconstructed in the muon detector only
virtual TrackRef dytTrack() const
std::vector< MuonChamberMatch > muMatches_
Information on matching between tracks and segments.
virtual void setOuterTrack(const TrackRef &t)
set reference to Track
bool overlap(const Candidate &) const override
check overlap with another candidate
virtual MuonTrackType tunePMuonBestTrackType() const
float pullDyDz(int station, int muonSubdetId, ArbitrationType type=SegmentAndTrackArbitration, bool includeSegmentError=true) const
static const unsigned int CaloMuon
uint64_t selectors_
selector bitmap
void setIsolation(const MuonIsolation &isoR03, const MuonIsolation &isoR05)
virtual void setBestTrack(MuonTrackType muonType)
virtual void setTrack(const TrackRef &t)
float segmentDxDz(int station, int muonSubdetId, ArbitrationType type=SegmentAndTrackArbitration) const
Structure Point Contains parameters of Gaussian fits to DMRs.
static const unsigned int GEMMuon
float trackDxDzErr(int station, int muonSubdetId, ArbitrationType type=SegmentAndTrackArbitration) const
float trackDist(int station, int muonSubdetId, ArbitrationType type=SegmentAndTrackArbitration) const
int nDigisInStation(int station, int muonSubdetId) const
of digis in a given station layer
float segmentXErr(int station, int muonSubdetId, ArbitrationType type=SegmentAndTrackArbitration) const
unsigned int type() const
virtual void setPFP4(const reco::Candidate::LorentzVector &p4_)
virtual TrackRef tunePMuonBestTrack() const
TrackRef globalTrack_
reference to Track reconstructed in both tracked and muon detector
MuonTrackType bestTunePTrackType_
reference to the Track chosen to assign the momentum value to the muon by PF
MuonTrackType
map for Global Muon refitters
const MuonPFIsolation & pfMeanDRIsoProfileR03() const
static const unsigned int StandAloneMuon
bool isCaloMuon() const override
float dDxDz(int station, int muonSubdetId, ArbitrationType type=SegmentAndTrackArbitration) const
unsigned int RPClayerMask(ArbitrationType type=RPCHitAndTrackArbitration) const
std::pair< TrackRef, Muon::MuonTrackType > MuonTrackTypePair
void setMatches(const std::vector< MuonChamberMatch > &matches)
set muon matching information
bool hasShowerInStation(int station, int muonSubdetId, int nDtDigisCut=20, int nCscDigisCut=36) const
tag a shower in a given station layer
bool isIsolationValid() const
MuonPFIsolation pfIsoMeanDRR03_
Muon * clone() const override
create a clone
virtual void setGlobalTrack(const TrackRef &t)
set reference to Track
float caloCompatibility() const
const MuonIsolation & isolationR03() const
TrackRef muonTrackFromMap(const MuonTrackType &type) const
math::XYZPoint Point
point in the space
virtual TrackRef globalTrack() const
reference to Track reconstructed in both tracked and muon detector
bool passed(Selector selection) const
float pullX(int station, int muonSubdetId, ArbitrationType type=SegmentAndTrackArbitration, bool includeSegmentError=true) const