33 #ifndef MCTOOLS_G4_MANAGER_H 34 #define MCTOOLS_G4_MANAGER_H 1 43 #include <boost/cstdint.hpp> 65 class i_vertex_generator;
82 class G4VSteppingVerbose;
84 #ifdef G4MULTITHREADED 93 class multi_properties;
94 class service_manager;
102 class detector_construction;
103 class primary_generator;
105 class tracking_action;
106 class stepping_action;
107 class stacking_action;
108 class simulation_ctrl;
114 typedef std::map<std::string, CT_type>
CT_map;
446 const std::string & description_);
479 void dump(std::ostream & = std::clog)
const;
482 void dump_base(std::ostream & out_ = std::clog,
483 const std::string & title_ =
"",
484 const std::string & indent_ =
"")
const;
549 bool _initialized_ =
false;
555 bool _interactive_ =
false;
556 bool _g4_visualization_ =
false;
558 std::string _simulation_ctrl_label_;
559 simulation_ctrl* _simulation_ctrl_ =
nullptr;
561 std::map<std::string,std::string> _supported_output_profile_ids_;
562 std::string _output_profiles_activation_rule_;
563 std::set<std::string> _activated_output_profile_ids_;
576 std::string _vg_name_;
583 std::string _eg_name_;
587 int _shpf_prng_seed_;
596 G4VSteppingVerbose* _g4_stepping_verbosity_ =
nullptr;
597 #ifdef G4MULTITHREADED 598 G4MTRunManager* _g4_run_manager_ =
nullptr;
600 G4RunManager* _g4_run_manager_ =
nullptr;
602 G4UImanager* _g4_UI_ =
nullptr;
605 mctools::g4::detector_construction* _user_detector_construction_ =
nullptr;
606 mctools::g4::physics_list* _user_physics_list_ =
nullptr;
607 mctools::g4::primary_generator* _user_primary_generator_ =
nullptr;
608 mctools::g4::run_action* _user_run_action_ =
nullptr;
609 mctools::g4::event_action* _user_event_action_ =
nullptr;
610 mctools::g4::tracking_action* _user_tracking_action_ =
nullptr;
611 mctools::g4::stepping_action* _user_stepping_action_ =
nullptr;
612 mctools::g4::stacking_action* _user_stacking_action_ =
nullptr;
616 G4VisManager * _g4_vis_manager_ =
nullptr;
621 std::string _init_seed_method_;
626 int _prng_state_save_modulo_;
629 bool _use_track_history_;
633 std::string _input_prng_seeds_file_;
634 std::string _output_prng_seeds_file_;
635 std::string _input_prng_states_file_;
636 std::string _output_prng_states_file_;
638 std::string _output_data_bank_label_;
639 std::string _output_data_file_;
640 uint32_t _number_of_events_;
641 int _number_of_events_modulo_;
642 std::string _g4_macro_;
643 int _g4_tracking_verbosity_;
644 bool _forbid_private_hits_;
645 bool _dont_save_no_sensitive_hit_events_;
646 bool _use_run_header_footer_;
647 bool _use_time_stat_;
661 #endif // MCTOOLS_G4_MANAGER_H
Top-level namespace of the Bayeux/genvtx module library.
Definition: box_model_vg.h:32
GENBB particle generator abstract base class.
Definition: i_genbb.h:59
Vertex generator manager.
Definition: manager.h:81
A manager that can store the internal states associated to a set of PRNGs addressed with some labels.
Definition: prng_state_manager.h:50
DOCD_CLASS_DECLARATION(my::algo)
Declaration of the OCD support for the my::algo class.
Top-level namespace of the Bayeux/genbb_help module library.
Definition: alpha_decay.h:51
Definition: seed_manager.h:60
Utilities for logging information.
The base interface class for all vertex generator classes.
Definition: i_vertex_generator.h:59
GENBB particle manager management class.
Definition: manager.h:69
Recording of tracks history.
Definition: track_history.h:45
Pseudo random number generator.
Definition: rng.h:53