CMS 3D CMS Logo

TtSemiLRSignalSelObservables.h

Go to the documentation of this file.
00001 #ifndef TtSemiLRSignalSelObservables_h
00002 #define TtSemiLRSignalSelObservables_h
00003 
00004 #include "FWCore/Framework/interface/EventSetup.h"
00005 #include "FWCore/Framework/interface/Event.h"
00006 #include "FWCore/MessageLogger/interface/MessageLogger.h"
00007 #include "FWCore/Utilities/interface/Exception.h"
00008 
00009 #include <iostream>
00010 #include <string>
00011 #include <vector>
00012 
00013 #include "TLorentzVector.h"
00014 #include "TVector.h"
00015 #include "TVector3.h"
00016 #include "TVectorD.h"
00017 
00018 #include "TMatrix.h"
00019 #include "TMatrixDSymEigen.h"
00020 #include "TMatrixDSym.h"
00021 #include "TMatrixTSym.h"
00022 
00023 #include "AnalysisDataFormats/TopObjects/interface/TtSemiEvtSolution.h"
00024 #include "TopQuarkAnalysis/TopTools/interface/MEzCalculator.h"
00025 #include "DataFormats/PatCandidates/interface/Jet.h"
00026 
00027 const double PI=3.14159265;
00028 
00029 using namespace std;
00030 
00031 class TtSemiLRSignalSelObservables{
00032   
00033  public:
00034   
00035   TtSemiLRSignalSelObservables();
00036   ~TtSemiLRSignalSelObservables();      
00037   
00038   void  operator()(TtSemiEvtSolution&, const std::vector<pat::Jet>&);
00039   
00040  private:
00041   
00042   vector<pair<unsigned int,double> > evtselectVarVal;
00043   
00044   // compare two jets in ET
00045   struct CompareET {
00046     bool operator()( pat::Jet j1, pat::Jet j2 ) const
00047     {
00048       return j1.et() > j2.et();
00049     }
00050   };
00051   
00052   CompareET EtComparator;
00053   
00054   // compare two jets in bdisc
00055   struct CompareBdisc {
00056     bool operator()( pat::Jet j1, pat::Jet j2 ) const
00057     {
00058       return j1.bDiscriminator("trackCountingJetTags") > j2.bDiscriminator("trackCountingJetTags");
00059     }
00060   };
00061   
00062   CompareBdisc BdiscComparator;
00063   
00064   // compare two double
00065   struct CompareDouble {
00066     bool operator()( double j1, double j2 ) const
00067     {
00068       return j1 > j2 ;
00069     }
00070   };
00071   
00072   CompareDouble dComparator;
00073 };
00074 
00075 #endif

Generated on Tue Jun 9 17:48:06 2009 for CMSSW by  doxygen 1.5.4