14#ifndef ALICEO2_EVENTGEN_AODTOHEPMC_H_
15#define ALICEO2_EVENTGEN_AODTOHEPMC_H_
19#include <HepMC3/GenEvent.h>
20#include <HepMC3/GenParticle.h>
21#include <HepMC3/GenVertex.h>
22#include <HepMC3/GenPdfInfo.h>
23#include <HepMC3/GenHeavyIon.h>
24#include <HepMC3/GenCrossSection.h>
25#include <HepMC3/WriterAscii.h>
286 using Track =
typename Tracks::iterator;
597 if (
ptr !=
nullptr) {
GLenum GLint GLint * precision
McParticles_001 McParticles
McCollisions_001 McCollisions
McCollisions::iterator McCollision
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...
ParticleVector mBeams
Cache of vertices.
struct o2::eventgen::AODToHepMC::@467 configs
virtual void makePdfInfo(PdfInfos const &pdf)
CrossSectionPtr mCrossSec
virtual VertexPtr makeVertex(const Track &track)
HepMC3::GenPdfInfoPtr PdfInfoPtr
HepMC3::GenCrossSectionPtr CrossSectionPtr
std::list< VertexPtr > VertexList
std::shared_ptr< WriterAscii > WriterAsciiPtr
virtual void makeBeams(Header const &header, const VertexPtr ip)
o2::aod::McCollisions Headers
virtual void makeXSection(XSections const &xsection)
virtual void makeHeader(Header const &header)
virtual void recenter(Header const &collision)
std::list< ParticlePtr > ParticleList
virtual ParticlePtr makeParticleRecursive(Track const &track, Tracks const &tracks, bool force=false)
virtual void makeHeavyIon(HeavyIons const &heavyion, Header const &header)
HepMC3::FourVector FourVector
virtual void fleshOutParticle(Track const &track, Tracks const &tracks)
HepMC3::GenParticlePtr ParticlePtr
std::vector< VertexPtr > VertexVector
std::vector< ParticlePtr > ParticleVector
o2::aod::HepMCHeavyIons HeavyIons
o2::aod::HepMCPdfInfos PdfInfos
virtual void makeEvent(Header const &collision, Tracks const &tracks)
virtual void makeParticles(Tracks const &tracks)
typename PdfInfos::iterator PdfInfo
typename HeavyIons::iterator HeavyIon
o2::aod::McParticles Tracks
void enableDump(const std::string &dump)
virtual bool isIgnored(Track const &track) const
o2::aod::HepMCXSections XSections
VertexList mVertices
Cache of particles.
HepMC3::GenVertexPtr VertexPtr
virtual void fleshOut(Tracks const &tracks)
virtual ParticlePtr makeParticle(const Track &track, Int_t &motherStatus, bool force) const
std::unordered_map< long, ParticlePtr > ParticleMap
typename Tracks::iterator Track
virtual void startEvent()
HepMC3::WriterAscii WriterAscii
HepMC3::GenHeavyIonPtr HeavyIonPtr
typename XSections::iterator XSection
ParticleList mOrphans
Cache of beam particles.
virtual ParticlePtr getParticle(Track const &ref) const
static AODToHepMCPostRun & instance()
AODToHepMCPostRun(eventgen::AODToHepMC *ptr_=nullptr)
eventgen::AODToHepMC * ptr