Celeritas  0.5.0-86+4a8eea4
Functions
EventReader.cc File Reference
#include "EventReader.hh"
#include <set>
#include <HepMC3/GenEvent.h>
#include <HepMC3/Reader.h>
#include <HepMC3/ReaderFactory.h>
#include <HepMC3/Setup.h>
#include "corecel/io/Join.hh"
#include "corecel/io/Logger.hh"
#include "corecel/io/ScopedTimeAndRedirect.hh"
#include "corecel/math/ArrayUtils.hh"
#include "corecel/sys/Environment.hh"
#include "corecel/sys/TypeDemangler.hh"
#include "celeritas/Constants.hh"
#include "celeritas/Quantities.hh"
#include "celeritas/phys/ParticleParams.hh"
#include "celeritas/phys/Primary.hh"

Functions

void celeritas::set_hepmc3_verbosity_from_env ()
 Set HepMC3 verbosity from the environment. More...
 
std::shared_ptr< HepMC3::Reader > celeritas::open_hepmc3 (std::string const &filename)
 Wrapper function for HepMC3::deduce_reader to avoid duplicate symbols. More...
 

Function Documentation

◆ open_hepmc3()

std::shared_ptr< HepMC3::Reader > celeritas::open_hepmc3 ( std::string const &  filename)

Wrapper function for HepMC3::deduce_reader to avoid duplicate symbols.

HepMC3 through 3.2.6 has a ReaderFactory.h that includes function definitions without inline keywords, leading to duplicate symbols. Reusing this function rather than including ReaderFactory multiple times in Celeritas is the easiest way to work around the problem.

It also sets the debug level from the environment, prints a status message,and validates the file.

◆ set_hepmc3_verbosity_from_env()

void celeritas::set_hepmc3_verbosity_from_env ( )
inline

Set HepMC3 verbosity from the environment.

The default debug level is 5.