CMS 3D CMS Logo

List of all members | Public Member Functions | Private Attributes
susybsm::HSCParticle Class Reference

#include <HSCParticle.h>

Public Member Functions

HSCPCaloInfoRef caloInfoRef () const
 
bool hasCaloInfo () const
 
bool hasMTMuonRef () const
 
bool hasMuonRef () const
 
bool hasRpcInfo () const
 
bool hasTrackIsoRef () const
 
bool hasTrackRef () const
 
 HSCParticle ()
 
reco::MuonRef MTMuonRef () const
 
reco::MuonRef muonRef () const
 
float p () const
 
float pt () const
 
const RPCBetaMeasurementrpc () const
 
void setCaloInfo (const HSCPCaloInfoRef &data)
 
void setMTMuon (const reco::MuonRef &data)
 
void setMuon (const reco::MuonRef &data)
 
void setRpc (const RPCBetaMeasurement &data)
 
void setTrack (const reco::TrackRef &data)
 
void setTrackIso (const reco::TrackRef &data)
 
reco::TrackRef trackIsoRef () const
 
reco::TrackRef trackRef () const
 
int type () const
 

Private Attributes

HSCPCaloInfoRef caloInfoRef_
 
reco::MuonRef MTMuonRef_
 
reco::MuonRef muonRef_
 
RPCBetaMeasurement rpc_
 
reco::TrackRef trackIsoRef_
 
reco::TrackRef trackRef_
 

Detailed Description

Definition at line 42 of file HSCParticle.h.

Constructor & Destructor Documentation

◆ HSCParticle()

susybsm::HSCParticle::HSCParticle ( )
inline

Definition at line 45 of file HSCParticle.h.

45 {}

Member Function Documentation

◆ caloInfoRef()

HSCPCaloInfoRef susybsm::HSCParticle::caloInfoRef ( ) const
inline

Definition at line 68 of file HSCParticle.h.

References caloInfoRef_.

68 { return caloInfoRef_; }
HSCPCaloInfoRef caloInfoRef_
Definition: HSCParticle.h:81

◆ hasCaloInfo()

bool susybsm::HSCParticle::hasCaloInfo ( ) const
inline

Definition at line 53 of file HSCParticle.h.

References caloInfoRef_, and edm::Ref< C, T, F >::isNonnull().

53 { return caloInfoRef_.isNonnull(); }
bool isNonnull() const
Checks for non-null.
Definition: Ref.h:238
HSCPCaloInfoRef caloInfoRef_
Definition: HSCParticle.h:81

◆ hasMTMuonRef()

bool susybsm::HSCParticle::hasMTMuonRef ( ) const
inline

Definition at line 49 of file HSCParticle.h.

References edm::Ref< C, T, F >::isNonnull(), and MTMuonRef_.

49 { return MTMuonRef_.isNonnull(); }
reco::MuonRef MTMuonRef_
Definition: HSCParticle.h:80
bool isNonnull() const
Checks for non-null.
Definition: Ref.h:238

◆ hasMuonRef()

bool susybsm::HSCParticle::hasMuonRef ( ) const
inline

Definition at line 48 of file HSCParticle.h.

References edm::Ref< C, T, F >::isNonnull(), and muonRef_.

Referenced by p(), pt(), and type().

48 { return muonRef_.isNonnull(); }
bool isNonnull() const
Checks for non-null.
Definition: Ref.h:238
reco::MuonRef muonRef_
Definition: HSCParticle.h:79

◆ hasRpcInfo()

bool susybsm::HSCParticle::hasRpcInfo ( ) const
inline

Definition at line 52 of file HSCParticle.h.

References susybsm::RPCBetaMeasurement::beta, and rpc_.

52 { return rpc_.beta != -9999; }
RPCBetaMeasurement rpc_
Definition: HSCParticle.h:83

◆ hasTrackIsoRef()

bool susybsm::HSCParticle::hasTrackIsoRef ( ) const
inline

Definition at line 51 of file HSCParticle.h.

References edm::Ref< C, T, F >::isNonnull(), and trackIsoRef_.

51 { return trackIsoRef_.isNonnull(); }
bool isNonnull() const
Checks for non-null.
Definition: Ref.h:238
reco::TrackRef trackIsoRef_
Definition: HSCParticle.h:78

◆ hasTrackRef()

bool susybsm::HSCParticle::hasTrackRef ( ) const
inline

Definition at line 50 of file HSCParticle.h.

