11 #ifndef ROOT_RJITTEDFILTER
12 #define ROOT_RJITTEDFILTER
34 namespace RDFGraphDrawing = ROOT::Internal::RDF::GraphDrawing;
39 class RJittedFilter final :
public RFilterBase {
40 std::unique_ptr<RFilterBase> fConcreteFilter =
nullptr;
43 RJittedFilter(RLoopManager *lm, std::string_view name);
44 ~RJittedFilter() { fLoopManager->Deregister(
this); }
46 void SetFilter(std::unique_ptr<RFilterBase> f);
48 void InitSlot(TTreeReader *r,
unsigned int slot)
final;
49 bool CheckFilters(
unsigned int slot, Long64_t entry)
final;
50 void Report(ROOT::RDF::RCutFlowReport &) const final;
51 void PartialReport(ROOT::RDF::RCutFlowReport &) const final;
52 void FillReport(ROOT::RDF::RCutFlowReport &) const final;
53 void IncrChildrenCount() final;
54 void StopProcessing() final;
55 void ResetChildrenCount() final;
56 void TriggerChildrenCount() final;
57 void ResetReportCount() final;
58 void ClearValueReaders(
unsigned int slot) final;
59 void InitNode() final;
60 void AddFilterName(std::vector<std::
string> &filters) final;
61 void ClearTask(
unsigned int slot) final;
62 std::shared_ptr<RDFGraphDrawing::GraphNode> GetGraph();
69 #endif // ROOT_RJITTEDFILTER