|
actions
|
Handles run begin/end callbacks and creates the thread-local GRun object. More...
#include <gRunAction.h>
Public Member Functions | |
| GRunAction (std::shared_ptr< GOptions > gopts, std::shared_ptr< gdynamicdigitization::dRoutinesMap > digi_map) | |
| Constructs the run action. | |
| ~GRunAction () override=default | |
| GRunAction (const GRunAction &)=delete | |
| GRunAction & | operator= (const GRunAction &)=delete |
| GRunAction (GRunAction &&)=delete | |
| GRunAction & | operator= (GRunAction &&)=delete |
| auto | get_digitization_routines_map () const -> std::shared_ptr< gdynamicdigitization::dRoutinesMap > |
| Returns the shared digitization-routine map used by this run action. | |
| auto | get_streamer_threads_map () const -> std::shared_ptr< const gstreamer::gstreamersMap > |
| Returns the worker-thread streamer map, if it has been instantiated. | |
| bool | has_streamer_threads_map () const |
| void | collect_event_data_collections (const std::string &hcSDName, std::unique_ptr< GDigitizedData > digi_data) |
| Adds one run-mode digitized payload to the current thread run-data collection. | |
| void | increment_run_events_processed () |
| Increments the number of events processed by the current thread for this run. | |
| void | increment_run_events_with_payload () |
| Increments the number of events that produced run-mode payload. | |
Public Member Functions inherited from GBase< GRunAction > | |
| GBase (const std::shared_ptr< GOptions > &gopt, std::string logger_name="") | |
| GBase (const std::shared_ptr< GLogger > &logger) | |
| GBase (const GBase &)=default | |
| GBase (GBase &&) noexcept=default | |
| virtual | ~GBase () |
| GBase & | operator= (const GBase &)=default |
| GBase & | operator= (GBase &&) noexcept=default |
Additional Inherited Members | |
Protected Attributes inherited from GBase< GRunAction > | |
| std::shared_ptr< GLogger > | log |
This class is the GEMC implementation of the Geant4 run action. It participates in both worker-thread and master-thread execution.
Its main responsibilities are:
GenerateRun();Threading model:
Definition at line 66 of file gRunAction.h.
|
explicit |
| gopts | Shared configuration object used by the run action and the GRun object it creates. |
| digi_map | Shared map associating collection names with digitization routines. |
Definition at line 16 of file gRunAction.cc.
|
overridedefault |
|
delete |
|
delete |
|
inline |
This method is used by event processing when a digitization routine reports that its output should be accumulated at run scope rather than published immediately at event scope.
| hcSDName | Name of the hit collection or sensitive detector associated with the payload. |
| digi_data | Digitized payload to transfer into the run-level data collection. |
Definition at line 131 of file gRunAction.h.
|
inline |
Event processing uses this map to resolve the digitization routine associated with each hit collection name.
Definition at line 95 of file gRunAction.h.
|
inline |
The map is created lazily on worker threads during the private method BeginOfRunAction() when event-mode publication is required.
Definition at line 109 of file gRunAction.h.
|
inline |
Definition at line 117 of file gRunAction.h.
|
inline |
The counter is stored in the run-data header and is updated once per processed event, independently of whether that event produces any payload.
Definition at line 149 of file gRunAction.h.
|
inline |
This counter is updated only for events that contributed at least one payload entry to the run-level accumulation path.
Definition at line 170 of file gRunAction.h.
|
delete |
|
delete |