From f292c818fc2ed5580743e59d670459dcc4b65ddb Mon Sep 17 00:00:00 2001
From: Nikos Karastathis <n.karastathis@kit.edu>
Date: Mon, 21 Mar 2022 15:41:20 +0100
Subject: [PATCH] update stack

---
 examples/radio_em_shower.cpp                  | 2 +-
 examples/synchrotron_test_C8tracking.cpp      | 8 ++++----
 examples/synchrotron_test_manual_tracking.cpp | 2 +-
 tests/modules/testRadio.cpp                   | 5 ++---
 4 files changed, 8 insertions(+), 9 deletions(-)

diff --git a/examples/radio_em_shower.cpp b/examples/radio_em_shower.cpp
index ca0f1ee4d..65698ebde 100644
--- a/examples/radio_em_shower.cpp
+++ b/examples/radio_em_shower.cpp
@@ -128,7 +128,7 @@ int main(int argc, char** argv) {
     set_energy_production_threshold(pcode, energy);
 
   // setup particle stack, and add primary particle
-  setup::Stack stack;
+  setup::Stack<EnvType> stack;
   stack.clear();
   const Code beamCode = Code::Electron;
   auto const mass = get_mass(beamCode);
diff --git a/examples/synchrotron_test_C8tracking.cpp b/examples/synchrotron_test_C8tracking.cpp
index d060dac8c..cd88c9d1e 100644
--- a/examples/synchrotron_test_C8tracking.cpp
+++ b/examples/synchrotron_test_C8tracking.cpp
@@ -25,7 +25,6 @@
 #include <corsika/media/UniformMagneticField.hpp>
 #include <corsika/media/UniformRefractiveIndex.hpp>
 
-#include <corsika/setup/SetupEnvironment.hpp>
 #include <corsika/setup/SetupStack.hpp>
 #include <corsika/setup/SetupTrajectory.hpp>
 
@@ -77,7 +76,8 @@ int main() {
   OutputManager output("synchrotron_radiation_C8tracking-output");
 
   // set up the environment
-  using EnvType = setup::Environment;
+  using EnvironmentInterface = IRefractiveIndexModel<IMediumPropertyModel<IMagneticFieldModel<IMediumModel>>>;
+  using EnvType = Environment<EnvironmentInterface>;
   EnvType env;
   auto& universe = *(env.getUniverse());
   CoordinateSystemPtr const& rootCS = env.getCoordinateSystem();
@@ -85,7 +85,7 @@ int main() {
   auto world = EnvType::createNode<Sphere>(Point{rootCS, 0_m, 0_m, 0_m}, 150_km);
 
   using MyHomogeneousModel = UniformRefractiveIndex<MediumPropertyModel<
-      UniformMagneticField<HomogeneousMedium<setup::EnvironmentInterface>>>>;
+      UniformMagneticField<HomogeneousMedium<EnvironmentInterface>>>>;
 
   auto const Bmag{0.0003809_T};
   MagneticFieldVector B{rootCS, 0_T, 0_T, Bmag};
@@ -117,7 +117,7 @@ int main() {
   detectorZHS.addAntenna(ant2);
 
   // setup particle stack, and add primary particle
-  setup::Stack stack;
+  setup::Stack<EnvType> stack;
   stack.clear();
   const Code beamCode = Code::Electron;
   auto const charge = get_charge(beamCode);
diff --git a/examples/synchrotron_test_manual_tracking.cpp b/examples/synchrotron_test_manual_tracking.cpp
index bb8e7be6c..9e0e0a2e1 100644
--- a/examples/synchrotron_test_manual_tracking.cpp
+++ b/examples/synchrotron_test_manual_tracking.cpp
@@ -107,7 +107,7 @@ int main() {
   detectorZHS.addAntenna(ant2);
 
   // create a new stack for each trial
-  setup::Stack stack;
+  setup::Stack<EnvType> stack;
   stack.clear();
 
   const Code particle{Code::Electron};
diff --git a/tests/modules/testRadio.cpp b/tests/modules/testRadio.cpp
index 1b9693029..ad75a7d2d 100644
--- a/tests/modules/testRadio.cpp
+++ b/tests/modules/testRadio.cpp
@@ -43,7 +43,6 @@
 #include <corsika/framework/geometry/RootCoordinateSystem.hpp>
 #include <corsika/framework/geometry/Vector.hpp>
 #include <corsika/setup/SetupStack.hpp>
-#include <corsika/setup/SetupEnvironment.hpp>
 #include <corsika/setup/SetupTrajectory.hpp>
 #include <corsika/framework/core/PhysicalUnits.hpp>
 #include <corsika/framework/core/PhysicalConstants.hpp>
@@ -122,7 +121,7 @@ TEST_CASE("Radio", "[processes]") {
     // std::cout << "Leap Frog Trajectory is: " << base << std::endl;
 
     // create a new stack for each trial
-    setup::Stack stack;
+    setup::Stack<EnvType> stack;
 
     // construct an energy
     const HEPEnergyType E0{1_TeV};
@@ -225,7 +224,7 @@ TEST_CASE("Radio", "[processes]") {
     // std::cout << "Leap Frog Trajectory is: " << base << std::endl;
 
     // create a new stack for each trial
-    setup::Stack stack;
+    setup::Stack<EnvType> stack;
 
     // construct an energy
     const HEPEnergyType E0{1_TeV};
-- 
GitLab