References edm::Ref< C, T, F >::isNonnull(), and trackRef_.

Referenced by p(), pt(), and type().

50 { return trackRef_.isNonnull(); }
bool isNonnull() const
Checks for non-null.
Definition: Ref.h:238
reco::TrackRef trackRef_
Definition: HSCParticle.h:77

◆ MTMuonRef()

reco::MuonRef susybsm::HSCParticle::MTMuonRef ( ) const
inline

Definition at line 67 of file HSCParticle.h.

References MTMuonRef_.

67 { return MTMuonRef_; }
reco::MuonRef MTMuonRef_
Definition: HSCParticle.h:80

◆ muonRef()

reco::MuonRef susybsm::HSCParticle::muonRef ( ) const
inline

Definition at line 66 of file HSCParticle.h.

References muonRef_.

Referenced by p(), pt(), and type().

66 { return muonRef_; }
reco::MuonRef muonRef_
Definition: HSCParticle.h:79

◆ p()

float susybsm::HSCParticle::p ( ) const

Definition at line 20 of file HSCParticle.cc.

References hasMuonRef(), hasTrackRef(), susybsm::HSCParticleType::innerTrack, muonRef(), susybsm::HSCParticleType::standAloneMuon, and trackRef().

Referenced by Electron.Electron::ptErr().

20  {
21  if (hasMuonRef() && muonRef()->combinedMuon().isNonnull()) {
22  return muonRef()->combinedMuon()->p();
23  } else if (hasMuonRef() && muonRef()->innerTrack().isNonnull()) {
24  return muonRef()->innerTrack()->p();
25  } else if (hasMuonRef() && muonRef()->standAloneMuon().isNonnull()) {
26  return muonRef()->standAloneMuon()->p();
27  } else if (hasTrackRef() && trackRef().isNonnull()) {
28  return trackRef()->p();
29  } else
30  return 0.0f;
31  }
reco::TrackRef trackRef() const
Definition: HSCParticle.h:64
bool hasTrackRef() const
Definition: HSCParticle.h:50
bool hasMuonRef() const
Definition: HSCParticle.h:48
reco::MuonRef muonRef() const
Definition: HSCParticle.h:66

◆ pt()

float susybsm::HSCParticle::pt ( ) const

Definition at line 33 of file HSCParticle.cc.

References hasMuonRef(), hasTrackRef(), susybsm::HSCParticleType::innerTrack, muonRef(), susybsm::HSCParticleType::standAloneMuon, and trackRef().

Referenced by Particle.Particle::__str__(), ZMuMuRochCorAnalyzer.DiMuon::__str__(), DiObject.DiMuon::__str__(), Photon.Photon::calScaledIsoValueExp(), Photon.Photon::calScaledIsoValueLin(), Photon.Photon::calScaledIsoValueQuadr(), Electron.Electron::mvaIDLoose(), Electron.Electron::mvaIDRun2(), Electron.Electron::mvaIDTight(), Electron.Electron::ptErr(), ntupleDataFormat.Track::ptPull(), Lepton.Lepton::relIso(), Lepton.Lepton::relIsoFromEA(), Lepton.Lepton::relIsoR(), and Jet.Jet::setCorrP4().

33  {
34  if (hasMuonRef() && muonRef()->combinedMuon().isNonnull()) {
35  return muonRef()->combinedMuon()->pt();
36  } else if (hasMuonRef() && muonRef()->innerTrack().isNonnull()) {
37  return muonRef()->innerTrack()->pt();
38  } else if (hasMuonRef() && muonRef()->standAloneMuon().isNonnull()) {
39  return muonRef()->standAloneMuon()->pt();
40  } else if (hasTrackRef() && trackRef().isNonnull()) {
41  return trackRef()->pt();
42  } else
43  return 0.0f;
44  }
reco::TrackRef trackRef() const
Definition: HSCParticle.h:64
bool hasTrackRef() const
Definition: HSCParticle.h:50
bool hasMuonRef() const
Definition: HSCParticle.h:48
reco::MuonRef muonRef() const
Definition: HSCParticle.h:66

◆ rpc()

const RPCBetaMeasurement& susybsm::HSCParticle::rpc ( ) const
inline

Definition at line 69 of file HSCParticle.h.

References rpc_.

69 { return rpc_; }
RPCBetaMeasurement rpc_
Definition: HSCParticle.h:83

◆ setCaloInfo()

