From 99e37e4890978726146df1f7b3d0b2efdbfa30f7 Mon Sep 17 00:00:00 2001 From: Dominik Baack <dominik.baack@tu-dortmund.de> Date: Fri, 18 Sep 2020 17:00:17 +0200 Subject: [PATCH] renamed base process templates --- Framework/ProcessSequence/ContinuousProcess.h | 8 +++++++- Framework/ProcessSequence/InteractionProcess.h | 4 +++- Framework/ProcessSequence/SecondariesProcess.h | 4 +++- Framework/ProcessSequence/StackProcess.h | 11 ++++++++++- 4 files changed, 23 insertions(+), 4 deletions(-) diff --git a/Framework/ProcessSequence/ContinuousProcess.h b/Framework/ProcessSequence/ContinuousProcess.h index 546f368b2..4da02a77e 100644 --- a/Framework/ProcessSequence/ContinuousProcess.h +++ b/Framework/ProcessSequence/ContinuousProcess.h @@ -28,8 +28,14 @@ namespace corsika::process { private: protected: public: - using TDerived = derived; + using _TDerived = TDerived; +<<<<<<< HEAD +======= + TDerived& GetRef() { return static_cast<TDerived&>(*this); } + const TDerived& GetRef() const { return static_cast<const TDerived&>(*this); } + +>>>>>>> renamed base process templates // here starts the interface part // -> enforce TDerived to implement DoContinuous... template <typename TParticle, typename TTrack> diff --git a/Framework/ProcessSequence/InteractionProcess.h b/Framework/ProcessSequence/InteractionProcess.h index 880fbe207..f41320380 100644 --- a/Framework/ProcessSequence/InteractionProcess.h +++ b/Framework/ProcessSequence/InteractionProcess.h @@ -26,7 +26,9 @@ namespace corsika::process { template <typename TDerived> class InteractionProcess : public BaseProcess<TDerived> { - + public: + using _TDerived = TDerived; + using BaseProcess<TDerived>::GetRef; /// here starts the interface-definition part diff --git a/Framework/ProcessSequence/SecondariesProcess.h b/Framework/ProcessSequence/SecondariesProcess.h index e3f1dfff8..8bfd37102 100644 --- a/Framework/ProcessSequence/SecondariesProcess.h +++ b/Framework/ProcessSequence/SecondariesProcess.h @@ -26,7 +26,9 @@ namespace corsika::process { template <typename TDerived> class SecondariesProcess : public BaseProcess<TDerived> { - + public: + using _TDerived = TDerived; + /// here starts the interface-definition part // -> enforce TDerived to implement DoSecondaries... template <typename TSecondaries> diff --git a/Framework/ProcessSequence/StackProcess.h b/Framework/ProcessSequence/StackProcess.h index d54c7944d..ad39f1193 100644 --- a/Framework/ProcessSequence/StackProcess.h +++ b/Framework/ProcessSequence/StackProcess.h @@ -25,13 +25,22 @@ namespace corsika::process { */ template <typename TDerived> - class StackProcess : public BaseProcess<TDerived> { + class StackProcess : public BaseProcess<TDerived>{ + private: + protected: + using _TDerived = TDerived; public: StackProcess() = delete; StackProcess(const unsigned int nStep) : fNStep(nStep) {} +<<<<<<< HEAD +======= + TDerived& GetRef() { return static_cast<TDerived&>(*this); } + const TDerived& GetRef() const { return static_cast<const TDerived&>(*this); } + +>>>>>>> renamed base process templates /// here starts the interface-definition part // -> enforce TDerived to implement DoStack... template <typename TStack> -- GitLab