IAP GITLAB

Skip to content
Snippets Groups Projects
Commit 5574e6d5 authored by ralfulrich's avatar ralfulrich
Browse files

coding guidelines

parent 4257da6c
No related branches found
No related tags found
1 merge request!280Refactory 2020
Showing
with 123 additions and 197 deletions
/*
* (c) Copyright 2018 CORSIKA Project, corsika-project@lists.kit.edu
*
* See file AUTHORS for a list of contributors.
* (c) Copyright 2020 CORSIKA Project, corsika-project@lists.kit.edu
*
* This software is distributed under the terms of the GNU General Public
* Licence version 3 (GPL Version 3). See file LICENSE for a full version of
......@@ -28,10 +26,9 @@ namespace corsika {
template <typename TProcess1, typename TProcess2>
template <typename Particle, typename VTNType>
EProcessReturn ProcessSequence<TProcess1, TProcess2>::doBoundaryCrossing(Particle& particle,
VTNType const& from,
VTNType const& to) {
EProcessReturn ret = EProcessReturn::eOk;
ProcessReturn ProcessSequence<TProcess1, TProcess2>::doBoundaryCrossing(
Particle& particle, VTNType const& from, VTNType const& to) {
ProcessReturn ret = ProcessReturn::Ok;
if constexpr (std::is_base_of_v<BoundaryCrossingProcess<process1_type>,
process1_type> ||
......@@ -50,8 +47,9 @@ namespace corsika {
template <typename TProcess1, typename TProcess2>
template <typename TParticle, typename TTrack>
EProcessReturn ProcessSequence<TProcess1, TProcess2>::doContinuous(TParticle& particle, TTrack& vT) {
EProcessReturn ret = EProcessReturn::eOk;
ProcessReturn ProcessSequence<TProcess1, TProcess2>::doContinuous(TParticle& particle,
TTrack& vT) {
ProcessReturn ret = ProcessReturn::Ok;
if constexpr (std::is_base_of_v<ContinuousProcess<process1_type>, process1_type> ||
t1ProcSeq) {
ret |= A_.doContinuous(particle, vT);
......@@ -105,7 +103,8 @@ namespace corsika {
template <typename TProcess1, typename TProcess2>
template <typename TParticle, typename TTrack>
LengthType ProcessSequence<TProcess1, TProcess2>::maxStepLength(TParticle& particle, TTrack& vTrack) {
LengthType ProcessSequence<TProcess1, TProcess2>::maxStepLength(TParticle& particle,
TTrack& vTrack) {
LengthType max_length = // if no other process in the sequence implements it
std::numeric_limits<double>::infinity() * meter;
......@@ -142,7 +141,7 @@ namespace corsika {
template <typename TProcess1, typename TProcess2>
template <typename TSecondaryView>
inline EProcessReturn ProcessSequence<TProcess1, TProcess2>::selectInteraction(
inline ProcessReturn ProcessSequence<TProcess1, TProcess2>::selectInteraction(
TSecondaryView& view, [[maybe_unused]] InverseGrammageType lambda_inv_select,
[[maybe_unused]] InverseGrammageType lambda_inv_sum) {
......@@ -150,10 +149,10 @@ namespace corsika {
if constexpr (t1ProcSeq) {
// if A is a process sequence --> check inside
EProcessReturn const ret =
ProcessReturn const ret =
A_.selectInteraction(view, lambda_inv_select, lambda_inv_sum);
// if A_ did succeed, stop routine. Not checking other static branch B_.
if (ret != EProcessReturn::eOk) { return ret; }
if (ret != ProcessReturn::Ok) { return ret; }
} else if constexpr (std::is_base_of_v<InteractionProcess<process1_type>,
process1_type>) {
// if this is not a ContinuousProcess --> evaluate probability
......@@ -162,9 +161,9 @@ namespace corsika {
// check if we should execute THIS process and then EXIT
if (lambda_inv_select < lambda_inv_sum) {
A_.doInteraction(view);
return EProcessReturn::eInteracted;
return ProcessReturn::Interacted;
}
} // end branch A_
} // end branch A
if constexpr (t2ProcSeq) {
// if B_ is a process sequence --> check inside
......@@ -176,10 +175,10 @@ namespace corsika {
// check if we should execute THIS process and then EXIT
if (lambda_inv_select < lambda_inv_sum) {
B_.doInteraction(view);
return EProcessReturn::eInteracted;
return ProcessReturn::Interacted;
}
} // end branch B_
return EProcessReturn::eOk;
return ProcessReturn::Ok;
}
template <typename TProcess1, typename TProcess2>
......@@ -203,7 +202,7 @@ namespace corsika {
template <typename TProcess1, typename TProcess2>
// select decay process
template <typename TSecondaryView>
inline EProcessReturn ProcessSequence<TProcess1, TProcess2>::selectDecay(
inline ProcessReturn ProcessSequence<TProcess1, TProcess2>::selectDecay(
TSecondaryView& view, [[maybe_unused]] InverseTimeType decay_inv_select,
[[maybe_unused]] InverseTimeType decay_inv_sum) {
......@@ -211,9 +210,9 @@ namespace corsika {
if constexpr (t1ProcSeq) {
// if A_ is a process sequence --> check inside
EProcessReturn const ret = A_.selectDecay(view, decay_inv_select, decay_inv_sum);
ProcessReturn const ret = A_.selectDecay(view, decay_inv_select, decay_inv_sum);
// if A_ did succeed, stop routine here (not checking other static branch B_)
if (ret != EProcessReturn::eOk) { return ret; }
if (ret != ProcessReturn::Ok) { return ret; }
} else if constexpr (std::is_base_of_v<DecayProcess<process1_type>, process1_type>) {
// if this is not a ContinuousProcess --> evaluate probability
decay_inv_sum += A_.getInverseLifetime(view.parent());
......@@ -221,7 +220,7 @@ namespace corsika {
if (decay_inv_select < decay_inv_sum) { // more pedagogical: rndm_select <
// decay_inv_sum / decay_inv_tot
A_.doDecay(view);
return EProcessReturn::eDecayed;
return ProcessReturn::Decayed;
}
} // end branch A_
......@@ -234,10 +233,10 @@ namespace corsika {
// check if we should execute THIS process and then EXIT
if (decay_inv_select < decay_inv_sum) {
B_.doDecay(view);
return EProcessReturn::eDecayed;
return ProcessReturn::Decayed;
}
} // end branch B_
return EProcessReturn::eOk;
return ProcessReturn::Ok;
}
/**
......
......@@ -27,7 +27,7 @@ namespace corsika {
template <typename TProcess1, typename TProcess2, typename TSelect>
template <typename TParticle, typename TVTNType>
EProcessReturn SwitchProcessSequence<TProcess1, TProcess2, TSelect>::doBoundaryCrossing(
ProcessReturn SwitchProcessSequence<TProcess1, TProcess2, TSelect>::doBoundaryCrossing(
TParticle& particle, TVTNType const& from, TVTNType const& to) {
switch (select_(particle)) {
case SwitchResult::First: {
......@@ -47,14 +47,13 @@ namespace corsika {
break;
}
}
return EProcessReturn::eOk;
return ProcessReturn::Ok;
}
template <typename TProcess1, typename TProcess2, typename TSelect>
template <typename TParticle, typename TTrack>
inline EProcessReturn
SwitchProcessSequence<TProcess1, TProcess2, TSelect>::doContinuous(TParticle& particle,
TTrack& vT) {
inline ProcessReturn SwitchProcessSequence<TProcess1, TProcess2, TSelect>::doContinuous(
TParticle& particle, TTrack& vT) {
switch (select_(particle)) {
case SwitchResult::First: {
if constexpr (std::is_base_of_v<ContinuousProcess<process1_type>,
......@@ -73,7 +72,7 @@ namespace corsika {
break;
}
}
return EProcessReturn::eOk;
return ProcessReturn::Ok;
}
template <typename TProcess1, typename TProcess2, typename TSelect>
......@@ -157,7 +156,7 @@ namespace corsika {
template <typename TProcess1, typename TProcess2, typename TSelect>
template <typename TSecondaryView>
inline EProcessReturn
inline ProcessReturn
SwitchProcessSequence<TProcess1, TProcess2, TSelect>::selectInteraction(
TSecondaryView& view, [[maybe_unused]] InverseGrammageType lambda_inv_select,
[[maybe_unused]] InverseGrammageType lambda_inv_sum) {
......@@ -165,10 +164,10 @@ namespace corsika {
case SwitchResult::First: {
if constexpr (t1ProcSeq) {
// if A_ is a process sequence --> check inside
EProcessReturn const ret =
ProcessReturn const ret =
A_.selectInteraction(view, lambda_inv_select, lambda_inv_sum);
// if A_ did succeed, stop routine. Not checking other static branch B_.
if (ret != EProcessReturn::eOk) { return ret; }
if (ret != ProcessReturn::Ok) { return ret; }
} else if constexpr (std::is_base_of_v<InteractionProcess<process1_type>,
process1_type>) {
// if this is not a ContinuousProcess --> evaluate probability
......@@ -176,7 +175,7 @@ namespace corsika {
// check if we should execute THIS process and then EXIT
if (lambda_inv_select < lambda_inv_sum) {
A_.doInteraction(view);
return EProcessReturn::eInteracted;
return ProcessReturn::Interacted;
}
} // end branch A_
break;
......@@ -194,13 +193,13 @@ namespace corsika {
// check if we should execute THIS process and then EXIT
if (lambda_inv_select < lambda_inv_sum) {
B_.doInteraction(view);
return EProcessReturn::eInteracted;
return ProcessReturn::Interacted;
}
} // end branch B_
break;
}
}
return EProcessReturn::eOk;
return ProcessReturn::Ok;
}
template <typename TProcess1, typename TProcess2, typename TSelect>
......@@ -232,17 +231,16 @@ namespace corsika {
template <typename TProcess1, typename TProcess2, typename TSelect>
// select decay process
template <typename TSecondaryView>
inline EProcessReturn SwitchProcessSequence<TProcess1, TProcess2, TSelect>::selectDecay(
inline ProcessReturn SwitchProcessSequence<TProcess1, TProcess2, TSelect>::selectDecay(
TSecondaryView& view, [[maybe_unused]] InverseTimeType decay_inv_select,
[[maybe_unused]] InverseTimeType decay_inv_sum) {
switch (select_(view.parent())) {
case SwitchResult::First: {
if constexpr (t1ProcSeq) {
// if A_ is a process sequence --> check inside
EProcessReturn const ret =
A_.selectDecay(view, decay_inv_select, decay_inv_sum);
ProcessReturn const ret = A_.selectDecay(view, decay_inv_select, decay_inv_sum);
// if A_ did succeed, stop routine here (not checking other static branch B_)
if (ret != EProcessReturn::eOk) { return ret; }
if (ret != ProcessReturn::Ok) { return ret; }
} else if constexpr (std::is_base_of_v<DecayProcess<process1_type>,
process1_type>) {
// if this is not a ContinuousProcess --> evaluate probability
......@@ -251,7 +249,7 @@ namespace corsika {
if (decay_inv_select < decay_inv_sum) {
// more pedagogical: rndm_select < decay_inv_sum / decay_inv_tot
A_.doDecay(view);
return EProcessReturn::eDecayed;
return ProcessReturn::Decayed;
}
} // end branch A_
break;
......@@ -269,13 +267,13 @@ namespace corsika {
// check if we should execute THIS process and then EXIT
if (decay_inv_select < decay_inv_sum) {
B_.doDecay(view);
return EProcessReturn::eDecayed;
return ProcessReturn::Decayed;
}
} // end branch B_
break;
}
}
return EProcessReturn::eOk;
return ProcessReturn::Ok;
}
/// traits marker to identify objectas ProcessSequence
......
/*
* (c) Copyright 2018 CORSIKA Project, corsika-project@lists.kit.edu
*
* See file AUTHORS for a list of contributors.
*
* This software is distributed under the terms of the GNU General Public
* Licence version 3 (GPL Version 3). See file LICENSE for a full version of
* the license.
*/
#pragma once
#include <corsika/modules/NullModel.hpp>
#include <corsika/setup/SetupStack.hpp>
#include <corsika/setup/SetupTrajectory.hpp>
namespace corsika::null_model {
void NullModel::Init() {}
NullModel::NullModel(LengthType maxStepLength)
: fMaxStepLength(maxStepLength) {}
template <>
corsika::EProcessReturn NullModel::DoContinuous(corsika::setup::Stack::ParticleType&,
corsika::setup::Trajectory&) const {
return corsika::EProcessReturn::eOk;
}
template <>
LengthType NullModel::MaxStepLength(corsika::setup::Stack::ParticleType&,
corsika::setup::Trajectory&) const {
return fMaxStepLength;
}
} // namespace corsika::null_model
......@@ -40,7 +40,7 @@ namespace corsika {
public:
// Base processor type for use in other template classes
using TProcessType = TDerived;
using process_type = TDerived;
};
} // namespace corsika
......@@ -21,8 +21,8 @@ namespace corsika {
* \p from and \p to.
*/
template <typename TParticle, typename TVolumeNode>
EProcessReturn DoBoundaryCrossing(TParticle&, TVolumeNode const& from,
TVolumeNode const& to);
ProcessReturn DoBoundaryCrossing(TParticle&, TVolumeNode const& from,
TVolumeNode const& to);
};
} // namespace corsika
......@@ -30,11 +30,11 @@ namespace corsika {
// here starts the interface part
// -> enforce TDerived to implement DoContinuous...
template <typename TParticle, typename TTrack>
EProcessReturn doContinuous(TParticle&, TTrack const&) const;
ProcessReturn doContinuous(TParticle&, TTrack const&) const;
// -> enforce TDerived to implement MaxStepLength...
template <typename TParticle, typename TTrack>
units::si::LengthType maxStepLength(TParticle const& p, TTrack const& track) const;
LengthType maxStepLength(TParticle const& p, TTrack const& track) const;
};
} // namespace corsika
......@@ -30,7 +30,7 @@ namespace corsika {
/// here starts the interface-definition part
// -> enforce TDerived to implement DoDecay...
template <typename TParticle>
EProcessReturn doDecay(TParticle&);
ProcessReturn doDecay(TParticle&);
template <typename TParticle>
TimeType getLifetime(TParticle const&);
......
......@@ -30,14 +30,13 @@ namespace corsika {
/// here starts the interface-definition part
// -> enforce TDerived to implement DoInteraction...
template <typename TParticle>
EProcessReturn doInteraction(TParticle&);
ProcessReturn doInteraction(TParticle&);
template <typename TParticle>
corsika::units::si::GrammageType getInteractionLength(TParticle const&);
GrammageType getInteractionLength(TParticle const&);
template <typename TParticle>
corsika::units::si::InverseGrammageType getInverseInteractionLength(
TParticle const& particle) {
InverseGrammageType getInverseInteractionLength(TParticle const& particle) {
return 1. / ref().getInteractionLength(particle);
}
};
......
......@@ -16,43 +16,43 @@ namespace corsika {
that can be accumulated easily with "|="
*/
enum class EProcessReturn : int {
eOk = (1 << 0),
eParticleAbsorbed = (1 << 2),
eInteracted = (1 << 3),
eDecayed = (1 << 4),
enum class ProcessReturn : int {
Ok = (1 << 0),
ParticleAbsorbed = (1 << 2),
Interacted = (1 << 3),
Decayed = (1 << 4),
};
inline EProcessReturn operator|(EProcessReturn a, EProcessReturn b) {
return static_cast<EProcessReturn>(static_cast<int>(a) | static_cast<int>(b));
inline ProcessReturn operator|(ProcessReturn a, ProcessReturn b) {
return static_cast<ProcessReturn>(static_cast<int>(a) | static_cast<int>(b));
}
inline EProcessReturn& operator|=(EProcessReturn& a, const EProcessReturn b) {
inline ProcessReturn& operator|=(ProcessReturn& a, const ProcessReturn b) {
return a = a | b;
}
inline EProcessReturn operator&(const EProcessReturn a, const EProcessReturn b) {
return static_cast<EProcessReturn>(static_cast<int>(a) & static_cast<int>(b));
inline ProcessReturn operator&(const ProcessReturn a, const ProcessReturn b) {
return static_cast<ProcessReturn>(static_cast<int>(a) & static_cast<int>(b));
}
inline bool operator==(const EProcessReturn a, const EProcessReturn b) {
inline bool operator==(const ProcessReturn a, const ProcessReturn b) {
return (static_cast<int>(a) & static_cast<int>(b)) != 0;
}
inline bool isOk(const EProcessReturn a) {
return static_cast<int>(a & EProcessReturn::eOk);
inline bool isOk(const ProcessReturn a) {
return static_cast<int>(a & ProcessReturn::Ok);
}
inline bool isAbsorbed(const EProcessReturn a) {
return static_cast<int>(a & EProcessReturn::eParticleAbsorbed);
inline bool isAbsorbed(const ProcessReturn a) {
return static_cast<int>(a & ProcessReturn::ParticleAbsorbed);
}
inline bool isDecayed(const EProcessReturn a) {
return static_cast<int>(a & EProcessReturn::eDecayed);
inline bool isDecayed(const ProcessReturn a) {
return static_cast<int>(a & ProcessReturn::Decayed);
}
inline bool isInteracted(const EProcessReturn a) {
return static_cast<int>(a & EProcessReturn::eInteracted);
inline bool isInteracted(const ProcessReturn a) {
return static_cast<int>(a & ProcessReturn::Interacted);
}
} // namespace corsika
......@@ -67,11 +67,11 @@ namespace corsika {
, B_(in_B) {}
template <typename TParticle, typename TVTNType>
EProcessReturn doBoundaryCrossing(TParticle& particle, TVTNType const& from,
TVTNType const& to);
ProcessReturn doBoundaryCrossing(TParticle& particle, TVTNType const& from,
TVTNType const& to);
template <typename TParticle, typename TTrack>
inline EProcessReturn doContinuous(TParticle& particle, TTrack& vT);
inline ProcessReturn doContinuous(TParticle& particle, TTrack& vT);
template <typename TSecondaries>
inline void doSecondaries(TSecondaries& vS);
......@@ -104,7 +104,7 @@ namespace corsika {
inline InverseGrammageType getInverseInteractionLength(TParticle&& particle);
template <typename TSecondaryView>
inline EProcessReturn selectInteraction(
inline ProcessReturn selectInteraction(
TSecondaryView& view, [[maybe_unused]] InverseGrammageType lambda_inv_select,
[[maybe_unused]] InverseGrammageType lambda_inv_sum =
InverseGrammageType::zero());
......@@ -119,7 +119,7 @@ namespace corsika {
// select decay process
template <typename TSecondaryView>
inline EProcessReturn selectDecay(
inline ProcessReturn selectDecay(
TSecondaryView& view, [[maybe_unused]] InverseTimeType decay_inv_select,
[[maybe_unused]] InverseTimeType decay_inv_sum = InverseTimeType::zero());
};
......
......@@ -99,11 +99,11 @@ namespace corsika {
, B_(in_B) {}
template <typename TParticle, typename TVTNType>
EProcessReturn doBoundaryCrossing(TParticle& particle, TVTNType const& from,
TVTNType const& to);
ProcessReturn doBoundaryCrossing(TParticle& particle, TVTNType const& from,
TVTNType const& to);
template <typename TParticle, typename TTrack>
inline EProcessReturn doContinuous(TParticle& particle, TTrack& vT);
inline ProcessReturn doContinuous(TParticle& particle, TTrack& vT);
template <typename TSecondaries>
inline void doSecondaries(TSecondaries& vS);
......@@ -120,7 +120,7 @@ namespace corsika {
inline InverseGrammageType getInverseInteractionLength(TParticle&& particle);
template <typename TSecondaryView>
inline EProcessReturn selectInteraction(
inline ProcessReturn selectInteraction(
TSecondaryView& view, [[maybe_unused]] InverseGrammageType lambda_inv_select,
[[maybe_unused]] InverseGrammageType lambda_inv_sum =
InverseGrammageType::zero());
......@@ -135,7 +135,7 @@ namespace corsika {
// select decay process
template <typename TSecondaryView>
inline EProcessReturn selectDecay(
inline ProcessReturn selectDecay(
TSecondaryView& view, [[maybe_unused]] InverseTimeType decay_inv_select,
[[maybe_unused]] InverseTimeType decay_inv_sum = InverseTimeType::zero());
};
......
/*
* (c) Copyright 2020 CORSIKA Project, corsika-project@lists.kit.edu
*
* This software is distributed under the terms of the GNU General Public
* Licence version 3 (GPL Version 3). See file LICENSE for a full version of
* the license.
*/
#pragma once
#include <corsika/framework/core/PhysicalUnits.hpp>
#include <corsika/framework/process/BaseProcess.hpp>
namespace corsika::null_model {
class NullModel : public corsika::BaseProcess<NullModel> {
LengthType const fMaxStepLength;
public:
NullModel(LengthType maxStepLength = meter * std::numeric_limits<double>::infinity());
void Init();
template <typename Particle, typename Track>
corsika::EProcessReturn DoContinuous(Particle&, Track&) const;
template <typename Particle, typename Track>
LengthType MaxStepLength(Particle&, Track&) const;
};
} // namespace corsika::null_model
#include <corsika/detail/modules/NullModel.inl>
......@@ -30,76 +30,76 @@ int checkSec = 0; // use this as a bit field
int checkCont = 0; // use this as a bit field
class ContinuousProcess1 : public ContinuousProcess<ContinuousProcess1> {
[[maybe_unused]] int fV = 0;
[[maybe_unused]] int v_ = 0;
public:
ContinuousProcess1(const int v)
: fV(v) {
: v_(v) {
cout << "globalCount: " << globalCount << ", fV: " << fV << std::endl;
cout << "globalCount: " << globalCount << ", v_: " << v_ << std::endl;
globalCount++;
}
template <typename D, typename T>
inline EProcessReturn doContinuous(D& d, T&) const {
inline ProcessReturn doContinuous(D& d, T&) const {
cout << "ContinuousProcess1::DoContinuous" << endl;
checkCont |= 1;
for (int i = 0; i < nData; ++i) d.data_[i] += 0.933;
return EProcessReturn::eOk;
return ProcessReturn::Ok;
}
};
class ContinuousProcess2 : public ContinuousProcess<ContinuousProcess2> {
[[maybe_unused]] int fV = 0;
[[maybe_unused]] int v_ = 0;
public:
ContinuousProcess2(const int v)
: fV(v) {
cout << "globalCount: " << globalCount << ", fV: " << fV << std::endl;
: v_(v) {
cout << "globalCount: " << globalCount << ", v_: " << v_ << std::endl;
globalCount++;
}
template <typename D, typename T>
inline EProcessReturn doContinuous(D& d, T&) const {
inline ProcessReturn doContinuous(D& d, T&) const {
cout << "ContinuousProcess2::DoContinuous" << endl;
checkCont |= 2;
for (int i = 0; i < nData; ++i) d.data_[i] += 0.111;
return EProcessReturn::eOk;
return ProcessReturn::Ok;
}
};
class ContinuousProcess3 : public ContinuousProcess<ContinuousProcess3> {
int fV = 0;
int v_ = 0;
public:
ContinuousProcess3(const int v)
: fV(v) {
cout << "globalCount: " << globalCount << ", fV: " << fV << std::endl;
: v_(v) {
cout << "globalCount: " << globalCount << ", v_: " << v_ << std::endl;
globalCount++;
}
template <typename D, typename T>
inline EProcessReturn doContinuous(D& d, T&) const {
inline ProcessReturn doContinuous(D& d, T&) const {
cout << "ContinuousProcess3::DoContinuous" << endl;
checkCont |= 4;
for (int i = 0; i < nData; ++i) d.data_[i] += 0.333;
return EProcessReturn::eOk;
return ProcessReturn::Ok;
}
};
class Process1 : public InteractionProcess<Process1> {
public:
Process1(const int v)
: fV(v) {
cout << "globalCount: " << globalCount << ", fV: " << fV << std::endl;
: v_(v) {
cout << "globalCount: " << globalCount << ", v_: " << v_ << std::endl;
globalCount++;
}
template <typename TView>
inline EProcessReturn doInteraction(TView& v) const {
inline ProcessReturn doInteraction(TView& v) const {
checkInteract |= 1;
for (int i = 0; i < nData; ++i) v.parent().data_[i] += 1 + i;
return EProcessReturn::eOk;
return ProcessReturn::Ok;
}
template <typename TParticle>
......@@ -108,25 +108,25 @@ public:
}
private:
[[maybe_unused]] int fV;
[[maybe_unused]] int v_;
};
class Process2 : public InteractionProcess<Process2> {
[[maybe_unused]] int fV = 0;
[[maybe_unused]] int v_ = 0;
public:
Process2(const int v)
: fV(v) {
cout << "globalCount: " << globalCount << ", fV: " << fV << std::endl;
: v_(v) {
cout << "globalCount: " << globalCount << ", v_: " << v_ << std::endl;
globalCount++;
}
template <typename TView>
inline EProcessReturn doInteraction(TView& v) const {
inline ProcessReturn doInteraction(TView& v) const {
checkInteract |= 2;
for (int i = 0; i < nData; ++i) v.parent().data_[i] /= 1.1;
cout << "Process2::DoInteraction" << endl;
return EProcessReturn::eOk;
return ProcessReturn::Ok;
}
template <typename Particle>
GrammageType getInteractionLength(Particle&) const {
......@@ -136,21 +136,21 @@ public:
};
class Process3 : public InteractionProcess<Process3> {
[[maybe_unused]] int fV = 0;
[[maybe_unused]] int v_ = 0;
public:
Process3(const int v)
: fV(v) {
cout << "globalCount: " << globalCount << ", fV: " << fV << std::endl;
: v_(v) {
cout << "globalCount: " << globalCount << ", v_: " << v_ << std::endl;
globalCount++;
}
template <typename TView>
inline EProcessReturn doInteraction(TView& v) const {
inline ProcessReturn doInteraction(TView& v) const {
checkInteract |= 4;
for (int i = 0; i < nData; ++i) v.parent().data_[i] *= 1.01;
cout << "Process3::DoInteraction" << endl;
return EProcessReturn::eOk;
return ProcessReturn::Ok;
}
template <typename Particle>
GrammageType getInteractionLength(Particle&) const {
......@@ -160,26 +160,26 @@ public:
};
class Process4 : public BaseProcess<Process4> {
[[maybe_unused]] int fV = 0;
[[maybe_unused]] int v_ = 0;
public:
Process4(const int v)
: fV(v) {
cout << "globalCount: " << globalCount << ", fV: " << fV << std::endl;
: v_(v) {
cout << "globalCount: " << globalCount << ", v_: " << v_ << std::endl;
globalCount++;
}
template <typename D, typename T>
inline EProcessReturn doContinuous(D& d, T&) const {
inline ProcessReturn doContinuous(D& d, T&) const {
std::cout << "Base::DoContinuous" << std::endl;
checkCont |= 8;
for (int i = 0; i < nData; ++i) { d.data_[i] /= 1.2; }
return EProcessReturn::eOk;
return ProcessReturn::Ok;
}
template <typename TView>
EProcessReturn doInteraction(TView&) const {
ProcessReturn doInteraction(TView&) const {
checkInteract |= 8;
return EProcessReturn::eOk;
return ProcessReturn::Ok;
}
};
......@@ -194,9 +194,9 @@ class Decay1 : public DecayProcess<Decay1> {
return 1_s;
}
template <typename TView>
EProcessReturn doDecay(TView&) const {
ProcessReturn doDecay(TView&) const {
checkDecay |= 1;
return EProcessReturn::eOk;
return ProcessReturn::Ok;
}
};
......@@ -213,24 +213,24 @@ public:
return 2_s;
}
template <typename TView>
EProcessReturn doDecay(TView&) const {
ProcessReturn doDecay(TView&) const {
checkDecay |= 2;
return EProcessReturn::eOk;
return ProcessReturn::Ok;
}
};
class Stack1 : public StackProcess<Stack1> {
int fCount = 0;
int count_ = 0;
public:
Stack1(const int n)
: StackProcess(n) {}
template <typename TStack>
EProcessReturn doStack(TStack&) {
fCount++;
return EProcessReturn::eOk;
ProcessReturn doStack(TStack&) {
count_++;
return ProcessReturn::Ok;
}
int getCount() const { return fCount; }
int getCount() const { return count_; }
};
struct DummyStack {};
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment