00001 // @(#)root/alien:$Id: TAlienDirectory.h 24510 2008-06-24 09:49:15Z rdm $ 00002 // Author: Jan Fiete Grosse-Oetringhaus 28/9/2004 00003 00004 /************************************************************************* 00005 * Copyright (C) 1995-2004, 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_TAlienDirectory 00013 #define ROOT_TAlienDirectory 00014 00015 ////////////////////////////////////////////////////////////////////////// 00016 // // 00017 // TAlienDirectory // 00018 // // 00019 // Class which creates Directory files for the AliEn middleware. // 00020 // // 00021 ////////////////////////////////////////////////////////////////////////// 00022 00023 #ifndef ROOT_Tlist 00024 #include "TList.h" 00025 #endif 00026 #ifndef ROOT_TBrowser 00027 #include "TBrowser.h" 00028 #endif 00029 #ifndef ROOT_TNamed 00030 #include "TNamed.h" 00031 #endif 00032 #ifndef ROOT_TMap 00033 #include "TMap.h" 00034 #endif 00035 00036 00037 class TAlienDirectoryEntry : public TNamed { 00038 00039 private: 00040 TString fLfn; // logical file name 00041 TMap fBrowserObjects; // objects shown in browser 00042 00043 public: 00044 TAlienDirectoryEntry(const char *lfn, const char *name) : TNamed(name,name) { fLfn = lfn; } 00045 virtual ~TAlienDirectoryEntry() { } 00046 Bool_t IsFolder() const { return kTRUE; } 00047 void Browse(TBrowser *b); 00048 00049 ClassDef(TAlienDirectoryEntry,1) // Creates Directory files entries for the AliEn middleware 00050 }; 00051 00052 00053 class TAlienDirectory : public TNamed { 00054 00055 private: 00056 TList fEntries; // directory entries 00057 TMap fBrowserObjects; // objects shown in browser 00058 00059 public: 00060 TAlienDirectory(const char *ldn, const char *name=0); 00061 virtual ~TAlienDirectory(); 00062 void Fill(); 00063 Bool_t IsFolder() const { return kTRUE; } 00064 void Browse(TBrowser *b); 00065 00066 ClassDef(TAlienDirectory,1) // Creates Directory files for the AliEn middleware 00067 }; 00068 00069 #endif