From e3caf16f1becaf07b6f862576fb9233ad9137c03 Mon Sep 17 00:00:00 2001 From: lintao <lintao51@gmail.com> Date: Mon, 12 Aug 2019 14:19:29 +0800 Subject: [PATCH] WIP: add stepping and tracking action. --- Simulation/DetSimCore/CMakeLists.txt | 2 ++ .../DetSimCore/src/ActionInitialization.cpp | 12 ++++++++++ Simulation/DetSimCore/src/SteppingAction.cpp | 15 +++++++++++++ Simulation/DetSimCore/src/SteppingAction.h | 18 +++++++++++++++ Simulation/DetSimCore/src/TrackingAction.cpp | 22 +++++++++++++++++++ Simulation/DetSimCore/src/TrackingAction.h | 20 +++++++++++++++++ 6 files changed, 89 insertions(+) create mode 100644 Simulation/DetSimCore/src/SteppingAction.cpp create mode 100644 Simulation/DetSimCore/src/SteppingAction.h create mode 100644 Simulation/DetSimCore/src/TrackingAction.cpp create mode 100644 Simulation/DetSimCore/src/TrackingAction.h diff --git a/Simulation/DetSimCore/CMakeLists.txt b/Simulation/DetSimCore/CMakeLists.txt index abda7f59..c222800f 100644 --- a/Simulation/DetSimCore/CMakeLists.txt +++ b/Simulation/DetSimCore/CMakeLists.txt @@ -16,6 +16,8 @@ set(DetSimCore_srcs src/ActionInitialization.cpp src/RunAction.cpp src/EventAction.cpp + src/TrackingAction.cpp + src/SteppingAction.cpp ) gaudi_add_module(DetSimCore ${DetSimCore_srcs} diff --git a/Simulation/DetSimCore/src/ActionInitialization.cpp b/Simulation/DetSimCore/src/ActionInitialization.cpp index 7a16a831..515f975b 100644 --- a/Simulation/DetSimCore/src/ActionInitialization.cpp +++ b/Simulation/DetSimCore/src/ActionInitialization.cpp @@ -1,6 +1,9 @@ #include "ActionInitialization.h" #include "RunAction.h" +#include "EventAction.h" +#include "TrackingAction.h" +#include "SteppingAction.h" ActionInitialization::ActionInitialization() : G4VUserActionInitialization() { @@ -23,4 +26,13 @@ ActionInitialization::Build() const { RunAction* runAction = new RunAction(); SetUserAction(runAction); + EventAction* eventAction = new EventAction(); + SetUserAction(eventAction); + + TrackingAction* trackingAction = new TrackingAction(); + SetUserAction(trackingAction); + + SteppingAction* steppingAction = new SteppingAction(); + SetUserAction(steppingAction); + } diff --git a/Simulation/DetSimCore/src/SteppingAction.cpp b/Simulation/DetSimCore/src/SteppingAction.cpp new file mode 100644 index 00000000..3ad62235 --- /dev/null +++ b/Simulation/DetSimCore/src/SteppingAction.cpp @@ -0,0 +1,15 @@ +#include "SteppingAction.h" + +SteppingAction::SteppingAction() { + +} + +SteppingAction::~SteppingAction() { + +} + +void +SteppingAction::UserSteppingAction(const G4Step* aStep) { + +} + diff --git a/Simulation/DetSimCore/src/SteppingAction.h b/Simulation/DetSimCore/src/SteppingAction.h new file mode 100644 index 00000000..9c181753 --- /dev/null +++ b/Simulation/DetSimCore/src/SteppingAction.h @@ -0,0 +1,18 @@ +#ifndef SteppingAction_h +#define SteppingAction_h + +#include "G4UserSteppingAction.hh" + +class G4Step; + +class SteppingAction: public G4UserSteppingAction { + +public: + SteppingAction(); + ~SteppingAction(); + + void UserSteppingAction(const G4Step*) override; + +}; + +#endif diff --git a/Simulation/DetSimCore/src/TrackingAction.cpp b/Simulation/DetSimCore/src/TrackingAction.cpp new file mode 100644 index 00000000..7672c7d6 --- /dev/null +++ b/Simulation/DetSimCore/src/TrackingAction.cpp @@ -0,0 +1,22 @@ +#include "TrackingAction.h" + +TrackingAction::TrackingAction() + : G4UserTrackingAction() { + +} + +TrackingAction::~TrackingAction() { + +} + +void +TrackingAction::PreUserTrackingAction(const G4Track* aTrack) { + +} + +void +TrackingAction::PostUserTrackingAction(const G4Track* aTrack) { + +} + + diff --git a/Simulation/DetSimCore/src/TrackingAction.h b/Simulation/DetSimCore/src/TrackingAction.h new file mode 100644 index 00000000..5b7ff885 --- /dev/null +++ b/Simulation/DetSimCore/src/TrackingAction.h @@ -0,0 +1,20 @@ +#ifndef TrackingAction_h +#define TrackingAction_h + +#include "G4UserTrackingAction.hh" + +class TrackingAction: public G4UserTrackingAction { + +public: + + TrackingAction(); + ~TrackingAction(); + + void PreUserTrackingAction(const G4Track*); + void PostUserTrackingAction(const G4Track*); + + + +}; + +#endif -- GitLab