PhysicsFS 2.0.3 imported.
This commit is contained in:
parent
bcc0937726
commit
993311d151
459 changed files with 87785 additions and 0 deletions
178
lib/physfs-2.0.3/lzma/CPP/Windows/FileDir.h
Normal file
178
lib/physfs-2.0.3/lzma/CPP/Windows/FileDir.h
Normal file
|
@ -0,0 +1,178 @@
|
|||
// Windows/FileDir.h
|
||||
|
||||
#ifndef __WINDOWS_FILEDIR_H
|
||||
#define __WINDOWS_FILEDIR_H
|
||||
|
||||
#include "../Common/MyString.h"
|
||||
#include "Defs.h"
|
||||
|
||||
namespace NWindows {
|
||||
namespace NFile {
|
||||
namespace NDirectory {
|
||||
|
||||
#ifdef WIN_LONG_PATH
|
||||
bool GetLongPaths(LPCWSTR s1, LPCWSTR s2, UString &d1, UString &d2);
|
||||
#endif
|
||||
|
||||
bool MyGetWindowsDirectory(CSysString &path);
|
||||
bool MyGetSystemDirectory(CSysString &path);
|
||||
#ifndef _UNICODE
|
||||
bool MyGetWindowsDirectory(UString &path);
|
||||
bool MyGetSystemDirectory(UString &path);
|
||||
#endif
|
||||
|
||||
bool SetDirTime(LPCWSTR fileName, const FILETIME *creationTime, const FILETIME *lastAccessTime, const FILETIME *lastWriteTime);
|
||||
|
||||
bool MySetFileAttributes(LPCTSTR fileName, DWORD fileAttributes);
|
||||
bool MyMoveFile(LPCTSTR existFileName, LPCTSTR newFileName);
|
||||
bool MyRemoveDirectory(LPCTSTR pathName);
|
||||
bool MyCreateDirectory(LPCTSTR pathName);
|
||||
bool CreateComplexDirectory(LPCTSTR pathName);
|
||||
bool DeleteFileAlways(LPCTSTR name);
|
||||
bool RemoveDirectoryWithSubItems(const CSysString &path);
|
||||
|
||||
#ifndef _UNICODE
|
||||
bool MySetFileAttributes(LPCWSTR fileName, DWORD fileAttributes);
|
||||
bool MyMoveFile(LPCWSTR existFileName, LPCWSTR newFileName);
|
||||
bool MyRemoveDirectory(LPCWSTR pathName);
|
||||
bool MyCreateDirectory(LPCWSTR pathName);
|
||||
bool CreateComplexDirectory(LPCWSTR pathName);
|
||||
bool DeleteFileAlways(LPCWSTR name);
|
||||
bool RemoveDirectoryWithSubItems(const UString &path);
|
||||
#endif
|
||||
|
||||
#ifndef _WIN32_WCE
|
||||
bool MyGetShortPathName(LPCTSTR longPath, CSysString &shortPath);
|
||||
|
||||
bool MyGetFullPathName(LPCTSTR fileName, CSysString &resultPath,
|
||||
int &fileNamePartStartIndex);
|
||||
bool MyGetFullPathName(LPCTSTR fileName, CSysString &resultPath);
|
||||
bool GetOnlyName(LPCTSTR fileName, CSysString &resultName);
|
||||
bool GetOnlyDirPrefix(LPCTSTR fileName, CSysString &resultName);
|
||||
#ifndef _UNICODE
|
||||
bool MyGetFullPathName(LPCWSTR fileName, UString &resultPath,
|
||||
int &fileNamePartStartIndex);
|
||||
bool MyGetFullPathName(LPCWSTR fileName, UString &resultPath);
|
||||
bool GetOnlyName(LPCWSTR fileName, UString &resultName);
|
||||
bool GetOnlyDirPrefix(LPCWSTR fileName, UString &resultName);
|
||||
#endif
|
||||
|
||||
inline bool MySetCurrentDirectory(LPCTSTR path)
|
||||
{ return BOOLToBool(::SetCurrentDirectory(path)); }
|
||||
bool MyGetCurrentDirectory(CSysString &resultPath);
|
||||
#ifndef _UNICODE
|
||||
bool MySetCurrentDirectory(LPCWSTR path);
|
||||
bool MyGetCurrentDirectory(UString &resultPath);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
bool MySearchPath(LPCTSTR path, LPCTSTR fileName, LPCTSTR extension,
|
||||
CSysString &resultPath, UINT32 &filePart);
|
||||
#ifndef _UNICODE
|
||||
bool MySearchPath(LPCWSTR path, LPCWSTR fileName, LPCWSTR extension,
|
||||
UString &resultPath, UINT32 &filePart);
|
||||
#endif
|
||||
|
||||
inline bool MySearchPath(LPCTSTR path, LPCTSTR fileName, LPCTSTR extension,
|
||||
CSysString &resultPath)
|
||||
{
|
||||
UINT32 value;
|
||||
return MySearchPath(path, fileName, extension, resultPath, value);
|
||||
}
|
||||
|
||||
#ifndef _UNICODE
|
||||
inline bool MySearchPath(LPCWSTR path, LPCWSTR fileName, LPCWSTR extension,
|
||||
UString &resultPath)
|
||||
{
|
||||
UINT32 value;
|
||||
return MySearchPath(path, fileName, extension, resultPath, value);
|
||||
}
|
||||
#endif
|
||||
|
||||
bool MyGetTempPath(CSysString &resultPath);
|
||||
#ifndef _UNICODE
|
||||
bool MyGetTempPath(UString &resultPath);
|
||||
#endif
|
||||
|
||||
UINT MyGetTempFileName(LPCTSTR dirPath, LPCTSTR prefix, CSysString &resultPath);
|
||||
#ifndef _UNICODE
|
||||
UINT MyGetTempFileName(LPCWSTR dirPath, LPCWSTR prefix, UString &resultPath);
|
||||
#endif
|
||||
|
||||
class CTempFile
|
||||
{
|
||||
bool _mustBeDeleted;
|
||||
CSysString _fileName;
|
||||
public:
|
||||
CTempFile(): _mustBeDeleted(false) {}
|
||||
~CTempFile() { Remove(); }
|
||||
void DisableDeleting() { _mustBeDeleted = false; }
|
||||
UINT Create(LPCTSTR dirPath, LPCTSTR prefix, CSysString &resultPath);
|
||||
bool Create(LPCTSTR prefix, CSysString &resultPath);
|
||||
bool Remove();
|
||||
};
|
||||
|
||||
#ifdef _UNICODE
|
||||
typedef CTempFile CTempFileW;
|
||||
#else
|
||||
class CTempFileW
|
||||
{
|
||||
bool _mustBeDeleted;
|
||||
UString _fileName;
|
||||
public:
|
||||
CTempFileW(): _mustBeDeleted(false) {}
|
||||
~CTempFileW() { Remove(); }
|
||||
void DisableDeleting() { _mustBeDeleted = false; }
|
||||
UINT Create(LPCWSTR dirPath, LPCWSTR prefix, UString &resultPath);
|
||||
bool Create(LPCWSTR prefix, UString &resultPath);
|
||||
bool Remove();
|
||||
};
|
||||
#endif
|
||||
|
||||
bool CreateTempDirectory(LPCTSTR prefixChars, CSysString &dirName);
|
||||
|
||||
class CTempDirectory
|
||||
{
|
||||
bool _mustBeDeleted;
|
||||
CSysString _tempDir;
|
||||
public:
|
||||
const CSysString &GetPath() const { return _tempDir; }
|
||||
CTempDirectory(): _mustBeDeleted(false) {}
|
||||
~CTempDirectory() { Remove(); }
|
||||
bool Create(LPCTSTR prefix) ;
|
||||
bool Remove()
|
||||
{
|
||||
if (!_mustBeDeleted)
|
||||
return true;
|
||||
_mustBeDeleted = !RemoveDirectoryWithSubItems(_tempDir);
|
||||
return (!_mustBeDeleted);
|
||||
}
|
||||
void DisableDeleting() { _mustBeDeleted = false; }
|
||||
};
|
||||
|
||||
#ifdef _UNICODE
|
||||
typedef CTempDirectory CTempDirectoryW;
|
||||
#else
|
||||
class CTempDirectoryW
|
||||
{
|
||||
bool _mustBeDeleted;
|
||||
UString _tempDir;
|
||||
public:
|
||||
const UString &GetPath() const { return _tempDir; }
|
||||
CTempDirectoryW(): _mustBeDeleted(false) {}
|
||||
~CTempDirectoryW() { Remove(); }
|
||||
bool Create(LPCWSTR prefix) ;
|
||||
bool Remove()
|
||||
{
|
||||
if (!_mustBeDeleted)
|
||||
return true;
|
||||
_mustBeDeleted = !RemoveDirectoryWithSubItems(_tempDir);
|
||||
return (!_mustBeDeleted);
|
||||
}
|
||||
void DisableDeleting() { _mustBeDeleted = false; }
|
||||
};
|
||||
#endif
|
||||
|
||||
}}}
|
||||
|
||||
#endif
|
Loading…
Add table
Add a link
Reference in a new issue