00001 // @(#)root/tree:$Name: $:$Id: TBranchObject.h,v 1.5 2001/08/13 17:23:35 brun Exp $ 00002 // Author: Rene Brun 11/02/96 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_TBranchObject 00013 #define ROOT_TBranchObject 00014 00015 00017 // // 00018 // TBranchObject // 00019 // // 00020 // A Branch for the case of an object. // 00022 00023 00024 #ifndef ROOT_TBranch 00025 #include "TBranch.h" 00026 #endif 00027 00028 class TBranchObject : public TBranch { 00029 00030 protected: 00031 enum { kWarn = BIT(12) }; 00032 00033 TString fClassName; //Class name of referenced object 00034 TObject *fOldObject; 00035 00036 public: 00037 TBranchObject(); 00038 TBranchObject(const char *name, const char *classname, void *addobj, Int_t basketsize=32000, Int_t splitlevel = 0, Int_t compress=-1); 00039 virtual ~TBranchObject(); 00040 00041 virtual void Browse(TBrowser *b); 00042 virtual Int_t Fill(); 00043 virtual const char* GetClassName() const { return fClassName.Data(); }; 00044 virtual const char* GetObjClassName() { return fClassName.Data(); }; 00045 virtual Int_t GetEntry(Int_t entry=0, Int_t getall = 0); 00046 Bool_t IsFolder() const; 00047 virtual void Print(Option_t *option="") const; 00048 virtual void Reset(Option_t *option=""); 00049 virtual void SetAddress(void *addobj); 00050 virtual void SetAutoDelete(Bool_t autodel=kTRUE); 00051 virtual void SetBasketSize(Int_t buffsize); 00052 virtual void UpdateAddress(); 00053 00054 ClassDef(TBranchObject,1) //Branch in case of an object 00055 }; 00056 00057 #endif
1.2.16