00001 #ifndef TMBTRefs_H 00002 #define TMBTRefs_H 00003 00005 // // 00006 // File: TMBTRefs.hpp // 00007 // // 00008 // Purpose: Container of TRefArray's for related TMB physics objects // 00009 // // 00010 // Created: 22-MAY-2002 Serban Protopopescu // 00011 // // 00013 00014 #ifndef ROOT_TObject 00015 #include "TObject.h" 00016 #endif 00017 #ifndef ROOT_TRef 00018 #include "TRef.h" 00019 #endif 00020 #ifndef ROOT_TRefArray 00021 #include "TRefArray.h" 00022 #endif 00023 00024 #include "tmb_tree/TMBEMCluster.hpp" 00025 #include "tmb_tree/TMBMuon.hpp" 00026 #include "tmb_tree/TMBTau.hpp" 00027 #include "tmb_tree/TMBMCpart.hpp" 00028 #include "tmb_tree/TMBJet.hpp" 00029 00030 class TMBTRefs : public TObject { 00031 00032 private: 00033 00034 TRefArray _ems; 00035 TRefArray _taus; 00036 TRefArray _muons; 00037 TRefArray _mcparts; 00038 TRefArray _jets; 00039 00040 public: 00041 00042 TMBTRefs(){} 00043 TMBTRefs(TRefArray* ems, TRefArray* muons, TRefArray* taus, TRefArray* jets, 00044 TRefArray* mcparts); 00045 ~TMBTRefs(){;} 00046 00047 // get pointers 00048 Int_t NEmcls()const {return _ems.GetLast()+1;} 00049 const TMBEMCluster* getEmcl(Int_t ie) const {return (TMBEMCluster*)_ems.At(ie);} 00050 Int_t NTaus() const {return _taus.GetLast()+1;} 00051 const TMBTau* getTau(Int_t it) const {return (TMBTau*)_taus.At(it);} 00052 Int_t NJets() const {return _jets.GetLast()+1;} 00053 const TMBJet* getJet(Int_t ij) const {return (TMBJet*)_jets.At(ij);} 00054 Int_t NMuons() const {return _muons.GetLast()+1;} 00055 const TMBMuon* getMuon(Int_t im) const {return (TMBMuon*)_muons.At(im);} 00056 Int_t NMCparts() const {return _mcparts.GetLast()+1;} 00057 const TMBMCpart* getTMBMCpart(Int_t imc) const {return (TMBMCpart*)_mcparts.At(imc);} 00058 00059 // lepton matches to MC 00060 const TMBMCpart* mcmatch(const TMBEMCluster* emcl) const ; 00061 const TMBMCpart* mcmatch(const TMBTau* tau) const ; 00062 const TMBMCpart* mcmatch(const TMBMuon* muon) const ; 00063 00064 // check a TRef is in this 00065 bool isInThis(TObject* objptr) const; 00066 ClassDef(TMBTRefs, 2) 00067 }; 00068 00069 #endif
1.3.4