Moved some around, more renames

This commit is contained in:
KimLS
2014-08-21 22:43:33 -07:00
parent 504a8b19ce
commit cd0824ee71
63 changed files with 8 additions and 10 deletions
@@ -0,0 +1,20 @@
#ifndef __AZONE_COMMON_ARCHIVE_H
#define __AZONE_COMMON_ARCHIVE_H
#include <list>
#include <string>
#include <stdint.h>
class Archive {
public:
Archive() { }
virtual ~Archive() { }
virtual bool Open(std::string filename) = 0;
virtual bool Close() = 0;
virtual bool Get(std::string filename, char** buffer, size_t& buffer_size) = 0;
virtual bool Exists(std::string filename) = 0;
virtual bool GetFiles(std::string ext, std::list<std::string>& files) = 0;
};
#endif
@@ -0,0 +1,9 @@
#ifndef __AZONE_COMMON_COMPRESSION_H
#define __AZONE_COMMON_COMPRESSION_H
#include <string>
#include <zlib.h>
void decompress(const char* in, size_t in_len, char* out, size_t out_len);
#endif
@@ -0,0 +1,35 @@
#ifndef __AZONE_COMMON_PFSARCHIVE_H
#define __AZONE_COMMON_PFSARCHIVE_H
#include <stdio.h>
#include <string.h>
#include <list>
#include <vector>
#ifdef WIN32
#include <Winsock2.h>
#else
#include <arpa/inet.h>
#endif
#include "Archive.h"
#include "PFSDataStructs.h"
#include "Compression.h"
class PFSArchive : public Archive {
public:
PFSArchive();
virtual ~PFSArchive();
virtual bool Open(std::string filename);
virtual bool Close();
virtual bool Get(std::string filename, char **buffer, size_t& buffer_size);
virtual bool Exists(std::string filename);
virtual bool GetFiles(std::string ext, std::list<std::string>& files);
private:
bool ReadIntoBuffer(std::string filename);
std::vector<std::string> _filenames;
std::vector<size_t> _files;
char* _buffer;
size_t _buffer_size;
};
#endif
@@ -0,0 +1,36 @@
#ifndef __AZONE_COMMON_PFSDATASTRUCTS_H
#define __AZONE_COMMON_PFSDATASTRUCTS_H
#include <stdint.h>
#pragma pack(1)
struct PFSHeader {
uint32_t offset;
char magic[4];
uint32_t unknown;
};
struct PFSDirectoryHeader {
uint32_t count;
};
struct PFSDirectory {
uint32_t crc, offset, size;
};
struct PFSDataBlock {
uint32_t deflate_length, inflate_length;
};
struct PFSFilenameHeader {
uint32_t filename_count;
};
struct PFSFilenameEntry {
uint32_t filename_length;
};
#pragma pack()
#endif