12 #ifndef ROOT_TAlienSystem
13 #define ROOT_TAlienSystem
29 class TAlienSystem :
public TSystem {
32 char fWorkingDirectory[1024];
35 TAlienSystem(
const char *name =
"Generic",
const char *title =
"Generic System");
36 virtual ~TAlienSystem();
39 virtual Bool_t Init();
42 virtual int MakeDirectory(
const char *name);
43 virtual void *OpenDirectory(
const char *name);
44 virtual void FreeDirectory(
void *dirp);
45 virtual const char *GetDirEntry(
void *dirp);
46 virtual void *GetDirPtr()
const {
return 0; }
47 virtual Bool_t ChangeDirectory(
const char *path);
48 virtual const char *WorkingDirectory();
49 virtual const char *HomeDirectory(
const char *userName = 0);
50 virtual int mkdir(
const char *name, Bool_t recursive = kFALSE);
51 Bool_t cd(
const char *path) {
return ChangeDirectory(path); }
52 const char *pwd() {
return WorkingDirectory(); }
55 virtual int CopyFile(
const char *from,
const char *to, Bool_t overwrite = kFALSE);
56 virtual int Rename(
const char *from,
const char *to);
57 virtual int Link(
const char *from,
const char *to);
58 virtual int Symlink(
const char *from,
const char *to);
59 virtual int Unlink(
const char *name);
60 int GetPathInfo(
const char *path, Long_t *
id, Long_t *size, Long_t *flags, Long_t *modtime);
61 int GetPathInfo(
const char *path, Long_t *
id, Long64_t *size, Long_t *flags, Long_t *modtime);
62 virtual int GetPathInfo(
const char *path, FileStat_t &buf);
63 virtual int AlienFilestat(
const char *fpath, FileStat_t &buf);
64 virtual int GetFsInfo(
const char *path, Long_t *
id, Long_t *bsize, Long_t *blocks, Long_t *bfree);
65 virtual int Chmod(
const char *file, UInt_t mode);
66 virtual int Umask(Int_t mask);
67 virtual int Utime(
const char *file, Long_t modtime, Long_t actime);
68 virtual const char *FindFile(
const char *search, TString& file, EAccessMode mode = kFileExists);
69 virtual Bool_t AccessPathName(
const char *path, EAccessMode mode = kFileExists);
72 virtual Int_t GetUid(
const char *user = 0);
73 virtual Int_t GetGid(
const char *group = 0);
74 virtual Int_t GetEffectiveUid();
75 virtual Int_t GetEffectiveGid();
76 virtual UserGroup_t *GetUserInfo(Int_t uid);
77 virtual UserGroup_t *GetUserInfo(
const char *user = 0);
78 virtual UserGroup_t *GetGroupInfo(Int_t gid);
79 virtual UserGroup_t *GetGroupInfo(
const char *group = 0);
81 ClassDef(TAlienSystem,0)