A Whole New World (clang-format edition)
I can show you the code Pretty, with proper whitespace Tell me, coder, now when did You last write readable code? I can open your eyes Make you see your bad indent Force you to respect the style The core devs agreed upon A whole new world A new fantastic code format A de facto standard With some sugar Enforced with clang-format A whole new world A dazzling style we all dreamed of And when we read it through It's crystal clear That now we're in a whole new world of code
This commit is contained in:
@ -29,18 +29,18 @@
|
||||
#ifndef FILE_ACCESS_PACK_H
|
||||
#define FILE_ACCESS_PACK_H
|
||||
|
||||
#include "os/file_access.h"
|
||||
#include "os/dir_access.h"
|
||||
#include "map.h"
|
||||
#include "list.h"
|
||||
#include "map.h"
|
||||
#include "os/dir_access.h"
|
||||
#include "os/file_access.h"
|
||||
#include "print_string.h"
|
||||
|
||||
class PackSource;
|
||||
|
||||
class PackedData {
|
||||
friend class FileAccessPack;
|
||||
friend class DirAccessPack;
|
||||
friend class PackSource;
|
||||
friend class FileAccessPack;
|
||||
friend class DirAccessPack;
|
||||
friend class PackSource;
|
||||
|
||||
public:
|
||||
struct PackedFile {
|
||||
@ -49,21 +49,21 @@ public:
|
||||
uint64_t offset; //if offset is ZERO, the file was ERASED
|
||||
uint64_t size;
|
||||
uint8_t md5[16];
|
||||
PackSource* src;
|
||||
PackSource *src;
|
||||
};
|
||||
|
||||
private:
|
||||
struct PackedDir {
|
||||
PackedDir *parent;
|
||||
String name;
|
||||
Map<String,PackedDir*> subdirs;
|
||||
Map<String, PackedDir *> subdirs;
|
||||
Set<String> files;
|
||||
};
|
||||
|
||||
struct PathMD5 {
|
||||
uint64_t a;
|
||||
uint64_t b;
|
||||
bool operator < (const PathMD5& p_md5) const {
|
||||
bool operator<(const PathMD5 &p_md5) const {
|
||||
|
||||
if (p_md5.a == a) {
|
||||
return b < p_md5.b;
|
||||
@ -72,7 +72,7 @@ private:
|
||||
}
|
||||
}
|
||||
|
||||
bool operator == (const PathMD5& p_md5) const {
|
||||
bool operator==(const PathMD5 &p_md5) const {
|
||||
return a == p_md5.a && b == p_md5.b;
|
||||
};
|
||||
|
||||
@ -81,14 +81,14 @@ private:
|
||||
};
|
||||
|
||||
PathMD5(const Vector<uint8_t> p_buf) {
|
||||
a = *((uint64_t*)&p_buf[0]);
|
||||
b = *((uint64_t*)&p_buf[8]);
|
||||
a = *((uint64_t *)&p_buf[0]);
|
||||
b = *((uint64_t *)&p_buf[8]);
|
||||
};
|
||||
};
|
||||
|
||||
Map<PathMD5,PackedFile> files;
|
||||
Map<PathMD5, PackedFile> files;
|
||||
|
||||
Vector<PackSource*> sources;
|
||||
Vector<PackSource *> sources;
|
||||
|
||||
PackedDir *root;
|
||||
//Map<String,PackedDir*> dirs;
|
||||
@ -99,18 +99,17 @@ private:
|
||||
void _free_packed_dirs(PackedDir *p_dir);
|
||||
|
||||
public:
|
||||
void add_pack_source(PackSource *p_source);
|
||||
void add_path(const String &pkg_path, const String &path, uint64_t ofs, uint64_t size, const uint8_t *p_md5, PackSource *p_src); // for PackSource
|
||||
|
||||
void add_pack_source(PackSource* p_source);
|
||||
void add_path(const String& pkg_path, const String& path, uint64_t ofs, uint64_t size,const uint8_t* p_md5, PackSource* p_src); // for PackSource
|
||||
|
||||
void set_disabled(bool p_disabled) { disabled=p_disabled; }
|
||||
void set_disabled(bool p_disabled) { disabled = p_disabled; }
|
||||
_FORCE_INLINE_ bool is_disabled() const { return disabled; }
|
||||
|
||||
static PackedData *get_singleton() { return singleton; }
|
||||
Error add_pack(const String& p_path);
|
||||
Error add_pack(const String &p_path);
|
||||
|
||||
_FORCE_INLINE_ FileAccess *try_open_path(const String& p_path);
|
||||
_FORCE_INLINE_ bool has_path(const String& p_path);
|
||||
_FORCE_INLINE_ FileAccess *try_open_path(const String &p_path);
|
||||
_FORCE_INLINE_ bool has_path(const String &p_path);
|
||||
|
||||
PackedData();
|
||||
~PackedData();
|
||||
@ -119,21 +118,18 @@ public:
|
||||
class PackSource {
|
||||
|
||||
public:
|
||||
|
||||
virtual bool try_open_pack(const String& p_path)=0;
|
||||
virtual FileAccess* get_file(const String& p_path, PackedData::PackedFile* p_file)=0;
|
||||
virtual bool try_open_pack(const String &p_path) = 0;
|
||||
virtual FileAccess *get_file(const String &p_path, PackedData::PackedFile *p_file) = 0;
|
||||
virtual ~PackSource() {}
|
||||
};
|
||||
|
||||
class PackedSourcePCK : public PackSource {
|
||||
|
||||
public:
|
||||
|
||||
virtual bool try_open_pack(const String &p_path);
|
||||
virtual FileAccess* get_file(const String& p_path, PackedData::PackedFile* p_file);
|
||||
virtual FileAccess *get_file(const String &p_path, PackedData::PackedFile *p_file);
|
||||
};
|
||||
|
||||
|
||||
class FileAccessPack : public FileAccess {
|
||||
|
||||
PackedData::PackedFile pf;
|
||||
@ -142,17 +138,15 @@ class FileAccessPack : public FileAccess {
|
||||
mutable bool eof;
|
||||
|
||||
FileAccess *f;
|
||||
virtual Error _open(const String& p_path, int p_mode_flags);
|
||||
virtual uint64_t _get_modified_time(const String& p_file) { return 0; }
|
||||
virtual Error _open(const String &p_path, int p_mode_flags);
|
||||
virtual uint64_t _get_modified_time(const String &p_file) { return 0; }
|
||||
|
||||
public:
|
||||
|
||||
|
||||
virtual void close();
|
||||
virtual bool is_open() const;
|
||||
|
||||
virtual void seek(size_t p_position);
|
||||
virtual void seek_end(int64_t p_position=0);
|
||||
virtual void seek_end(int64_t p_position = 0);
|
||||
virtual size_t get_pos() const;
|
||||
virtual size_t get_len() const;
|
||||
|
||||
@ -160,8 +154,7 @@ public:
|
||||
|
||||
virtual uint8_t get_8() const;
|
||||
|
||||
|
||||
virtual int get_buffer(uint8_t *p_dst,int p_length) const;
|
||||
virtual int get_buffer(uint8_t *p_dst, int p_length) const;
|
||||
|
||||
virtual void set_endian_swap(bool p_swap);
|
||||
|
||||
@ -169,38 +162,34 @@ public:
|
||||
|
||||
virtual void store_8(uint8_t p_dest);
|
||||
|
||||
virtual void store_buffer(const uint8_t *p_src,int p_length);
|
||||
virtual void store_buffer(const uint8_t *p_src, int p_length);
|
||||
|
||||
virtual bool file_exists(const String& p_name);
|
||||
virtual bool file_exists(const String &p_name);
|
||||
|
||||
|
||||
FileAccessPack(const String& p_path, const PackedData::PackedFile& p_file);
|
||||
FileAccessPack(const String &p_path, const PackedData::PackedFile &p_file);
|
||||
~FileAccessPack();
|
||||
};
|
||||
|
||||
|
||||
FileAccess *PackedData::try_open_path(const String& p_path) {
|
||||
FileAccess *PackedData::try_open_path(const String &p_path) {
|
||||
|
||||
//print_line("try open path " + p_path);
|
||||
PathMD5 pmd5(p_path.md5_buffer());
|
||||
Map<PathMD5,PackedFile>::Element *E=files.find(pmd5);
|
||||
Map<PathMD5, PackedFile>::Element *E = files.find(pmd5);
|
||||
if (!E)
|
||||
return NULL; //not found
|
||||
if (E->get().offset==0)
|
||||
if (E->get().offset == 0)
|
||||
return NULL; //was erased
|
||||
|
||||
return E->get().src->get_file(p_path, &E->get());
|
||||
}
|
||||
|
||||
bool PackedData::has_path(const String& p_path) {
|
||||
bool PackedData::has_path(const String &p_path) {
|
||||
|
||||
return files.has(PathMD5(p_path.md5_buffer()));
|
||||
}
|
||||
|
||||
|
||||
class DirAccessPack : public DirAccess {
|
||||
|
||||
|
||||
PackedData::PackedDir *current;
|
||||
|
||||
List<String> list_dirs;
|
||||
@ -208,7 +197,6 @@ class DirAccessPack : public DirAccess {
|
||||
bool cdir;
|
||||
|
||||
public:
|
||||
|
||||
virtual Error list_dir_begin();
|
||||
virtual String get_next();
|
||||
virtual bool current_is_dir() const;
|
||||
@ -221,7 +209,6 @@ public:
|
||||
virtual Error change_dir(String p_dir);
|
||||
virtual String get_current_dir();
|
||||
|
||||
|
||||
virtual bool file_exists(String p_file);
|
||||
virtual bool dir_exists(String p_dir);
|
||||
|
||||
@ -234,8 +221,6 @@ public:
|
||||
|
||||
DirAccessPack();
|
||||
~DirAccessPack();
|
||||
|
||||
};
|
||||
|
||||
|
||||
#endif // FILE_ACCESS_PACK_H
|
||||
|
||||
Reference in New Issue
Block a user