IAP GITLAB

Skip to content
Snippets Groups Projects
Commit 7bc8214f authored by ralfulrich's avatar ralfulrich
Browse files

some extra comments

parent ed16c4a7
No related branches found
No related tags found
No related merge requests found
......@@ -29,6 +29,12 @@
// definition of stack-data object to store geometry information
template <typename TEnvType>
/**
* @class GeometryData
*
* definition of stack-data object to store geometry information
*/
class GeometryData {
public:
......@@ -57,8 +63,12 @@ private:
std::vector<const BaseNodeType*> fNode;
};
// defintion of a stack-readout object, the iteractor dereference
// operator will deliver access to these function
/**
* @class GeometryDataInterface
*
* corresponding defintion of a stack-readout object, the iteractor
* dereference operator will deliver access to these function
*/
template <typename T, typename TEnvType>
class GeometryDataInterface : public T {
......@@ -120,6 +130,29 @@ namespace corsika::setup {
// this is the REAL stack we use:
using Stack = detail::StackWithGeometry;
/*
See Issue 161
unfortunately clang does not support this in the same way (yet) as
gcc, so we have to distinguish here. If clang cataches up, we
could remove the clang branch here and also in
corsika::Cascade. The gcc code is much more generic and
universal. If we could do the gcc version, we won't had to define
StackView globally, we could do it with MakeView whereever it is
actually needed. Keep an eye on this!
*/
#if defined(__clang__)
using StackView =
corsika::stack::SecondaryView<typename corsika::setup::Stack::StackImpl,
corsika::setup::detail::StackWithGeometryInterface>;
#elif defined(__GNUC__) || defined(__GNUG__)
template <typename S, template <typename> typename _PIType = S::template PIType>
struct MakeView {
using type = corsika::stack::SecondaryView<typename S::StackImpl, _PIType>;
};
using StackView = MakeView<corsika::setup::Stack>::type;
#endif
} // namespace corsika::setup
#endif
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