00001 // 00002 // $Id: LeptonTranslatorBase.h,v 1.1 2011/05/26 09:46:53 mseidel Exp $ 00003 // 00004 00020 #ifndef HitFit_LeptonTranslatorBase_h 00021 #define HitFit_LeptonTranslatorBase_h 00022 00023 #include "TopQuarkAnalysis/TopHitFit/interface/EtaDepResolution.h" 00024 #include "TopQuarkAnalysis/TopHitFit/interface/Lepjets_Event_Lep.h" 00025 #include "TopQuarkAnalysis/TopHitFit/interface/fourvec.h" 00026 00027 namespace hitfit{ 00028 00029 00045 template <class ALepton> 00046 class LeptonTranslatorBase { 00047 00048 00049 public: 00050 00054 LeptonTranslatorBase(); 00055 00062 LeptonTranslatorBase(const std::string& ifile); 00063 00067 ~LeptonTranslatorBase(); 00068 00081 Lepjets_Event_Lep operator()(const ALepton& lepton, 00082 int type = hitfit::lepton_label, 00083 bool useObjEmbRes = false); 00084 00088 const EtaDepResolution& resolution() const; 00089 00096 bool CheckEta(const ALepton& lepton) const; 00097 00098 00099 private: 00100 00104 EtaDepResolution resolution_; 00105 00106 }; 00107 00108 } // namespace hitfit 00109 00110 #endif // #ifndef HitFit_LeptonTranslatorBase_h