Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:31:20

0001 //
0002 // Author:  Jan Heyninck
0003 // Created: Tue Apr  3 17:33:23 PDT 2007
0004 //
0005 //
0006 
0007 #ifndef TtSemiLRJetCombObservables_h
0008 #define TtSemiLRJetCombObservables_h
0009 
0010 /**
0011   \class    TtSemiLRJetCombObservables TtSemiLRJetCombObservables.h "TopQuarkAnalysis/TopLeptonSelection/interface/TtSemiLRJetCombObservables.h"
0012   \brief    Steering class for the overall top-lepton likelihood
0013 
0014    In this TtSemiLRJetCombObservables class a list of observables is calculated that might be used in the evaluation of the
0015    combined Likelihood ratio to distinguish between correct and wrong jet combinations
0016   // obs1 :
0017   // obs2 :
0018   // obs3 :
0019   // ...
0020 
0021   \author   Jan Heyninck
0022   \version  $Id: TtSemiLRJetCombObservables.h,v 1.6 2008/04/15 10:13:43 rwolf Exp $
0023 */
0024 
0025 #include "FWCore/Framework/interface/EventSetup.h"
0026 #include "FWCore/Framework/interface/Event.h"
0027 #include "FWCore/Framework/interface/ConsumesCollector.h"
0028 #include "FWCore/MessageLogger/interface/MessageLogger.h"
0029 #include "FWCore/Utilities/interface/Exception.h"
0030 
0031 // General C++ stuff
0032 #include <iostream>
0033 #include <string>
0034 #include <vector>
0035 #include <Math/VectorUtil.h>
0036 
0037 #include "AnalysisDataFormats/TopObjects/interface/TtSemiEvtSolution.h"
0038 
0039 class TtSemiLRJetCombObservables {
0040 public:
0041   typedef std::pair<unsigned int, bool> IntBoolPair;
0042 
0043   TtSemiLRJetCombObservables(edm::ConsumesCollector&& iC,
0044                              const edm::EDGetTokenT<std::vector<pat::Jet> >& jetSourceToken);
0045   ~TtSemiLRJetCombObservables();
0046 
0047   std::vector<IntBoolPair> operator()(TtSemiEvtSolution&, const edm::Event& iEvent, bool matchOnly = false);
0048   //void  operator()(TtSemiEvtSolution&);
0049 
0050 private:
0051   typedef std::pair<unsigned int, double> IntDblPair;
0052   //std::vector<std::pair<unsigned int,double> > jetCombVarVal;
0053 
0054   edm::EDGetTokenT<std::vector<pat::Jet> > jetSourceToken_;
0055   edm::EDGetTokenT<TtGenEvent> genEvtToken_;
0056 
0057   std::vector<IntDblPair> evtselectVarVal;
0058   std::vector<IntBoolPair> evtselectVarMatch;
0059 };
0060 
0061 #endif