Logo ROOT   6.30.04
Reference Guide
 All Namespaces Files Pages
RJittedAction.cxx
Go to the documentation of this file.
1 // Author: Enrico Guiraud, Danilo Piparo CERN 09/2018
2 
3 /*************************************************************************
4  * Copyright (C) 1995-2018, Rene Brun and Fons Rademakers. *
5  * All rights reserved. *
6  * *
7  * For the licensing terms see $ROOTSYS/LICENSE. *
8  * For the list of contributors see $ROOTSYS/README/CREDITS. *
9  *************************************************************************/
10 
14 #include "TError.h"
15 
16 using ROOT::Internal::RDF::RJittedAction;
17 using ROOT::Detail::RDF::RLoopManager;
18 
19 RJittedAction::RJittedAction(RLoopManager &lm) : RActionBase(&lm, {}, ROOT::Internal::RDF::RBookedCustomColumns{}) { }
20 
21 void RJittedAction::Run(unsigned int slot, Long64_t entry)
22 {
23  R__ASSERT(fConcreteAction != nullptr);
24  fConcreteAction->Run(slot, entry);
25 }
26 
27 void RJittedAction::Initialize()
28 {
29  R__ASSERT(fConcreteAction != nullptr);
30  fConcreteAction->Initialize();
31 }
32 
33 void RJittedAction::InitSlot(TTreeReader *r, unsigned int slot)
34 {
35  R__ASSERT(fConcreteAction != nullptr);
36  fConcreteAction->InitSlot(r, slot);
37 }
38 
39 void RJittedAction::TriggerChildrenCount()
40 {
41  R__ASSERT(fConcreteAction != nullptr);
42  fConcreteAction->TriggerChildrenCount();
43 }
44 
45 void RJittedAction::FinalizeSlot(unsigned int slot)
46 {
47  R__ASSERT(fConcreteAction != nullptr);
48  fConcreteAction->FinalizeSlot(slot);
49 }
50 
51 void RJittedAction::Finalize()
52 {
53  R__ASSERT(fConcreteAction != nullptr);
54  fConcreteAction->Finalize();
55 }
56 
57 void *RJittedAction::PartialUpdate(unsigned int slot)
58 {
59  R__ASSERT(fConcreteAction != nullptr);
60  return fConcreteAction->PartialUpdate(slot);
61 }
62 
63 bool RJittedAction::HasRun() const
64 {
65  if (fConcreteAction != nullptr) {
66  return fConcreteAction->HasRun();
67  } else {
68  // The action has not been JITted. This means that it has not run.
69  return false;
70  }
71 }
72 
73 void RJittedAction::SetHasRun()
74 {
75  R__ASSERT(fConcreteAction != nullptr);
76  return fConcreteAction->SetHasRun();
77 }
78 
79 void RJittedAction::ClearValueReaders(unsigned int slot)
80 {
81  R__ASSERT(fConcreteAction != nullptr);
82  return fConcreteAction->ClearValueReaders(slot);
83 }
84 
85 std::shared_ptr<ROOT::Internal::RDF::GraphDrawing::GraphNode> RJittedAction::GetGraph()
86 {
87  R__ASSERT(fConcreteAction != nullptr);
88  return fConcreteAction->GetGraph();
89 }