From d7d2bae240e1f6668c6826e572749c354d6b50fc Mon Sep 17 00:00:00 2001 From: atlas <boudreau@pitt.edu> Date: Tue, 14 Jun 2022 17:15:53 +0200 Subject: [PATCH] new interface class for magnetic field plugin --- FullSimLight/CMakeLists.txt | 5 +++-- FullSimLight/include/MagFieldPlugin.h | 24 ++++++++++++++++++++++++ 2 files changed, 27 insertions(+), 2 deletions(-) create mode 100644 FullSimLight/include/MagFieldPlugin.h diff --git a/FullSimLight/CMakeLists.txt b/FullSimLight/CMakeLists.txt index 817403132..b96f91fb4 100644 --- a/FullSimLight/CMakeLists.txt +++ b/FullSimLight/CMakeLists.txt @@ -293,7 +293,8 @@ install( TARGETS FullSimLight install(FILES include/FSLSensitiveDetectorPlugin.h - DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/FullSimLight - COMPONENT Development ) + include/MagFieldPlugin.h + DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/FullSimLight + COMPONENT Development ) diff --git a/FullSimLight/include/MagFieldPlugin.h b/FullSimLight/include/MagFieldPlugin.h new file mode 100644 index 000000000..7bd6cf15d --- /dev/null +++ b/FullSimLight/include/MagFieldPlugin.h @@ -0,0 +1,24 @@ +#ifndef _MAGFIELDPLUGIN_H_ +#define _MAGFIELDPLUGIN_H_ +class G4MagneticField; +class MagFieldPlugin { + + public: + + // Constructor + MagFieldPlugin()=default; + + // Destructor + virtual ~MagFieldPlugin()=default; + + virtual const G4MagneticField *getField() const=0; + + private: + + MagFieldPlugin (const MagFieldPlugin &)=delete; + + MagFieldPlugin & operator=(const MagFieldPlugin &)=delete; +}; + + +#endif -- GitLab