ATLAS Offline Software
Loading...
Searching...
No Matches
ClingCallWrapper.h File Reference
#include "NormalizedTypeNameUtil.h"
#include <type_traits>
#include <array>
#include <string>
#include <sstream>
#include <stdexcept>
#include "TClass.h"
#include "TMethod.h"
#include "TROOT.h"
#include "TInterpreter.h"
#include "TVirtualMutex.h"
#include "TGenericClassInfo.h"
#include "CxxUtils/checker_macros.h"
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  RootUtils::ClingCallWrapperUncheckedReturnValue< T_MethodArgs >
 Intermediate helper class wrapping a cling method call with arbitrary return type. More...
class  RootUtils::ClingCallWrapper< T_ReturnValue, T_MethodArgs >
 Helper class to wrap a cling method call of an object's method with defined return type and argument list. More...
struct  RootUtils::ArgGen< T_MethodArgs >
 helper template to turn an argument list into a prototype string. More...
struct  RootUtils::ArgGen<>
struct  RootUtils::ArgGen< T_First, T_MethodArgs... >

Namespaces

namespace  RootUtils

Functions

template<typename T>
constexpr auto RootUtils::getPtr (typename std::remove_reference< T >::type &arg) noexcept
template<typename ... T_MethodArgs>
ClingCallWrapperUncheckedReturnValue< T_MethodArgs... > RootUtils::getClingCallWrapper (TClass *the_class, const std::string &method_name, bool is_const)
 helper method to wrap a method of a certain name with defined arguments, but arbitrary return type implemented by the given TClass.
template<typename T_ReturnValue, typename ... T_MethodArgs>
ClingCallWrapper< T_ReturnValue, T_MethodArgs... > RootUtils::getClingCallWrapperChecked (ClingCallWrapperUncheckedReturnValue< T_MethodArgs... > &&call_wrapper)
 wrap a cling method call for a method with defined arguments and return types.
template<typename ... T_MethodArgs>
std::string RootUtils::makeArgumentPrototype ()
 template function to create a argument list prototype from a type list.