CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_1_8_patch13/src/TopQuarkAnalysis/TopEventSelection/plugins/TtSemiLepSignalSelMVAComputer.h

Go to the documentation of this file.
00001 #ifndef TtSemiLepSignalSelMVAComputer_h
00002 #define TtSemiLepSignalSelMVAComputer_h
00003 
00004 #include "FWCore/Framework/interface/Event.h"
00005 #include "FWCore/Framework/interface/EDProducer.h"
00006 
00007 #include "PhysicsTools/MVAComputer/interface/HelperMacros.h"
00008 #include "PhysicsTools/MVAComputer/interface/MVAComputerCache.h"
00009 
00010 #include "DataFormats/Math/interface/LorentzVector.h"
00011 
00012 #ifndef TtSemiLepSignalSelMVARcd_defined  // to avoid conflicts with the TopSemiLepLepSignalSelMVATrainer
00013 #define TtSemiLepSignalSelMVARcd_defined
00014 MVA_COMPUTER_CONTAINER_DEFINE(TtSemiLepSignalSelMVA);  // defines TopSemiLepLepSignalSelMVARcd
00015 #endif
00016 
00017 class TtSemiLepSignalSelMVAComputer : public edm::EDProducer {
00018 
00019  public:
00020   
00021   explicit TtSemiLepSignalSelMVAComputer(const edm::ParameterSet&);
00022   ~TtSemiLepSignalSelMVAComputer();
00023   
00024  private:
00025 
00026   virtual void beginJob();
00027   virtual void produce(edm::Event& evt, const edm::EventSetup& setup);
00028   virtual void endJob();
00029 
00030   double DeltaPhi(math::XYZTLorentzVector v1, math::XYZTLorentzVector v2);
00031   double DeltaR(math::XYZTLorentzVector v1, math::XYZTLorentzVector v2);
00032 
00033   edm::InputTag muons_;
00034   edm::InputTag jets_;
00035   edm::InputTag METs_;
00036   edm::InputTag electrons_;
00037 
00038   PhysicsTools::MVAComputerCache mvaComputer;
00039 
00040   double DiscSel;
00041   
00042 };
00043 
00044 #endif