少年修仙传客户端基础资源
hch
2024-04-01 d01413b00ef631ac20347716b23818b0b811f65f
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#pragma once
 
#if IL2CPP_TARGET_WINRT
 
#include "il2cpp-string-types.h"
#include "os/c-api/OSGlobalEnums.h"
#include "os/Directory.h"
#include "os/ErrorCodes.h"
#include "os/File.h"
 
#include <cstdint>
#include <set>
 
namespace il2cpp
{
namespace os
{
    class BrokeredFileSystem
    {
    public:
        // Folders
        static int CreateDirectoryW(const UTF16String& path);
        static int RemoveDirectoryW(const UTF16String& path);
        static std::set<std::string> GetFileSystemEntries(const UTF16String& path, const UTF16String& pathWithPattern, int32_t attributes, int32_t attributeMask, int* error);
        static os::ErrorCode FindFirstFileW(Directory::FindHandle* findHandle, const utils::StringView<Il2CppNativeChar>& searchPathWithPattern, Il2CppNativeString* resultFileName, int32_t* resultAttributes);
        static os::ErrorCode FindNextFileW(Directory::FindHandle* findHandle, Il2CppNativeString* resultFileName, int32_t* resultAttributes);
        static os::ErrorCode FindClose(void* osHandle);
 
        // Files
        static bool CopyFileW(const UTF16String& source, const UTF16String& destination, bool overwrite, int* error);
        static bool MoveFileW(const UTF16String& source, const UTF16String& destination, int* error);
        static int DeleteFileW(const UTF16String& path);
        static UnityPalFileAttributes GetFileAttributesW(const UTF16String& path, int* error);
        static bool SetFileAttributesW(const UTF16String& path, UnityPalFileAttributes attributes, int* error);
        static bool GetFileStat(const std::string& utf8Path, const UTF16String& path, FileStat* stat, int* error);
        static FileHandle* Open(const UTF16String& path, uint32_t desiredAccess, uint32_t shareMode, uint32_t creationDisposition, uint32_t flagsAndAttributes, int* error);
 
        // Cleanup
        static void CleanupStatics();
    };
}
}
 
#endif // IL2CPP_TARGET_WINRT