|
ATLAS Offline Software
|
Go to the documentation of this file.
15 #ifndef ROOTUTILS_TSMETHODCALL_H
16 #define ROOTUTILS_TSMETHODCALL_H
20 #include "TMethodCall.h"
21 #include "boost/thread/tss.hpp"
56 const std::string&
fname,
57 const std::string&
args,
58 ROOT::EFunctionMatchMode
mode = ROOT::kExactMatch);
114 #endif // not ROOTUTILS_TSMETHODCALL_H
std::unique_ptr< TMethodCall > m_meth
Object to call the method on the payload type.
TSMethodCall & operator=(const TSMethodCall &other)
Assignment.
std::string m_fname
Name of the function we're calling.
Helper for making a thread-safe function call.
TSMethodCall()
Constructor.
std::mutex m_mutex
Control access to m_assign for initialization.
ROOT::EFunctionMatchMode m_mode
Matching mode.
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.
TClass * m_cls
Class that we're calling.
std::atomic< bool > m_initialized
Flag whether or not m_meth has been initialized.
std::string m_args
Argument list.
boost::thread_specific_ptr< TMethodCall > m_tsMeth
Objects used to call the method on the payload object.
~TSMethodCall()
Destructor.