14 #include <corsika/detail/framework/process/InteractionProcess.hpp> 51 template <
typename TDerived>
57 template <
typename TParticle>
62 has_method_getInteractionLength_v<TDerived, GrammageType, TParticle const&>,
63 "TDerived has no method with correct signature \"GrammageType " 64 "getInteractionLength(TParticle const&)\" required for " 65 "InteractionProcess<TDerived>. ");
67 return 1. / ref().getInteractionLength(particle);
74 template <
typename TProcess>
76 TProcess,
std::enable_if_t<
77 std::is_base_of_v<InteractionProcess<typename std::decay_t<TProcess>>,
78 typename std::decay_t<TProcess>>>>
Import and extend the phys::units package.
A traits marker to identify InteractionProcess.
Each process in C8 must derive from BaseProcess.
class "quantity" is the heart of the library.
The cascade namespace assembles all objects needed to simulate full particles cascades.
Process describing the interaction of particles.