diff --git a/Documentation/Examples/staticsequence_example.cc b/Documentation/Examples/staticsequence_example.cc index 9acbc412a01b34c43a490a9b958c609e5666f8ac..92813f2e368d6db9c2016446ca069e8d890b5034 100644 --- a/Documentation/Examples/staticsequence_example.cc +++ b/Documentation/Examples/staticsequence_example.cc @@ -11,7 +11,7 @@ class Process1 : public BaseProcess<Process1> { public: Process1() {} template <typename D, typename T, typename S> - EProcessReturn DoContinuous(D& d, T& t, S& s) const { + EProcessReturn DoContinuous(D& d, T&, S&) const { for (int i = 0; i < 10; ++i) d.p[i] += 1; return EProcessReturn::eOk; } @@ -22,7 +22,7 @@ public: Process2() {} template <typename D, typename T, typename S> - inline EProcessReturn DoContinuous(D& d, T& t, S& s) const { + inline EProcessReturn DoContinuous(D&, T&, S&) const { // for (int i=0; i<10; ++i) d.p[i] *= 2; return EProcessReturn::eOk; } @@ -34,7 +34,7 @@ public: Process3() {} template <typename D, typename T, typename S> - inline EProcessReturn DoContinuous(D& d, T& t, S& s) const { + inline EProcessReturn DoContinuous(D& /*d*/, T& /*t*/, S& /*s*/) const { // for (int i=0; i<10; ++i) d.p[i] += fV; return EProcessReturn::eOk; } @@ -48,7 +48,7 @@ public: // Process4(const int v) : fV(v) {} Process4() {} template <typename D, typename T, typename S> - inline EProcessReturn DoContinuous(D& d, T& t, S& s) const { + inline EProcessReturn DoContinuous(D& /*d*/, T& /*t*/, S& /*s*/) const { // for (int i=0; i<10; ++i) d.p[i] /= fV; return EProcessReturn::eOk; } diff --git a/Framework/Cascade/testCascade.cc b/Framework/Cascade/testCascade.cc index 3279c42452c678019f1435511b00c1aea6803500..9d30afcefa12ac8b9a6f5b2798045cd6b1a61ccc 100644 --- a/Framework/Cascade/testCascade.cc +++ b/Framework/Cascade/testCascade.cc @@ -1,6 +1,7 @@ #include <corsika/cascade/Cascade.h> #include <corsika/geometry/LineTrajectory.h> #include <corsika/process/ProcessSequence.h> +#include <corsika/process/stack_inspector/StackInspector.h> #include <corsika/stack/super_stupid/SuperStupidStack.h> #define CATCH_CONFIG_MAIN // This tells Catch to provide a main() - only do this in one diff --git a/Framework/Logging/BufferedSink.h b/Framework/Logging/BufferedSink.h index 7ad36927fec13087d8875af96279013a82003a4e..33cb1afa7b7ae0d65e0b8c173248294c008d8b26 100644 --- a/Framework/Logging/BufferedSink.h +++ b/Framework/Logging/BufferedSink.h @@ -32,7 +32,7 @@ namespace corsika::logging { inline void Add(const std::string& s) { fBuffer << s; } private: - int fSize; + unsigned int fSize; std::ostringstream fBuffer; }; diff --git a/Framework/Logging/MessageOff.h b/Framework/Logging/MessageOff.h index d60070002cbcb25e76eb641b19597bc6c2fac752..d22d131eb5ddaf012a61341033ce8ee10e3e8e5d 100644 --- a/Framework/Logging/MessageOff.h +++ b/Framework/Logging/MessageOff.h @@ -10,7 +10,7 @@ namespace corsika::logging { class MessageOff { protected: template <typename First, typename... Strings> - std::string Message(const First& arg, const Strings&... rest) { + std::string Message(const First&, const Strings&...) { return ""; } }; diff --git a/Framework/ProcessSequence/testProcessSequence.cc b/Framework/ProcessSequence/testProcessSequence.cc index eb8a8cbb9d83dc9e208b8d68273229f03efe0a52..a83d23b3cb290ba715e726ce952f0ea85149095a 100644 --- a/Framework/ProcessSequence/testProcessSequence.cc +++ b/Framework/ProcessSequence/testProcessSequence.cc @@ -16,7 +16,7 @@ public: Process1() {} void Init() {} // cout << "Process1::Init" << endl; } template <typename D, typename T, typename S> - inline EProcessReturn DoContinuous(D& d, T& t, S& s) const { + inline EProcessReturn DoContinuous(D& d, T&, S&) const { for (int i = 0; i < 10; ++i) d.p[i] += 1 + i; return EProcessReturn::eOk; } @@ -27,7 +27,7 @@ public: Process2() {} void Init() {} // cout << "Process2::Init" << endl; } template <typename D, typename T, typename S> - inline EProcessReturn DoContinuous(D& d, T& t, S& s) const { + inline EProcessReturn DoContinuous(D& d, T&, S&) const { for (int i = 0; i < 10; ++i) d.p[i] *= 0.7; return EProcessReturn::eOk; } @@ -38,7 +38,7 @@ public: Process3() {} void Init() {} // cout << "Process3::Init" << endl; } template <typename D, typename T, typename S> - inline EProcessReturn DoContinuous(D& d, T& t, S& s) const { + inline EProcessReturn DoContinuous(D& d, T&, S&) const { for (int i = 0; i < 10; ++i) d.p[i] += 0.933; return EProcessReturn::eOk; } @@ -49,7 +49,7 @@ public: Process4() {} void Init() {} // cout << "Process4::Init" << endl; } template <typename D, typename T, typename S> - inline EProcessReturn DoContinuous(D& d, T& t, S& s) const { + inline EProcessReturn DoContinuous(D& d, T&, S&) const { for (int i = 0; i < 10; ++i) d.p[i] /= 1.2; return EProcessReturn::eOk; } diff --git a/Framework/Random/RNGManager.cc b/Framework/Random/RNGManager.cc index 01bc247b40232137fca29578125fb31b777f63c9..e28d9d57b5b02fbd698bbba5c3673573ae5cd8a4 100644 --- a/Framework/Random/RNGManager.cc +++ b/Framework/Random/RNGManager.cc @@ -10,7 +10,8 @@ void corsika::random::RNGManager::RegisterRandomStream(std::string const& pStrea rngs[pStreamName] = std::move(rng); } -corsika::random::RNG& corsika::random::RNGManager::GetRandomStream(std::string const& pStreamName) { +corsika::random::RNG& corsika::random::RNGManager::GetRandomStream( + std::string const& pStreamName) { return rngs.at(pStreamName); } @@ -22,3 +23,9 @@ std::stringstream corsika::random::RNGManager::dumpState() const { return buffer; } +/* +void corsika::random::RNGManager::SetSeedSeq(std::string const& pStreamName, + std::seed_seq const& pSeedSeq) { + seeds[pStreamName] = pSeedSeq; +} +*/ diff --git a/Framework/Random/RNGManager.h b/Framework/Random/RNGManager.h index 52e53cd7570b3d7318aa1424c04cbe0c3b2c30c7..9c38400e3a30aa2dedabcba43dfabb82a1c789c9 100644 --- a/Framework/Random/RNGManager.h +++ b/Framework/Random/RNGManager.h @@ -38,7 +38,12 @@ namespace corsika::random { * into a std::stringstream. */ std::stringstream dumpState() const; + + /** + * set seed_seq of \a pStreamName to \a pSeedSeq + */ + // void SetSeedSeq(std::string const& pStreamName, std::seed_seq& const pSeedSeq); }; -} // namespace Random +} // namespace corsika::random #endif diff --git a/Framework/Random/testRandom.cc b/Framework/Random/testRandom.cc index f2d6fcdcad92c34bfb65f18e5701fe93ff1616f9..222a25549c6b3a8a01ba3f7298ec4024e2211c67 100644 --- a/Framework/Random/testRandom.cc +++ b/Framework/Random/testRandom.cc @@ -21,6 +21,8 @@ SCENARIO("random-number streams can be registered and retrieved") { THEN("an unknown sequence cannot be retrieved") { REQUIRE_THROWS(rngManager.GetRandomStream("stream_UNKNOWN")); } + + // seeding not covered yet } } } diff --git a/Framework/StackInterface/StackIterator.h b/Framework/StackInterface/StackIterator.h index 2045f785de5c9ea18bd87d3202d9743e975b20f1..bcbb8340d6aaa02b317dbeb123a1c99bcc650a31 100644 --- a/Framework/StackInterface/StackIterator.h +++ b/Framework/StackInterface/StackIterator.h @@ -56,18 +56,18 @@ namespace corsika::stack { public: // StackIterator() : fData(0), fIndex(0) { } StackIteratorInterface(StackType& data, const int index) - : fData(&data) - , fIndex(index) {} + : fIndex(index) + , fData(&data) {} private: StackIteratorInterface(const StackIteratorInterface& mit) - : fData(mit.fData) - , fIndex(mit.fIndex) {} + : fIndex(mit.fIndex) + , fData(mit.fData) {} public: StackIteratorInterface& operator=(const StackIteratorInterface& mit) { - fData = mit.fData; fIndex = mit.fIndex; + fData = mit.fData; return *this; } diff --git a/Framework/Units/testUnits.cc b/Framework/Units/testUnits.cc index 6e77e4a01e62d2e5cd63e6ad286982fca6ef1766..7fc0b00a6e3959d1cce05e31ed3239a7a82105df 100644 --- a/Framework/Units/testUnits.cc +++ b/Framework/Units/testUnits.cc @@ -20,6 +20,7 @@ TEST_CASE("PhysicalUnits", "[Units]") { REQUIRE(E1 == 10_GeV); LengthType l1 = 10_nm; + l1 = l1; LengthType arr0[5]; arr0[0] = 5_m; diff --git a/Processes/CMakeLists.txt b/Processes/CMakeLists.txt index 9b81c6d9857687cb808691565a1b5c9b6b413cfd..fe594f3afa5c20989b0dfc58a32a94f986b5fe7c 100644 --- a/Processes/CMakeLists.txt +++ b/Processes/CMakeLists.txt @@ -1,2 +1,3 @@ add_subdirectory (NullModel) add_subdirectory (Sibyll) +add_subdirectory (StackInspector) diff --git a/Processes/StackInspector/CMakeLists.txt b/Processes/StackInspector/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..90b92bca58b8f9967591197bdbe0b64e01981f6f --- /dev/null +++ b/Processes/StackInspector/CMakeLists.txt @@ -0,0 +1,61 @@ + +set ( + MODEL_SOURCES + StackInspector.cc + ) + +set ( + MODEL_HEADERS + StackInspector.h + ) + +set ( + MODEL_NAMESPACE + corsika/process/stack_inspector + ) + +add_library (ProcessStackInspector STATIC ${MODEL_SOURCES}) +CORSIKA_COPY_HEADERS_TO_NAMESPACE (ProcessStackInspector ${MODEL_NAMESPACE} ${MODEL_HEADERS}) + +set_target_properties ( + ProcessStackInspector + PROPERTIES + VERSION ${PROJECT_VERSION} + SOVERSION 1 +# PUBLIC_HEADER "${MODEL_HEADERS}" + ) + +# target dependencies on other libraries (also the header onlys) +target_link_libraries ( + ProcessStackInspector + CORSIKAunits + ) + +target_include_directories ( + ProcessStackInspector + INTERFACE + $<BUILD_INTERFACE:${PROJECT_BINARY_DIR}/include> + $<INSTALL_INTERFACE:include/include> + ) + +install ( + TARGETS ProcessStackInspector + LIBRARY DESTINATION lib + ARCHIVE DESTINATION lib +# PUBLIC_HEADER DESTINATION include/${MODEL_NAMESPACE} + ) + + +# -------------------- +# code unit testing +add_executable (testStackInspector testStackInspector.cc) + +target_link_libraries ( + testStackInspector + CORSIKAgeometry + CORSIKAunits + CORSIKAthirdparty # for catch2 + ) + +add_test (NAME testStackInspector COMMAND testStackInspector) + diff --git a/Processes/StackInspector/StackInspector.cc b/Processes/StackInspector/StackInspector.cc new file mode 100644 index 0000000000000000000000000000000000000000..b52ab72b4b26e327a4f80bbbe0642ae1227064d5 --- /dev/null +++ b/Processes/StackInspector/StackInspector.cc @@ -0,0 +1,13 @@ +#include <corsika/process/stack_inspector/StackInspector.h> + +using namespace corsika::process::stack_inspector; + +StackInspector::StackInspector() {} + +StackInspector::~StackInspector() {} + +void StackInspector::init() {} + +void StackInspector::run() {} + +double StackInspector::GetStepLength() { return 0; } diff --git a/Processes/StackInspector/StackInspector.h b/Processes/StackInspector/StackInspector.h new file mode 100644 index 0000000000000000000000000000000000000000..acf22aa7c4f67d455326b5e44abacf3f1ab1478d --- /dev/null +++ b/Processes/StackInspector/StackInspector.h @@ -0,0 +1,23 @@ +#ifndef _Physics_StackInspector_StackInspector_h_ +#define _Physics_StackInspector_StackInspector_h_ + +namespace corsika::process { + + namespace stack_inspector { + + class StackInspector { + + public: + StackInspector(); + ~StackInspector(); + + void init(); + void run(); + double GetStepLength(); + }; + + } // namespace stack_inspector + +} // namespace corsika::process + +#endif diff --git a/Processes/StackInspector/testStackInspector.cc b/Processes/StackInspector/testStackInspector.cc new file mode 100644 index 0000000000000000000000000000000000000000..311c732cec4b3cbdb8bcb4d4886b37df0e940696 --- /dev/null +++ b/Processes/StackInspector/testStackInspector.cc @@ -0,0 +1,12 @@ +#define CATCH_CONFIG_MAIN // This tells Catch to provide a main() - only do this in one + // cpp file +#include <catch2/catch.hpp> + +#include <corsika/units/PhysicalUnits.h> + +TEST_CASE("NullModel", "[processes]") { + + SECTION("bla") {} + + SECTION("blubb") {} +}