00001 #include "AnalysisDataFormats/TopObjects/interface/TtGenEvent.h" 00002 #include "TopQuarkAnalysis/TopJetCombination/interface/TtSemiLepJetComb.h" 00003 00004 00005 TtSemiLepJetComb::TtSemiLepJetComb() 00006 { 00007 } 00008 00009 TtSemiLepJetComb::TtSemiLepJetComb(const std::vector<pat::Jet>& jets, const std::vector<int>& combination, 00010 const math::XYZTLorentzVector& lepton, const pat::MET& neutrino) 00011 { 00012 // receive right jet association 00013 // from jet-parton matching 00014 hadQJet_ = jets[ combination[TtSemiLepEvtPartons::LightQ ] ]; 00015 hadQBarJet_ = jets[ combination[TtSemiLepEvtPartons::LightQBar] ]; 00016 hadBJet_ = jets[ combination[TtSemiLepEvtPartons::HadB ] ]; 00017 lepBJet_ = jets[ combination[TtSemiLepEvtPartons::LepB ] ]; 00018 lepton_ = lepton; 00019 neutrino_ = neutrino; 00020 // create mother candidates from 00021 // final-state candidates 00022 deduceMothers(); 00023 } 00024 00025 00026 TtSemiLepJetComb::~TtSemiLepJetComb() 00027 { 00028 } 00029 00030 void 00031 TtSemiLepJetComb::deduceMothers() 00032 { 00033 hadW_ = hadQJet_.p4() + hadQBarJet_.p4(); 00034 lepW_ = lepton_ + neutrino_ .p4(); 00035 hadTop_ = hadW_ + hadBJet_ .p4(); 00036 lepTop_ = lepW_ + lepBJet_ .p4(); 00037 }