[271] | 1 | #ifndef _LHCOCONVERTER_H_
|
---|
| 2 | #define _LHCOCONVERTER_H_
|
---|
| 3 |
|
---|
| 4 | /***********************************************************************
|
---|
| 5 | ** **
|
---|
| 6 | ** /----------------------------------------------\ **
|
---|
| 7 | ** | Delphes, a framework for the fast simulation | **
|
---|
| 8 | ** | of a generic collider experiment | **
|
---|
[443] | 9 | ** \------------- arXiv:0903.2225v1 ------------/ **
|
---|
[271] | 10 | ** **
|
---|
| 11 | ** **
|
---|
| 12 | ** This package uses: **
|
---|
| 13 | ** ------------------ **
|
---|
[443] | 14 | ** ROOT: Nucl. Inst. & Meth. in Phys. Res. A389 (1997) 81-86 **
|
---|
| 15 | ** FastJet algorithm: Phys. Lett. B641 (2006) [hep-ph/0512210] **
|
---|
| 16 | ** Hector: JINST 2:P09005 (2007) [physics.acc-ph:0707.1198v2] **
|
---|
[271] | 17 | ** FROG: [hep-ex/0901.2718v1] **
|
---|
[443] | 18 | ** HepMC: Comput. Phys. Commun.134 (2001) 41 **
|
---|
[271] | 19 | ** **
|
---|
| 20 | ** ------------------------------------------------------------------ **
|
---|
| 21 | ** **
|
---|
| 22 | ** Main authors: **
|
---|
| 23 | ** ------------- **
|
---|
| 24 | ** **
|
---|
[443] | 25 | ** Severine Ovyn Xavier Rouby **
|
---|
| 26 | ** severine.ovyn@uclouvain.be xavier.rouby@cern **
|
---|
[271] | 27 | ** **
|
---|
[443] | 28 | ** Center for Particle Physics and Phenomenology (CP3) **
|
---|
| 29 | ** Universite catholique de Louvain (UCL) **
|
---|
| 30 | ** Louvain-la-Neuve, Belgium **
|
---|
| 31 | ** **
|
---|
[271] | 32 | ** Copyright (C) 2008-2009, **
|
---|
[443] | 33 | ** All rights reserved. **
|
---|
[271] | 34 | ** **
|
---|
| 35 | ***********************************************************************/
|
---|
| 36 |
|
---|
| 37 | /// \file LHCOConverter
|
---|
| 38 | /// \brief Converter from ExRootAnalysis to LHCO files
|
---|
[288] | 39 | #include <sstream>
|
---|
[271] | 40 | #include <string>
|
---|
| 41 | using namespace std;
|
---|
| 42 |
|
---|
[275] | 43 | class TClonesArray;
|
---|
| 44 |
|
---|
| 45 | enum {lhcoPhotonID=0, lhcoElectronID, lhcoMuonID, lhcoTauJetID, lhcoJetID, lhcoETmisID=6};
|
---|
| 46 |
|
---|
[271] | 47 | class LHCOConverter {
|
---|
| 48 | public:
|
---|
| 49 |
|
---|
| 50 | explicit LHCOConverter(const string& inputroot, const string& inputlog);
|
---|
| 51 | ~LHCOConverter() {};
|
---|
| 52 |
|
---|
| 53 | void CopyRunLogFile();
|
---|
| 54 | void ConvertExRootAnalysisToLHCO();
|
---|
| 55 |
|
---|
| 56 | private:
|
---|
[288] | 57 | //ostringstream BranchReader(const TClonesArray*, unsigned int&, unsigned short int ) const; // put it as a operator<<
|
---|
| 58 | void BranchReader(const TClonesArray*, unsigned int&, unsigned short int ) const;
|
---|
[313] | 59 | void BranchReaderETmis(const TClonesArray* branch, unsigned int& line) const;
|
---|
[317] | 60 | void BranchReaderMuon(const TClonesArray* branchMuon, const TClonesArray* branchJet, unsigned int& line) const;
|
---|
| 61 |
|
---|
[271] | 62 | const string inputfilename_;
|
---|
| 63 | string inputlogname_;
|
---|
| 64 | string outputfilename_;
|
---|
| 65 | bool valid_;
|
---|
| 66 | };
|
---|
| 67 |
|
---|
| 68 | #endif
|
---|