16#include "TInterpreter.h"
91 const std::string& fname,
92 const std::string& args,
93 ROOT::EFunctionMatchMode mode )
112 if (
m_cls == 0)
return nullptr;
116 std::lock_guard<std::mutex> lock (
m_mutex);
122 ::Warning (
"RootUtils::Type",
123 "Can't get method for type `%s': %s (%s).",
130 if (!
m_meth->IsValid())
return nullptr;
Helper for thread-safe TMethodCall. Extracted from Type.
Define macros for attributes used to control the static checker.
#define ATLAS_THREAD_SAFE
~TSMethodCall()
Destructor.
ROOT::EFunctionMatchMode m_mode
Matching mode.
TSMethodCall & operator=(const TSMethodCall &other)
Assignment.
boost::thread_specific_ptr< TMethodCall > m_tsMeth
Objects used to call the method on the payload object.
std::string m_fname
Name of the function we're calling.
std::atomic< bool > m_initialized
Flag whether or not m_meth has been initialized.
TMethodCall * call()
Return a pointer to the thread-specific TMethodCall.
void setProto(TClass *cls, const std::string &fname, const std::string &args, ROOT::EFunctionMatchMode mode=ROOT::kExactMatch)
Set the function that we're to call.
TSMethodCall()
Constructor.
std::unique_ptr< TMethodCall > m_meth
Object to call the method on the payload type.
TClass * m_cls
Class that we're calling.
std::string m_args
Argument list.
std::mutex m_mutex
Control access to m_assign for initialization.
Selection rules: declare transient members.