00001 #ifndef TtHadEvtSolutionMaker_h 00002 #define TtHadEvtSolutionMaker_h 00003 // 00004 // $Id: TtHadEvtSolutionMaker.h,v 1.8 2010/02/15 13:41:06 snaumann Exp $ 00005 // adapted TtSemiEvtSolutionMaker.h, v1.13 2007/07/06 02:49:42 lowette Exp $ 00006 // for fully hadronic channel. 00007 00008 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00009 #include "FWCore/Utilities/interface/InputTag.h" 00010 00011 #include "FWCore/Framework/interface/EDProducer.h" 00012 #include "FWCore/Framework/interface/Event.h" 00013 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00014 #include "FWCore/Utilities/interface/InputTag.h" 00015 00016 #include <vector> 00017 #include <string> 00018 00019 00020 class TtFullHadKinFitter; 00021 class TtHadSimpleBestJetComb; 00022 class TtHadLRJetCombObservables; 00023 class TtHadLRJetCombCalc; 00024 class TtHadLRSignalSelObservables; 00025 class TtHadLRSignalSelCalc; 00026 00027 class TtHadEvtSolutionMaker : public edm::EDProducer { 00028 00029 public: 00030 00031 explicit TtHadEvtSolutionMaker(const edm::ParameterSet & iConfig); 00032 ~TtHadEvtSolutionMaker(); 00033 00034 virtual void produce(edm::Event & iEvent, const edm::EventSetup & iSetup); 00035 00036 private: 00037 // configurables 00038 00039 edm::InputTag jetSrc_; 00040 int jetCorrScheme_; 00041 std::string lrSignalSelFile_, lrJetCombFile_; 00042 bool addLRSignalSel_, addLRJetComb_, doKinFit_, matchToGenEvt_; 00043 int matchingAlgo_; 00044 bool useMaxDist_, useDeltaR_; 00045 double maxDist_; 00046 int maxNrIter_; 00047 double maxDeltaS_, maxF_; 00048 int jetParam_; 00049 std::vector<int> lrSignalSelObs_, lrJetCombObs_; 00050 std::vector<unsigned int> constraints_; 00051 // tools 00052 TtFullHadKinFitter * myKinFitter; 00053 TtHadSimpleBestJetComb * mySimpleBestJetComb; 00054 TtHadLRJetCombObservables * myLRJetCombObservables; 00055 TtHadLRJetCombCalc * myLRJetCombCalc; 00056 TtHadLRSignalSelObservables * myLRSignalSelObservables; 00057 TtHadLRSignalSelCalc * myLRSignalSelCalc; 00058 }; 00059 00060 00061 #endif