Open
Description
HepMC is a HEP event record used in CMSSW. HepMC2 is currently used.
HepMC3 is a completely rewritten version. Many methods are different from HepMC2. These two records can live together in one program. I have a partly working prototype (working at ~10% functionality, pythia8 only) in my private area.
The evolving plan follows
- Cope with library structure. By default the HepMC3 libraries structures are lib64/libHepMC3.so->libHepMC3.so.3. CMSSW does not understand it, I have to copy this structure in CMSSW_12_3_0_pre2/external/slc7_amd64_gcc10/lib by hands. - done
- Rewrite code created for ExternalDecays. Seems still to be needed for the photos++ package (tauola++?)
- Create GenEventInfoProduct3 class similarly to GenEventInfoProduct. Some methods need rewriting. - done privately
- Create HepMC3Product similarly to HepMCProduct - done privately
- Rewrite the code where the HepMC record is fed in G4. Seems to be here (Siewyan):https://github.com/cms-sw/cmssw/blob/master/SimG4Core/Generators/src/Generator.cc#L112. Problem: SimG4Core compiled locally does not work. In contact with V. Ivanchenko
- At some point a special CMSSW branch will be needed?