void susybsm::HSCParticle::setCaloInfo ( const HSCPCaloInfoRef data)
inline

Definition at line 61 of file HSCParticle.h.

References caloInfoRef_, and data.

61 { caloInfoRef_ = data; }
HSCPCaloInfoRef caloInfoRef_
Definition: HSCParticle.h:81
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:80

◆ setMTMuon()

void susybsm::HSCParticle::setMTMuon ( const reco::MuonRef data)
inline

Definition at line 57 of file HSCParticle.h.

References data, and MTMuonRef_.

57 { MTMuonRef_ = data; }
reco::MuonRef MTMuonRef_
Definition: HSCParticle.h:80
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:80

◆ setMuon()

void susybsm::HSCParticle::setMuon ( const reco::MuonRef data)
inline

Definition at line 56 of file HSCParticle.h.

References data, and muonRef_.

56 { muonRef_ = data; }
reco::MuonRef muonRef_
Definition: HSCParticle.h:79
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:80

◆ setRpc()

void susybsm::HSCParticle::setRpc ( const RPCBetaMeasurement data)
inline

Definition at line 60 of file HSCParticle.h.

References data, and rpc_.

60 { rpc_ = data; }
RPCBetaMeasurement rpc_
Definition: HSCParticle.h:83
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:80

◆ setTrack()

void susybsm::HSCParticle::setTrack ( const reco::TrackRef data)
inline

Definition at line 58 of file HSCParticle.h.

References data, and trackRef_.

58 { trackRef_ = data; }
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:80
reco::TrackRef trackRef_
Definition: HSCParticle.h:77

◆ setTrackIso()

void susybsm::HSCParticle::setTrackIso ( const reco::TrackRef data)
inline

Definition at line 59 of file HSCParticle.h.

References data, and trackIsoRef_.

59 { trackIsoRef_ = data; }
reco::TrackRef trackIsoRef_
Definition: HSCParticle.h:78
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:80

◆ trackIsoRef()

reco::TrackRef susybsm::HSCParticle::trackIsoRef ( ) const
inline

Definition at line 65 of file HSCParticle.h.

References trackIsoRef_.

65 { return trackIsoRef_; }
reco::TrackRef trackIsoRef_
Definition: HSCParticle.h:78

◆ trackRef()

reco::TrackRef susybsm::HSCParticle::trackRef ( ) const
inline

Definition at line 64 of file HSCParticle.h.

References trackRef_.

Referenced by p(), and pt().

64 { return trackRef_; }
reco::TrackRef trackRef_
Definition: HSCParticle.h:77

◆ type()

int susybsm::HSCParticle::type ( ) const

Definition at line 5 of file HSCParticle.cc.

References susybsm::HSCParticleType::globalMuon, hasMuonRef(), hasTrackRef(), susybsm::HSCParticleType::innerTrack, susybsm::HSCParticleType::matchedStandAloneMuon, muonRef(), susybsm::HSCParticleType::standAloneMuon, susybsm::HSCParticleType::trackerMuon, and susybsm::HSCParticleType::unknown.

Member Data Documentation

◆ caloInfoRef_

HSCPCaloInfoRef susybsm::HSCParticle::caloInfoRef_
private

Definition at line 81 of file HSCParticle.h.

Referenced by caloInfoRef(), hasCaloInfo(), and setCaloInfo().

◆ MTMuonRef_

reco::MuonRef susybsm::HSCParticle::MTMuonRef_
private

Definition at line 80 of file HSCParticle.h.

Referenced by hasMTMuonRef(), MTMuonRef(), and setMTMuon().

◆ muonRef_

reco::MuonRef susybsm::HSCParticle::muonRef_
private

Definition at line 79 of file HSCParticle.h.

Referenced by hasMuonRef(), muonRef(), and setMuon().

◆ rpc_

RPCBetaMeasurement susybsm::HSCParticle::rpc_
private

Definition at line 83 of file HSCParticle.h.

Referenced by hasRpcInfo(), rpc(), and setRpc().

◆ trackIsoRef_

reco::TrackRef susybsm::HSCParticle::trackIsoRef_
private

Definition at line 78 of file HSCParticle.h.

Referenced by hasTrackIsoRef(), setTrackIso(), and trackIsoRef().

◆ trackRef_

reco::TrackRef susybsm::HSCParticle::trackRef_
private

Definition at line 77 of file HSCParticle.h.

Referenced by hasTrackRef(), setTrack(), and trackRef().