From 46f6a4cd617ee8aa038cc94aef08d5df632afff7 Mon Sep 17 00:00:00 2001
From: Remy Prechelt <prechelt@hawaii.edu>
Date: Wed, 7 Apr 2021 22:55:20 -1000
Subject: [PATCH] Update examples to new output heirarchy.

---
 examples/boundary_example.cpp       | 7 +++++--
 examples/cascade_example.cpp        | 6 ++++--
 examples/cascade_proton_example.cpp | 7 +++++--
 examples/em_shower.cpp              | 6 ++++--
 examples/hybrid_MC.cpp              | 4 +++-
 examples/vertical_EAS.cpp           | 1 +
 6 files changed, 22 insertions(+), 9 deletions(-)

diff --git a/examples/boundary_example.cpp b/examples/boundary_example.cpp
index bca45481a..161b875ae 100644
--- a/examples/boundary_example.cpp
+++ b/examples/boundary_example.cpp
@@ -13,6 +13,7 @@
 #include <corsika/framework/random/RNGManager.hpp>
 #include <corsika/framework/utility/CorsikaFenv.hpp>
 #include <corsika/framework/core/Logging.hpp>
+#include <corsika/output/DummyOutputManager.hpp>
 
 #include <corsika/setup/SetupEnvironment.hpp>
 #include <corsika/setup/SetupStack.hpp>
@@ -42,6 +43,7 @@
 #include <iostream>
 #include <limits>
 #include <typeinfo>
+#include <fstream>
 
 using namespace corsika;
 using namespace std;
