1#ifndef __JROOTSUPPORTKIT__
2#define __JROOTSUPPORTKIT__
21namespace JPP {
using namespace JROOT; }
48 static inline void execute(TFile* file, std::true_type option)
62 static inline void execute(TFile* file, std::false_type option)
77 execute(file, std::bool_constant<has_method>());
102 static inline void execute(T*
object, std::true_type option)
104 object->actionAtFileRead();
116 static inline void execute(T*
object, std::false_type option)
131 execute(
object, std::bool_constant<has_method>());
172 if (
object != NULL) {
#define JTEST(__A__)
Test macro.
Auxiliary class to handle version management of given class at opening of a ROOT file.
static const bool has_method
true if class has policy method actionAtFileOpen; else false
static JTrue test(JTypecheck< void(*)(int), &U::actionAtFileOpen > *)
static void execute(TFile *file, std::true_type option)
Execute action.
static void execute(TFile *file, std::false_type option)
Execute action.
static void execute(TFile *file)
Execute action.
Auxiliary class to handle version management of given class at reading from a ROOT file.
static void execute(T *object)
Execute action.
static const bool has_method
true if class has policy method actionAtFileRead; else false
static void execute(T *object, std::false_type option)
Execute action.
static void execute(T *object, std::true_type option)
Execute action.
static JTrue test(JTypecheck< void(U::*)(), &U::actionAtFileRead > *)
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
Auxiliary classes and methods for ROOT I/O.
void actionAtFileRead(T *object)
General action method at file read.
int getStreamerVersion(TFile *file, const char *const name)
Get ROOT streamer version of class with given name.
void actionAtFileOpen(TFile *file)
General action method at file open.
Auxiliary class for type checking.
Auxiliary base class for compile time evaluation of test.
static JFalse test(...)
default false