Jpp  master_rocky-37-gf0c5bc59d
the software that should make you happy
JAssembler.hh
Go to the documentation of this file.
1 #ifndef __JTOOLS__JASSEMBLER__
2 #define __JTOOLS__JASSEMBLER__
3 
4 #include "JLang/JVoid.hh"
5 
6 /**
7  * \author mdejong
8  */
9 
10 namespace JTOOLS {}
11 namespace JPP { using namespace JTOOLS; }
12 
13 namespace JTOOLS {
14 
15  using JLANG::JVoid;
16 
17 
18  /**
19  * Auxiliary class to check whether given template is a collection,
20  * i.e.\ has a defined type <tt>collection_type</tt>.
21  */
22  template<class T, class JType_t = void>
23  struct JAssembler
24  {
25  static const bool is_collection = false;
26  };
27 
28 
29  /**
30  * Template specialisation of class JAssembler for classes
31  * with a defined type <tt>collection_type</tt>.
32  */
33  template<class T>
34  struct JAssembler<T, typename JVoid<typename T::collection_type>::type>
35  {
36  static const bool is_collection = true;
37  };
38 }
39 
40 #endif
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
Auxiliary classes and methods for multi-dimensional interpolations and histograms.
Auxiliary class for void type definition.
Definition: JVoid.hh:21
Auxiliary class to check whether given template is a collection, i.e. has a defined type collection_t...
Definition: JAssembler.hh:24
static const bool is_collection
Definition: JAssembler.hh:25