@@ -121,7 +123,7 @@ int main() {
 
   ParticleCut cut(50_GeV, true, true);
 
-  TrackWriter trackWriter("boundary_tracks.dat");
+  TrackWriter trackWriter;
   MyBoundaryCrossingProcess<true> boundaryCrossing("crossings.dat");
 
   // assemble all processes into an ordered process list
@@ -164,7 +166,8 @@ int main() {
   }
 
   // define air shower object, run simulation
-  Cascade EAS(env, tracking, sequence, stack);
+  DummyOutputManager output;
+  Cascade EAS(env, tracking, sequence, output, stack);
 
   EAS.run();
 
diff --git a/examples/cascade_example.cpp b/examples/cascade_example.cpp
index eb0938d9f..bee5869ab 100644
--- a/examples/cascade_example.cpp
+++ b/examples/cascade_example.cpp
@@ -14,6 +14,7 @@
 
 #include <corsika/framework/utility/CorsikaFenv.hpp>
 #include <corsika/framework/core/Logging.hpp>
+#include <corsika/output/DummyOutputManager.hpp>
 
 #include <corsika/media/Environment.hpp>
 #include <corsika/media/HomogeneousMedium.hpp>
@@ -140,7 +141,7 @@ int main() {
   // cascade with only HE model ==> HE cut
   ParticleCut cut(80_GeV, true, true);
 
-  TrackWriter trackWriter("tracks.dat");
+  TrackWriter trackWriter;
   BetheBlochPDG eLoss{showerAxis};
 
   // assemble all processes into an ordered process list
@@ -148,7 +149,8 @@ int main() {
       make_sequence(stackInspect, sibyll, sibyllNuc, decay, eLoss, cut, trackWriter);
 
   // define air shower object, run simulation
-  Cascade EAS(env, tracking, sequence, stack);
+  DummyOutputManager output;
+  Cascade EAS(env, tracking, sequence, output, stack);
 
   EAS.run();
 
diff --git a/examples/cascade_proton_example.cpp b/examples/cascade_proton_example.cpp
index 4b24f3b01..7c17d97eb 100644
--- a/examples/cascade_proton_example.cpp
+++ b/examples/cascade_proton_example.cpp
@@ -14,6 +14,7 @@
 
 #include <corsika/framework/utility/CorsikaFenv.hpp>
 #include <corsika/framework/core/Logging.hpp>
+#include <corsika/output/DummyOutputManager.hpp>
 
 #include <corsika/media/Environment.hpp>
 #include <corsika/media/HomogeneousMedium.hpp>
@@ -22,6 +23,7 @@
 #include <corsika/media/MediumPropertyModel.hpp>
 #include <corsika/media/UniformMagneticField.hpp>
 
+
 #include <corsika/setup/SetupEnvironment.hpp>
 #include <corsika/setup/SetupStack.hpp>
 #include <corsika/setup/SetupTrajectory.hpp>
@@ -130,7 +132,7 @@ int main() {
   // HadronicElasticModel::HadronicElasticInteraction
   // hadronicElastic(env);
 
-  TrackWriter trackWriter("tracks.dat");
+  TrackWriter trackWriter;
   ShowerAxis const showerAxis{injectionPos, Vector{rootCS, 0_m, 0_m, -100_km}, env};
   BetheBlochPDG eLoss{showerAxis};
 
@@ -141,7 +143,8 @@ int main() {
   auto sequence = make_sequence(pythia, decay, eLoss, cut, trackWriter, stackInspect);
 
   // define air shower object, run simulation
-  Cascade EAS(env, tracking, sequence, stack);
+  DummyOutputManager output;
+  Cascade EAS(env, tracking, sequence, output, stack);
   EAS.run();
 
   cout << "Result: E0=" << E0 / 1_GeV << endl;
diff --git a/examples/em_shower.cpp b/examples/em_shower.cpp
index e4d8b3cc4..8de0de39d 100644
--- a/examples/em_shower.cpp
+++ b/examples/em_shower.cpp
@@ -17,6 +17,7 @@
 #include <corsika/framework/utility/CorsikaFenv.hpp>
 #include <corsika/framework/process/InteractionCounter.hpp>
 #include <corsika/framework/core/Logging.hpp>
+#include <corsika/output/DummyOutputManager.hpp>
 
 #include <corsika/media/Environment.hpp>
 #include <corsika/media/LayeredSphericalAtmosphereBuilder.hpp>
@@ -146,7 +147,7 @@ int main(int argc, char** argv) {
   corsika::proposal::ContinuousProcess emContinuous(env);
   InteractionCounter emCascadeCounted(emCascade);
 
-  TrackWriter trackWriter("tracks.dat");
+  TrackWriter trackWriter;
 
   // long. profile; columns for gamma, e+, e- still need to be added
   LongitudinalProfile longprof{showerAxis};
@@ -159,7 +160,8 @@ int main(int argc, char** argv) {
                                 observationLevel, trackWriter);
   // define air shower object, run simulation
   setup::Tracking tracking;
-  Cascade EAS(env, tracking, sequence, stack);
+  DummyOutputManager output;
+  Cascade EAS(env, tracking, sequence, output, stack);
 
   // to fix the point of first interaction, uncomment the following two lines:
   //  EAS.setNodes();
diff --git a/examples/hybrid_MC.cpp b/examples/hybrid_MC.cpp
index 83ca7bd57..044493503 100644
--- a/examples/hybrid_MC.cpp
+++ b/examples/hybrid_MC.cpp
@@ -23,6 +23,7 @@
 #include <corsika/framework/core/PhysicalUnits.hpp>
 #include <corsika/framework/utility/CorsikaFenv.hpp>
 #include <corsika/framework/core/Cascade.hpp>
+#include <corsika/output/DummyOutputManager.hpp>
 #include <corsika/framework/geometry/PhysicalGeometry.hpp>
 
 #include <corsika/media/Environment.hpp>
@@ -243,7 +244,8 @@ int main(int argc, char** argv) {
 
   // define air shower object, run simulation
   setup::Tracking tracking;
-  Cascade EAS(env, tracking, sequence, stack);
+  DummyOutputManager output;
+  Cascade EAS(env, tracking, sequence, output, stack);
 
   // to fix the point of first interaction, uncomment the following two lines:
   //  EAS.SetNodes();
diff --git a/examples/vertical_EAS.cpp b/examples/vertical_EAS.cpp
index 552bc2bce..3b759abfa 100644
--- a/examples/vertical_EAS.cpp
+++ b/examples/vertical_EAS.cpp
@@ -357,3 +357,4 @@ int main(int argc, char** argv) {
 
     output.endOfLibrary();
   }
+}
-- 
GitLab