add GDSOFTCLASS to FileAccess and DirAccess derived classes
This commit is contained in:
parent
a8598cd8e2
commit
2d0ae77719
@ -34,6 +34,7 @@
|
||||
#include "core/io/file_access.h"
|
||||
|
||||
class FileAccessCompressed : public FileAccess {
|
||||
GDSOFTCLASS(FileAccessCompressed, FileAccess);
|
||||
Compression::Mode cmode = Compression::MODE_ZSTD;
|
||||
bool writing = false;
|
||||
uint64_t write_pos = 0;
|
||||
|
@ -36,6 +36,8 @@
|
||||
#define ENCRYPTED_HEADER_MAGIC 0x43454447
|
||||
|
||||
class FileAccessEncrypted : public FileAccess {
|
||||
GDSOFTCLASS(FileAccessEncrypted, FileAccess);
|
||||
|
||||
public:
|
||||
enum Mode : int32_t {
|
||||
MODE_READ,
|
||||
|
@ -33,6 +33,7 @@
|
||||
#include "core/io/file_access.h"
|
||||
|
||||
class FileAccessMemory : public FileAccess {
|
||||
GDSOFTCLASS(FileAccessMemory, FileAccess);
|
||||
uint8_t *data = nullptr;
|
||||
uint64_t length = 0;
|
||||
mutable uint64_t pos = 0;
|
||||
|
@ -157,6 +157,7 @@ public:
|
||||
};
|
||||
|
||||
class FileAccessPack : public FileAccess {
|
||||
GDSOFTCLASS(FileAccessPack, FileAccess);
|
||||
PackedData::PackedFile pf;
|
||||
|
||||
mutable uint64_t pos;
|
||||
@ -241,6 +242,7 @@ bool PackedData::has_directory(const String &p_path) {
|
||||
}
|
||||
|
||||
class DirAccessPack : public DirAccess {
|
||||
GDSOFTCLASS(DirAccessPack, DirAccess);
|
||||
PackedData::PackedDir *current;
|
||||
|
||||
List<String> list_dirs;
|
||||
|
@ -73,6 +73,7 @@ public:
|
||||
};
|
||||
|
||||
class FileAccessZip : public FileAccess {
|
||||
GDSOFTCLASS(FileAccessZip, FileAccess);
|
||||
unzFile zfile = nullptr;
|
||||
unz_file_info64 file_info;
|
||||
|
||||
|
@ -40,6 +40,7 @@
|
||||
#include <unistd.h>
|
||||
|
||||
class DirAccessUnix : public DirAccess {
|
||||
GDSOFTCLASS(DirAccessUnix, DirAccess);
|
||||
DIR *dir_stream = nullptr;
|
||||
|
||||
bool _cisdir = false;
|
||||
|
@ -38,6 +38,7 @@
|
||||
#if defined(UNIX_ENABLED)
|
||||
|
||||
class FileAccessUnix : public FileAccess {
|
||||
GDSOFTCLASS(FileAccessUnix, FileAccess);
|
||||
FILE *f = nullptr;
|
||||
int flags = 0;
|
||||
void check_errors(bool p_write = false) const;
|
||||
|
@ -38,6 +38,7 @@
|
||||
#if defined(UNIX_ENABLED)
|
||||
|
||||
class FileAccessUnixPipe : public FileAccess {
|
||||
GDSOFTCLASS(FileAccessUnixPipe, FileAccess);
|
||||
bool unlink_on_close = false;
|
||||
|
||||
int fd[2] = { -1, -1 };
|
||||
|
@ -37,6 +37,7 @@
|
||||
struct DirAccessWindowsPrivate;
|
||||
|
||||
class DirAccessWindows : public DirAccess {
|
||||
GDSOFTCLASS(DirAccessWindows, DirAccess);
|
||||
enum {
|
||||
MAX_DRIVES = 26
|
||||
};
|
||||
|
@ -38,6 +38,7 @@
|
||||
#include <stdio.h>
|
||||
|
||||
class FileAccessWindows : public FileAccess {
|
||||
GDSOFTCLASS(FileAccessWindows, FileAccess);
|
||||
FILE *f = nullptr;
|
||||
int flags = 0;
|
||||
void check_errors(bool p_write = false) const;
|
||||
|
@ -37,7 +37,9 @@
|
||||
|
||||
#define WIN32_LEAN_AND_MEAN
|
||||
#include <windows.h>
|
||||
|
||||
class FileAccessWindowsPipe : public FileAccess {
|
||||
GDSOFTCLASS(FileAccessWindowsPipe, FileAccess);
|
||||
HANDLE fd[2] = { nullptr, nullptr };
|
||||
|
||||
mutable Error last_error = OK;
|
||||
|
@ -42,6 +42,7 @@
|
||||
/// The implementation use jni in order to comply with Android filesystem
|
||||
/// access restriction.
|
||||
class DirAccessJAndroid : public DirAccessUnix {
|
||||
GDSOFTCLASS(DirAccessJAndroid, DirAccessUnix);
|
||||
static jobject dir_access_handler;
|
||||
static jclass cls;
|
||||
|
||||
|
@ -38,6 +38,7 @@
|
||||
#include <stdio.h>
|
||||
|
||||
class FileAccessAndroid : public FileAccess {
|
||||
GDSOFTCLASS(FileAccessAndroid, FileAccess);
|
||||
static AAssetManager *asset_manager;
|
||||
static jobject j_asset_manager;
|
||||
|
||||
|
@ -35,6 +35,7 @@
|
||||
#include "core/io/file_access.h"
|
||||
|
||||
class FileAccessFilesystemJAndroid : public FileAccess {
|
||||
GDSOFTCLASS(FileAccessFilesystemJAndroid, FileAccess);
|
||||
static jobject file_access_handler;
|
||||
static jclass cls;
|
||||
|
||||
|
@ -41,6 +41,8 @@
|
||||
#include <unistd.h>
|
||||
|
||||
class DirAccessMacOS : public DirAccessUnix {
|
||||
GDSOFTCLASS(DirAccessMacOS, DirAccessUnix);
|
||||
|
||||
protected:
|
||||
virtual String fix_unicode_name(const char *p_name) const override;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user