7#ifndef SIMCORE_HEPMCPRIMARYGENERATOR_H
8#define SIMCORE_HEPMCPRIMARYGENERATOR_H
11#include "Framework/Configure/Parameters.h"
12#include "Framework/Exception/Exception.h"
19#include "G4IonTable.hh"
20#include "G4PhysicalConstants.hh"
21#include "G4RunManager.hh"
22#include "G4SystemOfUnits.hh"
77 enableLogging(
"HepMCPrimaryGenerator")
Class for reading HepMC event data.
Header file for PrimaryGenerator.
Class that provides extra information for Geant4 primary particles.
Class encapsulating parameters for configuring a processor.
Interface that defines a simulation primary generator.
Generates a Geant4 event from a HepMCEvent.
virtual ~HepMCPrimaryGenerator()=default
Class destructor.
std::vector< double > vertex_
The vertex offset to apply to the HepMC event vertex.
hepmc::HepMCReader reader_
The HepMC reader with the event data.
std::string file_path_
The file path to the HepMC file.
HepMCPrimaryGenerator(const std::string &name, const framework::config::Parameters ¶meters)
Class constructor.
void GeneratePrimaryVertex(G4Event *anEvent) override
Generate vertices in the Geant4 event.
void RecordConfig(const std::string &id, ldmx::RunHeader &rh) override
Record configuration information.
Reads HepMC event data into a HepMCEvent object.
Dynamically loadable photonuclear models either from SimCore or external libraries implementing this ...