Project
Loading...
Searching...
No Matches
AodToHepmc Struct Reference

Public Types

using Converter = o2::eventgen::AODToHepMC
 
Container types
using Headers = Converter::Headers
 
using Header = Converter::Header
 
using Tracks = Converter::Tracks
 
using XSections = Converter::XSections
 
using XSection = Converter::XSection
 
using PdfInfos = Converter::PdfInfos
 
using PdfInfo = Converter::PdfInfo
 
using HeavyIons = Converter::HeavyIons
 
using HeavyIon = Converter::HeavyIon
 

Public Member Functions

void init (o2::framework::InitContext &)
 
void process (Header const &collision, Tracks const &tracks, XSections const &xsections, PdfInfos const &pdfs, HeavyIons const &heavyions)
 
void processPlain (Header const &collision, Tracks const &tracks)
 

Public Attributes

o2::framework::Configurable< std::string > dump
 
o2::framework::Configurable< bool > onlyGen
 
o2::framework::Configurable< bool > useTree
 
o2::framework::Configurable< intprecision
 
o2::framework::Configurable< bool > recenter
 
 configs
 
Converter mConverter
 
o2::framework::Service< o2::framework::AODToHepMCPostRuntrigger
 
decltype(o2::framework::ProcessConfigurable{&AodToHepmc::processPlain, "hepmc-no-aux", false, "Do not process auxiliary " "information"}) doPlain
 

Detailed Description

Author
Christian Holm Christensen cholm.nosp@m.@nbi.nosp@m..dk Task to convert AOD MC tables into HepMC event structure

This assumes that the following tables are available on the input:

The application o2-sim-mcevent-to-aod publishes these tables.

Ideally, this application should work with the case where only

This is selected by the option --hepmc-no-aux

The thing to remember here, is that each task process is expected to do a complete job. That is, a process cannot assume that another process has been called before-hand or will be called later, for the same event in the same order.

That is, each process will get all events of a time-frame and then the next process will get all events of the time-frame.

Processed do not process events piece-meal, but rather in whole.

Definition at line 48 of file o2aod_mc_to_hepmc.cxx.

Member Typedef Documentation

◆ Converter

Alias the converter type

Definition at line 50 of file o2aod_mc_to_hepmc.cxx.

◆ Header

Alias converter header type

Definition at line 84 of file o2aod_mc_to_hepmc.cxx.

◆ Headers

Alias converter header table type

Definition at line 82 of file o2aod_mc_to_hepmc.cxx.

◆ HeavyIon

Alias converter heavy-ions type

Definition at line 98 of file o2aod_mc_to_hepmc.cxx.

◆ HeavyIons

Alias converter heavy-ions table type

Definition at line 96 of file o2aod_mc_to_hepmc.cxx.

◆ PdfInfo

Alias converter parton distribution function type

Definition at line 94 of file o2aod_mc_to_hepmc.cxx.

◆ PdfInfos

Alias converter parton distribution function table type

Definition at line 92 of file o2aod_mc_to_hepmc.cxx.

◆ Tracks

Alias converter track table type

Definition at line 86 of file o2aod_mc_to_hepmc.cxx.

◆ XSection

Alias converter cross-section type

Definition at line 90 of file o2aod_mc_to_hepmc.cxx.

◆ XSections

Alias converter cross-section table type

Definition at line 88 of file o2aod_mc_to_hepmc.cxx.

Member Function Documentation

◆ init()

void AodToHepmc::init ( o2::framework::InitContext )
inline

Initialize the job

Definition at line 102 of file o2aod_mc_to_hepmc.cxx.

◆ process()

void AodToHepmc::process ( Header const &  collision,
Tracks const &  tracks,
XSections const &  xsections,
PdfInfos const &  pdfs,
HeavyIons const &  heavyions 
)
inline

Processing of event to extract extra HepMC information

Parameters
collisionEvent header
tracksTracks of the event
xsectionsCross-section information
pdfCross-section information
heavyionsHeavy ion (geometry) information

Definition at line 116 of file o2aod_mc_to_hepmc.cxx.

◆ processPlain()

void AodToHepmc::processPlain ( Header const &  collision,
Tracks const &  tracks 
)
inline

Processing of an event for particles only

Parameters
collisionEvent header
tracksTracks of the event

Definition at line 140 of file o2aod_mc_to_hepmc.cxx.

Member Data Documentation

◆ configs

AodToHepmc::configs

◆ doPlain

decltype(o2::framework::ProcessConfigurable{&AodToHepmc::processPlain, "hepmc-no-aux", false, "Do not process auxiliary " "information"}) AodToHepmc::doPlain
Initial value:
"hepmc-no-aux", false,
"Do not process auxiliary "
"information"}
void processPlain(Header const &collision, Tracks const &tracks)

Make a process option.

Instead of using the provided preprocessor macro, we instantise the template directly here. This is so that we can specify the command line argument (--hepmc-no-aux) rather than to rely on an auto-generated name (would be --processPlain).

Definition at line 165 of file o2aod_mc_to_hepmc.cxx.

◆ dump

o2::framework::Configurable<std::string> AodToHepmc::dump
Initial value:
{"hepmc-dump", "",
"Dump HepMC event to output"}

Option for dumping HepMC event structures to disk. Takes one argument - the name of the file to write to.

Definition at line 55 of file o2aod_mc_to_hepmc.cxx.

◆ mConverter

Converter AodToHepmc::mConverter

Our converter

Definition at line 74 of file o2aod_mc_to_hepmc.cxx.

◆ onlyGen

o2::framework::Configurable<bool> AodToHepmc::onlyGen
Initial value:
{"hepmc-only-generated", false,
"Only export generated"}

Option for only storing particles from the event generator. Note, if a particle is stored down, then its mothers will also be stored.

Definition at line 60 of file o2aod_mc_to_hepmc.cxx.

◆ precision

o2::framework::Configurable<int> AodToHepmc::precision
Initial value:
{"hepmc-precision", 8,
"Export precision in dump"}

Floating point precision used when writing to disk

Definition at line 66 of file o2aod_mc_to_hepmc.cxx.

◆ recenter

o2::framework::Configurable<bool> AodToHepmc::recenter
Initial value:
{"hepmc-recenter", false,
"Recenter the events at (0,0,0,0)"}

Recenter event at IP=(0,0,0,0).

Definition at line 69 of file o2aod_mc_to_hepmc.cxx.

◆ trigger

Post-run trigger service

Definition at line 77 of file o2aod_mc_to_hepmc.cxx.

◆ useTree

o2::framework::Configurable<bool> AodToHepmc::useTree
Initial value:
{"hepmc-use-tree", false,
"Export as tree"}

Use HepMC's tree parsing for building event structure

Definition at line 63 of file o2aod_mc_to_hepmc.cxx.


The documentation for this struct was generated from the following file: