00001 #include "DataFormats/TauReco/interface/CaloTau.h" 00002 00003 using namespace reco; 00004 00005 CaloTau::CaloTau() { 00006 maximumHCALhitEt_ = NAN; 00007 leadTracksignedSipt_=NAN; 00008 leadTrackHCAL3x3hitsEtSum_=NAN; 00009 leadTrackHCAL3x3hottesthitDEta_=NAN; 00010 signalTracksInvariantMass_ = NAN; 00011 TracksInvariantMass_ = NAN; 00012 isolationTracksPtSum_=NAN; 00013 isolationECALhitsEtSum_=NAN; 00014 } 00015 00016 CaloTau::CaloTau(Charge q,const LorentzVector& p4,const Point& vtx) : BaseTau(q,p4,vtx) { 00017 maximumHCALhitEt_ = NAN; 00018 leadTracksignedSipt_ =NAN; 00019 leadTrackHCAL3x3hitsEtSum_=NAN; 00020 leadTrackHCAL3x3hottesthitDEta_=NAN; 00021 signalTracksInvariantMass_ = NAN; 00022 TracksInvariantMass_ = NAN; 00023 isolationTracksPtSum_=NAN; 00024 isolationECALhitsEtSum_=NAN; 00025 } 00026 00027 CaloTau* CaloTau::clone()const{return new CaloTau(*this);} 00028 00029 const CaloTauTagInfoRef& CaloTau::caloTauTagInfoRef()const{return CaloTauTagInfoRef_;} 00030 void CaloTau::setcaloTauTagInfoRef(const CaloTauTagInfoRef x) {CaloTauTagInfoRef_=x;} 00031 00032 const CaloJetRef CaloTau::rawJetRef() const { 00033 return this->caloTauTagInfoRef()->calojetRef(); 00034 } 00035 00036 float CaloTau::leadTracksignedSipt()const{return leadTracksignedSipt_;} 00037 void CaloTau::setleadTracksignedSipt(const float& x){leadTracksignedSipt_=x;} 00038 00039 float CaloTau::leadTrackHCAL3x3hitsEtSum()const{return leadTrackHCAL3x3hitsEtSum_;} 00040 void CaloTau::setleadTrackHCAL3x3hitsEtSum(const float& x){leadTrackHCAL3x3hitsEtSum_=x;} 00041 00042 float CaloTau::leadTrackHCAL3x3hottesthitDEta()const{return leadTrackHCAL3x3hottesthitDEta_;} 00043 void CaloTau::setleadTrackHCAL3x3hottesthitDEta(const float& x){leadTrackHCAL3x3hottesthitDEta_=x;} 00044 00045 float CaloTau::signalTracksInvariantMass()const{return signalTracksInvariantMass_;} 00046 void CaloTau::setsignalTracksInvariantMass(const float& x){signalTracksInvariantMass_=x;} 00047 00048 float CaloTau::TracksInvariantMass()const{return TracksInvariantMass_;} 00049 void CaloTau::setTracksInvariantMass(const float& x){TracksInvariantMass_=x;} 00050 00051 float CaloTau::isolationTracksPtSum()const{return isolationTracksPtSum_;} 00052 void CaloTau::setisolationTracksPtSum(const float& x){isolationTracksPtSum_=x;} 00053 00054 float CaloTau::isolationECALhitsEtSum()const{return isolationECALhitsEtSum_;} 00055 void CaloTau::setisolationECALhitsEtSum(const float& x){isolationECALhitsEtSum_=x;} 00056 00057 float CaloTau::maximumHCALhitEt()const{return maximumHCALhitEt_;} 00058 void CaloTau::setmaximumHCALhitEt(const float& x){maximumHCALhitEt_=x;} 00059 00060 bool CaloTau::overlap(const reco::Candidate& theCand)const{ 00061 const reco::RecoCandidate* theRecoCand=dynamic_cast<const RecoCandidate *>(&theCand); 00062 return (theRecoCand!=0 && (checkOverlap(track(),theRecoCand->track()))); 00063 }