TFolder.h

Go to the documentation of this file.
00001 // @(#)root/base:$Id: TFolder.h 27436 2009-02-12 14:54:52Z rdm $
00002 // Author: Rene Brun   02/09/2000
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_TFolder
00013 #define ROOT_TFolder
00014 
00015 
00016 //////////////////////////////////////////////////////////////////////////
00017 //                                                                      //
00018 // TFolder                                                              //
00019 //                                                                      //
00020 // Describe a folder: a list of objects and folders                     //
00021 //                                                                      //
00022 //////////////////////////////////////////////////////////////////////////
00023 
00024 #ifndef ROOT_TNamed
00025 #include "TNamed.h"
00026 #endif
00027 
00028 class TCollection;
00029 class TBrowser;
00030 
00031 
00032 class TFolder : public TNamed {
00033 
00034 protected:
00035    TCollection       *fFolders;        //pointer to the list of folders
00036    Bool_t             fIsOwner;        //true if folder own its contained objects
00037 
00038 private:
00039    TFolder(const TFolder &folder);  //folders cannot be copied
00040    void operator=(const TFolder &);
00041 
00042 public:
00043 
00044    TFolder();
00045    TFolder(const char *name, const char *title);
00046    virtual ~TFolder();
00047    virtual void        Add(TObject *obj);
00048    TFolder            *AddFolder(const char *name, const char *title, TCollection *collection=0);
00049    virtual void        Browse(TBrowser *b);
00050    virtual void        Clear(Option_t *option="");
00051    virtual void        Copy(TObject &) const { MayNotUse("Copy(TObject &)"); }
00052    virtual const char *FindFullPathName(const char *name) const;
00053    virtual const char *FindFullPathName(const TObject *obj) const;
00054    virtual TObject    *FindObject(const char *name) const;
00055    virtual TObject    *FindObject(const TObject *obj) const;
00056    virtual TObject    *FindObjectAny(const char *name) const;
00057    TCollection        *GetListOfFolders() const { return fFolders; }
00058    Bool_t              IsFolder() const { return kTRUE; }
00059    Bool_t              IsOwner()  const;
00060    virtual void        ls(Option_t *option="") const;  // *MENU*
00061    virtual Int_t       Occurence(const TObject *obj) const;
00062    virtual void        RecursiveRemove(TObject *obj);
00063    virtual void        Remove(TObject *obj);
00064    virtual void        SaveAs(const char *filename="",Option_t *option="") const; // *MENU*
00065    virtual void        SetOwner(Bool_t owner=kTRUE);
00066 
00067    ClassDef(TFolder,1)  //Describe a folder: a list of objects and folders
00068 };
00069 
00070 #endif

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