Logo ROOT  
Reference Guide
TEveTreeTools.h
Go to the documentation of this file.
1// @(#)root/eve:$Id$
2// Authors: Matevz Tadel & Alja Mrak-Tadel: 2006, 2007
3
4/*************************************************************************
5 * Copyright (C) 1995-2007, Rene Brun and Fons Rademakers. *
6 * All rights reserved. *
7 * *
8 * For the licensing terms see $ROOTSYS/LICENSE. *
9 * For the list of contributors see $ROOTSYS/README/CREDITS. *
10 *************************************************************************/
11
12#ifndef ROOT_TEveTreeTools
13#define ROOT_TEveTreeTools
14
15#include "TSelectorDraw.h"
16#include "TEventList.h"
17
18/******************************************************************************/
19// TEveSelectorToEventList
20/******************************************************************************/
21
23{
26
27protected:
30public:
31 TEveSelectorToEventList(TEventList* evl, const char* sel);
32
33 virtual Int_t Version() const { return 1; }
34 virtual Bool_t Process(Long64_t entry);
35
36 ClassDef(TEveSelectorToEventList, 1); // TSelector that stores entry numbers of matching TTree entries into an event-list.
37};
38
39/******************************************************************************/
40// TEvePointSelectorConsumer, TEvePointSelector
41/******************************************************************************/
42
44
46{
47public:
49
50protected:
51 ETreeVarType_e fSourceCS; // Coordinate-System of the source tree variables
52
53public:
56
57 virtual void InitFill(Int_t /*subIdNum*/) {}
58 virtual void TakeAction(TEvePointSelector*) = 0;
59
62
63 ClassDef(TEvePointSelectorConsumer, 1); // Virtual base for classes that can be filled from TTree data via the TEvePointSelector class.
64};
65
67{
68 TEvePointSelector(const TEvePointSelector&); // Not implemented
69 TEvePointSelector& operator=(const TEvePointSelector&); // Not implemented
70
71protected:
74
77
80
82
83public:
85 const char* vexp="", const char* sel="");
86 virtual ~TEvePointSelector() {}
87
88 virtual Long64_t Select(const char* selection=0);
89 virtual Long64_t Select(TTree* t, const char* selection=0);
90 virtual void TakeAction();
91
92
93 TTree* GetTree() const { return fTree; }
94 void SetTree(TTree* t) { fTree = t; }
95
98
99 const char* GetVarexp() const { return fVarexp; }
100 void SetVarexp(const char* v) { fVarexp = v; }
101
102 const char* GetSelection() const { return fSelection; }
103 void SetSelection(const char* s) { fSelection = s; }
104
105 const char* GetSubIdExp() const { return fSubIdExp; }
106 void SetSubIdExp(const char* s) { fSubIdExp = s; }
107
108 Int_t GetSubIdNum() const { return fSubIdNum; }
109
110 ClassDef(TEvePointSelector, 1); // TSelector for direct extraction of point-like data from a Tree.
111};
112
113#endif
#define c(i)
Definition: RSha256.hxx:101
int Int_t
Definition: RtypesCore.h:41
bool Bool_t
Definition: RtypesCore.h:59
long long Long64_t
Definition: RtypesCore.h:69
#define ClassDef(name, id)
Definition: Rtypes.h:326
TEvePointSelectorConsumer is a virtual base for classes that can be filled from TTree data via the TE...
Definition: TEveTreeTools.h:46
void SetSourceCS(ETreeVarType_e cs)
Definition: TEveTreeTools.h:61
virtual void TakeAction(TEvePointSelector *)=0
ETreeVarType_e fSourceCS
Definition: TEveTreeTools.h:51
ETreeVarType_e GetSourceCS() const
Definition: TEveTreeTools.h:60
virtual ~TEvePointSelectorConsumer()
Definition: TEveTreeTools.h:55
TEvePointSelectorConsumer(ETreeVarType_e cs=kTVT_XYZ)
Definition: TEveTreeTools.h:54
virtual void InitFill(Int_t)
Definition: TEveTreeTools.h:57
TEvePointSelector is a sub-class of TSelectorDraw for direct extraction of point-like data from a Tre...
Definition: TEveTreeTools.h:67
const char * GetSelection() const
TEvePointSelector(const TEvePointSelector &)
TEvePointSelectorConsumer * GetConsumer() const
Definition: TEveTreeTools.h:96
const char * GetVarexp() const
Definition: TEveTreeTools.h:99
void SetSubIdExp(const char *s)
virtual Long64_t Select(const char *selection=0)
Process the tree, select points matching 'selection'.
TTree * GetTree() const
Definition: TEveTreeTools.h:93
void SetTree(TTree *t)
Definition: TEveTreeTools.h:94
Int_t GetSubIdNum() const
TEvePointSelectorConsumer * fConsumer
Definition: TEveTreeTools.h:73
TEvePointSelector & operator=(const TEvePointSelector &)
const char * GetSubIdExp() const
void SetVarexp(const char *v)
virtual ~TEvePointSelector()
Definition: TEveTreeTools.h:86
void SetConsumer(TEvePointSelectorConsumer *c)
Definition: TEveTreeTools.h:97
virtual void TakeAction()
Callback from tree-player after a chunk of data has been processed.
void SetSelection(const char *s)
TSelector that stores entry numbers of matching TTree entries into an event-list.
Definition: TEveTreeTools.h:23
TEveSelectorToEventList & operator=(const TEveSelectorToEventList &)
TEveSelectorToEventList(const TEveSelectorToEventList &)
virtual Int_t Version() const
Definition: TEveTreeTools.h:33
virtual Bool_t Process(Long64_t entry)
Process entry.
A TEventList object is a list of selected events (entries) in a TTree.
Definition: TEventList.h:31
A doubly linked list.
Definition: TList.h:44
A specialized TSelector for TTree::Draw.
Definition: TSelectorDraw.h:31
Basic string class.
Definition: TString.h:131
A TTree represents a columnar dataset.
Definition: TTree.h:72
static constexpr double s