diff options
author | Aki <please@ignore.pl> | 2022-04-10 15:56:29 +0200 |
---|---|---|
committer | Aki <please@ignore.pl> | 2022-04-10 15:56:29 +0200 |
commit | 879612a1dcb6bb5b891447baffd4d5917ea37ee5 (patch) | |
tree | f0aa6fe32d736666dc98cc9bc1114196e96d4b63 /StarsEx/Archive.h | |
parent | 034aa81895b201164004d79aa090e882e3e66945 (diff) | |
download | starshatter-879612a1dcb6bb5b891447baffd4d5917ea37ee5.zip starshatter-879612a1dcb6bb5b891447baffd4d5917ea37ee5.tar.gz starshatter-879612a1dcb6bb5b891447baffd4d5917ea37ee5.tar.bz2 |
Switched to C types and memory mutation functions in Archive
Diffstat (limited to 'StarsEx/Archive.h')
-rw-r--r-- | StarsEx/Archive.h | 38 |
1 files changed, 18 insertions, 20 deletions
diff --git a/StarsEx/Archive.h b/StarsEx/Archive.h index 1cf76e9..825cc1f 100644 --- a/StarsEx/Archive.h +++ b/StarsEx/Archive.h @@ -12,8 +12,6 @@ #include <cstdint> -#include "Types.h" - // +------------------------------------------------------------------+ namespace Archive @@ -29,11 +27,11 @@ struct DataHeader { static const char* TYPENAME() { return "DataHeader"; } - DWORD version; - DWORD nfiles; - DWORD dir_blocks; - DWORD dir_size_comp; - DWORD dir_offset; + std::uint32_t version; + std::uint32_t nfiles; + std::uint32_t dir_blocks; + std::uint32_t dir_size_comp; + std::uint32_t dir_offset; }; struct DataEntry @@ -41,9 +39,9 @@ struct DataEntry static const char* TYPENAME() { return "DataEntry"; } char name[Archive::NAMELEN]; - DWORD size_orig; - DWORD size_comp; - DWORD offset; + std::uint32_t size_orig; + std::uint32_t size_comp; + std::uint32_t offset; }; class DataArchive @@ -62,19 +60,19 @@ public: void Remove(const char* name); void List(); - void WriteEntry(int index, BYTE* buf); + void WriteEntry(int index, std::uint8_t* buf); int FindEntry(const char* req_name); - int ExpandEntry(int index, BYTE*& buf, bool null_terminate=false); - BYTE* CompressEntry(int index); + int ExpandEntry(int index, std::uint8_t*& buf, bool null_terminate=false); + std::uint8_t* CompressEntry(int index); int InsertEntry(const char* name); void RemoveEntry(int index); - DWORD Blocks(DWORD raw_size); - DWORD DirBlocks(); - DWORD FileBlocks(int index); + std::uint32_t Blocks(std::uint32_t raw_size); + std::uint32_t DirBlocks(); + std::uint32_t FileBlocks(int index); int FindDataBlocks(int blocks_needed); void CreateBlockMap(); - DWORD NumFiles() { return header.nfiles; } + std::uint32_t NumFiles() { return header.nfiles; } DataEntry* GetFile(int i) { if (i>=0 && i<(int)header.nfiles) return &directory[i]; return 0; } const char* Name() const { return datafile; } @@ -83,13 +81,13 @@ private: // persistent data members: DataHeader header; DataEntry* directory; - BYTE* dirbuf; + std::uint8_t* dirbuf; // transient members: char datafile[Archive::NAMELEN]; - DWORD* block_map; - DWORD nblocks; + std::uint32_t* block_map; + std::uint32_t nblocks; }; #endif // Archive_h |