1#ifndef G4USERACTIONS_CELEROFFLOADTOOL_H
2#define G4USERACTIONS_CELEROFFLOADTOOL_H
8#include "accel/SetupOptions.hh"
18 virtual StatusCode
finalize()
override;
32 Gaudi::Property<std::string>
m_geometry_output_file{
this,
"geometry_output_file", {},
"Filename to dump a GDML file for debugging inside frameworks"};
35 Gaudi::Property<SetupOptions::size_type>
m_max_num_tracks{
this,
"max_num_tracks", {},
"Number of track 'slots' to be transported simultaneously"};
36 Gaudi::Property<SetupOptions::size_type>
m_max_steps{
this,
"max_steps", SetupOptions::no_max_steps(),
"Limit on number of steps per track before killing"};
37 Gaudi::Property<SetupOptions::size_type>
m_max_step_iters{
this,
"max_step_iters", SetupOptions::no_max_steps(),
"Limit on number of step iterations before aborting"};
38 Gaudi::Property<SetupOptions::size_type>
m_initializer_capacity{
this,
"initializer_capacity", {},
"Maximum number of track initializers (primaries+secondaries)"};
56 Gaudi::Property<SetupOptions::VecString>
m_ignore_processes{
this,
"ignore_processes", {},
"Do not use Celeritas physics for the given Geant4 process names"};
60 Gaudi::Property<SetupOptions::size_type>
m_cuda_stack_size{
this,
"cuda_stack_size", {},
"Per-thread stack size (may be needed for VecGeom)"};
61 Gaudi::Property<SetupOptions::size_type>
m_cuda_heap_size{
this,
"cuda_heap_size", {},
"Dynamic heap size (may be needed for VecGeom)"};
62 Gaudi::Property<bool>
m_action_times{
this,
"action_times",
false,
"Sync the GPU at every kernel for timing"};
Struct for passing around user actions.