1 #ifndef _RAR_FILEFN_
2 #define _RAR_FILEFN_
3 
4 enum MKDIR_CODE {MKDIR_SUCCESS,MKDIR_ERROR,MKDIR_BADPATH};
5 
6 MKDIR_CODE MakeDir(const wchar *Name,bool SetAttr,uint Attr);
7 bool CreatePath(const wchar *Path,bool SkipLastName,bool Silent);
8 void SetDirTime(const wchar *Name,RarTime *ftm,RarTime *ftc,RarTime *fta);
9 bool IsRemovable(const wchar *Name);
10 
11 #ifndef SFX_MODULE
12 int64 GetFreeDisk(const wchar *Name);
13 #endif
14 
15 #if defined(_WIN_ALL) && !defined(SFX_MODULE) && !defined(SILENT)
16 bool IsFAT(const wchar *Root);
17 #endif
18 
19 bool FileExist(const wchar *Name);
20 bool WildFileExist(const wchar *Name);
21 bool IsDir(uint Attr);
22 bool IsUnreadable(uint Attr);
23 bool IsLink(uint Attr);
24 void SetSFXMode(const wchar *FileName);
25 void EraseDiskContents(const wchar *FileName);
26 bool IsDeleteAllowed(uint FileAttr);
27 void PrepareToDelete(const wchar *Name);
28 uint GetFileAttr(const wchar *Name);
29 bool SetFileAttr(const wchar *Name,uint Attr);
30 #if 0
31 wchar* MkTemp(wchar *Name,size_t MaxSize);
32 #endif
33 
34 enum CALCFSUM_FLAGS {CALCFSUM_SHOWTEXT=1,CALCFSUM_SHOWPERCENT=2,CALCFSUM_SHOWPROGRESS=4,CALCFSUM_CURPOS=8};
35 
36 void CalcFileSum(File *SrcFile,uint *CRC32,byte *Blake2,uint Threads,int64 Size=INT64NDF,uint Flags=0);
37 
38 bool RenameFile(const wchar *SrcName,const wchar *DestName);
39 bool DelFile(const wchar *Name);
40 bool DelDir(const wchar *Name);
41 
42 #if defined(_WIN_ALL) && !defined(SFX_MODULE)
43 bool SetFileCompression(const wchar *Name,bool State);
44 #endif
45 
46 
47 
48 
49 
50 #endif
51