4 #include "KVSystemDirectory.h"
8 #include "KVSystemFile.h"
53 throw std::runtime_error(
Form(
"<KVSystemDirectory::KVSystemDirectory> : invalid path %s given to constructor", path));
113 Error(
"GetListings",
"Cannot open directory %s",
GetTitle());
117 const char*
file = 0;
125 if (
file[0] ==
'.' &&
file[1] ==
'\0')
127 else if (
file[0] ==
'.' &&
file[1] ==
'.' &&
file[2] ==
'\0')
135 if (sdirpath !=
"") {
162 printf(
"%s :\n[total : %lld / files : %lld bytes]\n\n",
167 if (!strcmp(opt,
"nosubdirs")) {
172 printf(
"%-60s [total : %lld / files : %lld bytes]\n",
char * Form(const char *fmt,...)
R__EXTERN TSystem * gSystem
static std::optional< TString > AbsoluteUnixPath(const TString &)
Extension of ROOT TSystemDirectory class, handling browsing directories on disk.
KVSystemDirectory()
Default constructor.
virtual TList * GetListOfDirectories() const
TList * GetListOfFiles() const override
Long64_t fTotFiles
total size of files in directory
TList * fSubdirs
subdirectories of directory
Long64_t fTotDirs
total size of files in subdirectories
TList * fContents
contents of directory
Long64_t GetTotalFiles() const
virtual void GetListings()
Fill lists of files and directories.
void ls(Option_t *option="") const override
Long64_t GetTotalSize() const
virtual ~KVSystemDirectory()
Destructor.
Extended ROOT TSystemFile with added info on file size etc.
virtual void SetOwner(Bool_t enable=kTRUE)
void Add(TObject *obj) override
const char * GetTitle() const override
virtual void Error(const char *method, const char *msgfmt,...) const
static Int_t IncreaseDirLevel()
static void IndentLevel()
static Int_t DecreaseDirLevel()
Bool_t EndsWith(const char *pat, ECaseCompare cmp=kExact) const
const char * Data() const
Bool_t IsItDirectory(const char *name) const
void SetTitle(const char *title) override
virtual void FreeDirectory(void *dirp)
virtual void * OpenDirectory(const char *name)
virtual const char * GetDirEntry(void *dirp)