TVirtualTreePlayer.h

Go to the documentation of this file.
00001 // @(#)root/tree:$Id: TVirtualTreePlayer.h 31561 2009-12-04 16:31:47Z brun $
00002 // Author: Rene Brun   30/08/99
00003 
00004 /*************************************************************************
00005  * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers.               *
00006  * All rights reserved.                                                  *
00007  *                                                                       *
00008  * For the licensing terms see $ROOTSYS/LICENSE.                         *
00009  * For the list of contributors see $ROOTSYS/README/CREDITS.             *
00010  *************************************************************************/
00011 
00012 #ifndef ROOT_TVirtualTreePlayer
00013 #define ROOT_TVirtualTreePlayer
00014 
00015 
00016 //////////////////////////////////////////////////////////////////////////
00017 //                                                                      //
00018 // TVirtualTreePlayer                                                   //
00019 //                                                                      //
00020 // Abstract base class for Tree players.                                //
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;  //Pointer to class of Tree player
00042    static TVirtualTreePlayer  *fgCurrent; //Pointer to current Tree player
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);  //Abstract interface for Tree players
00099 };
00100 
00101 #endif

Generated on Tue Jul 5 14:28:29 2011 for ROOT_528-00b_version by  doxygen 1.5.1