Back to home page

EIC code displayed by LXR

 
 

    


Warning, file /include/root/TVirtualTreePlayer.h was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).

0001 // @(#)root/tree:$Id$
0002 // Author: Rene Brun   30/08/99
0003 
0004 /*************************************************************************
0005  * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers.               *
0006  * All rights reserved.                                                  *
0007  *                                                                       *
0008  * For the licensing terms see $ROOTSYS/LICENSE.                         *
0009  * For the list of contributors see $ROOTSYS/README/CREDITS.             *
0010  *************************************************************************/
0011 
0012 #ifndef ROOT_TVirtualTreePlayer
0013 #define ROOT_TVirtualTreePlayer
0014 
0015 
0016 //////////////////////////////////////////////////////////////////////////
0017 //                                                                      //
0018 // TVirtualTreePlayer                                                   //
0019 //                                                                      //
0020 // Abstract base class for Tree players.                                //
0021 //                                                                      //
0022 //////////////////////////////////////////////////////////////////////////
0023 
0024 #include "TObject.h"
0025 
0026 #include <limits>
0027 
0028 class TClass;
0029 class TTree;
0030 class TH1;
0031 class TTreeFormula;
0032 class TSQLResult;
0033 class TSelector;
0034 class TPrincipal;
0035 class TVirtualIndex;
0036 
0037 
0038 class TVirtualTreePlayer : public TObject {
0039 
0040 private:
0041    static TClass              *fgPlayer;  ///< Pointer to class of Tree player
0042    static TVirtualTreePlayer  *fgCurrent; ///< Pointer to current Tree player
0043 
0044 public:
0045    static constexpr Long64_t kMaxEntries = std::numeric_limits<Long64_t>::max();
0046 
0047    TVirtualTreePlayer() { }
0048    ~TVirtualTreePlayer() override;
0049    virtual TVirtualIndex *BuildIndex(const TTree *T, const char *majorname, const char *minorname) = 0;
0050    virtual TTree         *CopyTree(const char *selection, Option_t *option=""
0051                                    ,Long64_t nentries=kMaxEntries, Long64_t firstentry=0) = 0;
0052    virtual Long64_t       DrawScript(const char *wrapperPrefix,
0053                                      const char *macrofilename, const char *cutfilename,
0054                                      Option_t *option, Long64_t nentries, Long64_t firstentry) = 0;
0055    virtual Long64_t       DrawSelect(const char *varexp, const char *selection, Option_t *option
0056                                      ,Long64_t nentries, Long64_t firstentry) = 0;
0057    virtual Int_t          Fit(const char *formula ,const char *varexp, const char *selection,Option_t *option ,Option_t *goption
0058                               ,Long64_t nentries, Long64_t firstentry) = 0;
0059    virtual Int_t          GetDimension() const = 0;
0060    virtual TH1           *GetHistogram() const = 0;
0061    virtual Int_t          GetNfill() const = 0;
0062    virtual Long64_t       GetEntries(const char *) = 0;
0063    virtual Long64_t       GetSelectedRows() const = 0;
0064    virtual TSelector     *GetSelector() const = 0;
0065    virtual TSelector     *GetSelectorFromFile() const = 0;
0066    virtual TTreeFormula  *GetSelect() const = 0;
0067    virtual TTreeFormula  *GetVar(Int_t) const = 0;
0068    virtual TTreeFormula  *GetVar1() const = 0;
0069    virtual TTreeFormula  *GetVar2() const = 0;
0070    virtual TTreeFormula  *GetVar3() const = 0;
0071    virtual TTreeFormula  *GetVar4() const = 0;
0072    virtual Double_t      *GetVal(Int_t) const = 0;
0073    virtual Double_t      *GetV1() const = 0;
0074    virtual Double_t      *GetV2() const = 0;
0075    virtual Double_t      *GetV3() const = 0;
0076    virtual Double_t      *GetV4() const = 0;
0077    virtual Double_t      *GetW() const = 0;
0078    virtual Int_t          MakeClass(const char *classname, const char *option) = 0;
0079    virtual Int_t          MakeCode(const char *filename) = 0;
0080    virtual Int_t          MakeProxy(const char *classname,
0081                                     const char *macrofilename = nullptr, const char *cutfilename = nullptr,
0082                                     const char *option = nullptr, Int_t maxUnrolling = 3) = 0;
0083    virtual Int_t          MakeReader(const char *classname, Option_t *option) = 0;
0084    virtual TPrincipal    *Principal(const char *varexp="", const char *selection="", Option_t *option="np"
0085                                     ,Long64_t nentries=kMaxEntries, Long64_t firstentry=0) = 0;
0086    virtual Long64_t       Process(const char *filename,Option_t *option="", Long64_t nentries=kMaxEntries, Long64_t firstentry=0) = 0;
0087    virtual Long64_t       Process(TSelector *selector,Option_t *option="",  Long64_t nentries=kMaxEntries, Long64_t firstentry=0) = 0;
0088    virtual Long64_t       Scan(const char *varexp, const char *selection, Option_t *option
0089                                ,Long64_t nentries, Long64_t firstentry) = 0;
0090    virtual TSQLResult    *Query(const char *varexp, const char *selection, Option_t *option
0091                                 ,Long64_t nentries, Long64_t firstentry) = 0;
0092    virtual void           SetEstimate(Long64_t n) = 0;
0093    virtual void           SetTree(TTree *t) = 0;
0094    virtual void           StartViewer(Int_t ww, Int_t wh) = 0;
0095    virtual Int_t          UnbinnedFit(const char *formula ,const char *varexp, const char *selection,Option_t *option
0096                                       ,Long64_t nentries, Long64_t firstentry) = 0;
0097    virtual void           UpdateFormulaLeaves() = 0;
0098 
0099    static  TVirtualTreePlayer *GetCurrentPlayer();
0100    static  TVirtualTreePlayer *TreePlayer(TTree *obj);
0101    static void        SetPlayer(const char *player);
0102 
0103    ClassDefOverride(TVirtualTreePlayer,0);  //Abstract interface for Tree players
0104 };
0105 
0106 #endif