00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012 #ifndef ROOT_TVirtualTreePlayer
00013 #define ROOT_TVirtualTreePlayer
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #ifndef ROOT_TObject
00025 #include "TObject.h"
00026 #endif
00027
00028 class TClass;
00029 class TTree;
00030 class TH1;
00031 class TTreeFormula;
00032 class TSQLResult;
00033 class TSelector;
00034 class TPrincipal;
00035 class TVirtualIndex;
00036
00037
00038 class TVirtualTreePlayer : public TObject {
00039
00040 private:
00041 static TClass *fgPlayer;
00042 static TVirtualTreePlayer *fgCurrent;
00043
00044 public:
00045 TVirtualTreePlayer() { }
00046 virtual ~TVirtualTreePlayer();
00047 virtual TVirtualIndex *BuildIndex(const TTree *T, const char *majorname, const char *minorname) = 0;
00048 virtual TTree *CopyTree(const char *selection, Option_t *option=""
00049 ,Long64_t nentries=1000000000, Long64_t firstentry=0) = 0;
00050 virtual Long64_t DrawScript(const char *wrapperPrefix,
00051 const char *macrofilename, const char *cutfilename,
00052 Option_t *option, Long64_t nentries, Long64_t firstentry) = 0;
00053 virtual Long64_t DrawSelect(const char *varexp, const char *selection, Option_t *option
00054 ,Long64_t nentries, Long64_t firstentry) = 0;
00055 virtual Int_t Fit(const char *formula ,const char *varexp, const char *selection,Option_t *option ,Option_t *goption
00056 ,Long64_t nentries, Long64_t firstentry) = 0;
00057 virtual Int_t GetDimension() const = 0;
00058 virtual TH1 *GetHistogram() const = 0;
00059 virtual Int_t GetNfill() const = 0;
00060 virtual Long64_t GetEntries(const char *) = 0;
00061 virtual Long64_t GetSelectedRows() const = 0;
00062 virtual TTreeFormula *GetSelect() const = 0;
00063 virtual TTreeFormula *GetVar(Int_t) const = 0;
00064 virtual TTreeFormula *GetVar1() const = 0;
00065 virtual TTreeFormula *GetVar2() const = 0;
00066 virtual TTreeFormula *GetVar3() const = 0;
00067 virtual TTreeFormula *GetVar4() const = 0;
00068 virtual Double_t *GetVal(Int_t) const = 0;
00069 virtual Double_t *GetV1() const = 0;
00070 virtual Double_t *GetV2() const = 0;
00071 virtual Double_t *GetV3() const = 0;
00072 virtual Double_t *GetV4() const = 0;
00073 virtual Double_t *GetW() const = 0;
00074 virtual Int_t MakeClass(const char *classname, const char *option) = 0;
00075 virtual Int_t MakeCode(const char *filename) = 0;
00076 virtual Int_t MakeProxy(const char *classname,
00077 const char *macrofilename = 0, const char *cutfilename = 0,
00078 const char *option = 0, Int_t maxUnrolling = 3) = 0;
00079 virtual TPrincipal *Principal(const char *varexp="", const char *selection="", Option_t *option="np"
00080 ,Long64_t nentries=1000000000, Long64_t firstentry=0) = 0;
00081 virtual Long64_t Process(const char *filename,Option_t *option="", Long64_t nentries=1000000000, Long64_t firstentry=0) = 0;
00082 virtual Long64_t Process(TSelector *selector,Option_t *option="", Long64_t nentries=1000000000, Long64_t firstentry=0) = 0;
00083 virtual Long64_t Scan(const char *varexp, const char *selection, Option_t *option
00084 ,Long64_t nentries, Long64_t firstentry) = 0;
00085 virtual TSQLResult *Query(const char *varexp, const char *selection, Option_t *option
00086 ,Long64_t nentries, Long64_t firstentry) = 0;
00087 virtual void SetEstimate(Long64_t n) = 0;
00088 virtual void SetTree(TTree *t) = 0;
00089 virtual void StartViewer(Int_t ww, Int_t wh) = 0;
00090 virtual Int_t UnbinnedFit(const char *formula ,const char *varexp, const char *selection,Option_t *option
00091 ,Long64_t nentries, Long64_t firstentry) = 0;
00092 virtual void UpdateFormulaLeaves() = 0;
00093
00094 static TVirtualTreePlayer *GetCurrentPlayer();
00095 static TVirtualTreePlayer *TreePlayer(TTree *obj);
00096 static void SetPlayer(const char *player);
00097
00098 ClassDef(TVirtualTreePlayer,0);
00099 };
00100
00101 #endif