11#ifndef ROOT_RDF_RRESULTHANDLE
12#define ROOT_RDF_RRESULTHANDLE
37 std::shared_ptr<ROOT::Internal::RDF::RActionBase>
fActionPtr;
42 const std::type_info *
fType =
nullptr;
45 friend unsigned int RunGraphs(std::vector<RResultHandle>);
65 throw std::runtime_error(ss.str());
72 throw std::runtime_error(
"Trying to access the contents of a null RResultHandle.");
82 fObjPtr(resultMap.fMap.at(
"nominal")),
101 return static_cast<T*
>(
Get());
113 return *
static_cast<T*
>(
Get());
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char ColorStruct_t color const char Pixmap_t Pixmap_t PictureAttributes_t attr const char char ret_data h unsigned char height h Atom_t Int_t ULong_t ULong_t unsigned char prop_list Atom_t Atom_t Atom_t Time_t type
The head node of a RDF computation graph.
void Run(bool jit=true)
Start the event loop with a different mechanism depending on IMT/no IMT, data source/no data source.
A type-erased version of RResultPtr and RResultMap.
bool operator!=(const RResultHandle &rhs) const
T * GetPtr()
Get the pointer to the encapsulated object.
std::shared_ptr< void > fObjPtr
Type erased shared pointer encapsulating the wrapped result.
ROOT::Detail::RDF::RLoopManager * fLoopManager
friend unsigned int RunGraphs(std::vector< RResultHandle >)
Trigger the event loop of multiple RDataFrames concurrently.
void * Get()
Get the pointer to the encapsulated result.
bool IsReady() const
Check whether the result has already been computed.
std::shared_ptr< ROOT::Internal::RDF::RActionBase > fActionPtr
Owning pointer to the action that will produce this result.
void CheckType(const std::type_info &type)
Compare given type to the type of the wrapped result and throw if the types don't match.
RResultHandle(const RResultPtr< T > &resultPtr)
RResultHandle(const Experimental::RResultMap< T > &resultMap)
RResultHandle(const RResultHandle &)=default
std::shared_ptr< ROOT::Internal::RDF::RActionBase > fVariedActionPtr
Owning pointer to the varied action that will produce these results if any.
const T & GetValue()
Get a const reference to the encapsulated object.
RResultHandle(RResultHandle &&)=default
const std::type_info * fType
Type of the wrapped result.
bool operator==(const RResultHandle &rhs) const
Smart pointer for the return type of actions.
std::string TypeID2TypeName(const std::type_info &id)
Returns the name of a type starting from its type_info An empty string is returned in case of failure...
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...