LDMX Software
PrimaryGeneratorAction.h
Go to the documentation of this file.
1
7#ifndef SIMCORE_G4USER_PRIMARYGENERATORACTION_H
8#define SIMCORE_G4USER_PRIMARYGENERATORACTION_H
9
10/*~~~~~~~~~~~~~~~~*/
11/* C++ StdLib */
12/*~~~~~~~~~~~~~~~~*/
13
14/*~~~~~~~~~~~~*/
15/* Geant4 */
16/*~~~~~~~~~~~~*/
17#include "G4VUserPrimaryGeneratorAction.hh"
18
19/*~~~~~~~~~~~~~~~*/
20/* Framework */
21/*~~~~~~~~~~~~~~~*/
22#include "Framework/Configure/Parameters.h"
23
24// Forward declarations
25class G4Event;
26
27namespace simcore {
28
40class PrimaryGeneratorAction : public G4VUserPrimaryGeneratorAction {
41 public:
42 /*
43 * Constructor
44 *
45 * @param parameters The parameters used to configure the primary
46 * generator action.
47 */
49
53 virtual ~PrimaryGeneratorAction() = default;
54
86 void GeneratePrimaries(G4Event* event) override;
87
88 private:
96
97}; // PrimaryGeneratorAction
98
99} // namespace simcore
100
101#endif // SIMCORE_G4USER_PRIMARYGENERATORACTION_H
Class encapsulating parameters for configuring a processor.
Definition Parameters.h:26
Implementation of Geant4 primary generator action.
virtual ~PrimaryGeneratorAction()=default
Class destructor.
bool time_shift_primaries_
Should we time-shift so that the primary vertices arrive (or originate) at t=0ns at z_=0mm?
void GeneratePrimaries(G4Event *event) override
Generate primaries for the event.
Dynamically loadable photonuclear models either from SimCore or external libraries implementing this ...