Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-09-17 09:15:38

0001 // @(#)root/treeplayer:$Id$
0002 // Author: Philippe Canal 01/06/2004
0003 
0004 /*************************************************************************
0005  * Copyright (C) 1995-2004, Rene Brun and Fons Rademakers and al.        *
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_TFriendProxy
0013 #define ROOT_TFriendProxy
0014 
0015 #include "TBranchProxyDirector.h"
0016 
0017 class TTree;
0018 
0019 namespace ROOT {
0020 namespace Internal {
0021 
0022    class TFriendProxy {
0023    protected:
0024       TBranchProxyDirector fDirector; ///< Contain pointer to TTree and entry to be read
0025       Int_t  fIndex;                  ///< Index of this tree in the list of friends
0026       bool fHasIndex{false};          ///< Whether this friend has a TTreeIndex attached
0027 
0028    public:
0029       TFriendProxy();
0030       TFriendProxy(TBranchProxyDirector *director, TTree *main, Int_t index);
0031 
0032       TBranchProxyDirector *GetDirector() { return &fDirector; }
0033 
0034       Long64_t GetReadEntry() const;
0035       void     ResetReadEntry();
0036       void     Update(TTree *newmain);
0037       bool HasIndex() const { return fHasIndex; }
0038    };
0039 
0040 } // namespace Internal
0041 } // namespace ROOT
0042 
0043 #endif