File indexing completed on 2024-04-06 12:18:23
0001 #ifndef HLTMCTRUTH_H
0002 #define HLTMCTRUTH_H
0003
0004 #include <map>
0005 #include <vector>
0006
0007 #include <TChain.h>
0008 #include <TFile.h>
0009 #include <TH1.h>
0010 #include <TH2.h>
0011 #include <TNamed.h>
0012 #include <TROOT.h>
0013
0014 #include "DataFormats/Candidate/interface/Candidate.h"
0015 #include "DataFormats/METReco/interface/CaloMETCollection.h"
0016 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0017 #include "SimDataFormats/GeneratorProducts/interface/HepMCProduct.h"
0018 #include "SimDataFormats/PileupSummaryInfo/interface/PileupSummaryInfo.h"
0019 #include "SimDataFormats/Track/interface/SimTrack.h"
0020 #include "SimDataFormats/Vertex/interface/SimVertex.h"
0021
0022 typedef std::vector<std::string> MyStrings;
0023
0024
0025
0026
0027
0028
0029
0030 class HLTMCtruth {
0031 public:
0032 HLTMCtruth();
0033
0034 void setup(const edm::ParameterSet& pSet, TTree* tree);
0035
0036
0037 void analyze(const edm::Handle<reco::CandidateView>& mctruth,
0038 const double& pthat,
0039 const double& weight,
0040 const edm::Handle<std::vector<SimTrack> >& simTracks,
0041 const edm::Handle<std::vector<SimVertex> >& simVertices,
0042 const edm::Handle<std::vector<PileupSummaryInfo> >& PupInfo,
0043 TTree* tree);
0044
0045 private:
0046
0047 float *mcvx, *mcvy, *mcvz, *mcpt, *mceta, *mcphi;
0048 int *mcpid, *mcstatus;
0049 int nmcpart, nmu3, nel3, nab, nbb, nwenu, nwmunu, nzee, nzmumu;
0050 int npubx0, npuvertbx0;
0051 float pthatf, weightf, weightsignf;
0052 float ptEleMax, ptMuMax;
0053
0054 bool _Monte, _Debug, _Gen;
0055 };
0056
0057 #endif