#ifndef _HEPEVTCONVERTER_H_ #define _HEPEVTCONVERTER_H_ /* ---- Delphes ---- A Fast Simulator for general purpose LHC detector S. Ovyn ~~~~ severine.ovyn@uclouvain.be Center for Particle Physics and Phenomenology (CP3) Universite Catholique de Louvain (UCL) Louvain-la-Neuve, Belgium */ /// \file SmearUtil.h /// \brief HEPEVTConverter class, and some generic definitions #include #include #include #include #include #include "TLorentzVector.h" #include "TRandom.h" #include "Utilities/ExRootAnalysis/interface/BlockClasses.h" #include "Utilities/ExRootAnalysis/interface/TSimpleArray.h" #include "Utilities/CDFCones/interface/PhysicsTower.h" #include "interface/DataConverter.h" using namespace std; //------------------------------------------------------------------------------ // struct HEPEvent { Int_t Nevhep; Int_t Nhep; Int_t *Idhep; //[Nhep] Int_t *Jsmhep; //[Nhep] Int_t *Jsdhep; //[Nhep] Float_t *Phep; //[Nhep][5] Float_t *Vhep; //[Nhep][4] Int_t Irun; Int_t Ievt; Float_t Weight; Float_t Xsecn; Int_t Ifilter; Int_t Nparam; Float_t *Param; //[Nparam] }; // // class HEPTreeReader { public: HEPTreeReader(TTree *tree, HEPEvent *event); ~HEPTreeReader(); Long64_t GetEntries() const { return fChain ? static_cast(fChain->GetEntries()) : 0; } Bool_t ReadEntry(Long64_t element); private: void Notify(); TTree *fChain; // pointer to the analyzed TTree or TChain Int_t fCurrentTree; // current Tree number in a TChain HEPEvent *fEvent; deque< pair > fBranches; }; class HEPEVTConverter : public DataConverter { public: HEPEVTConverter(const string& inputFileList, const string& outputFileName); }; #endif