From 92f17580846c88108aab023092c23e6bcdcf2f75 Mon Sep 17 00:00:00 2001 From: Chris Xiong Date: Fri, 14 Aug 2015 23:45:02 +0800 Subject: SMELT is finally finished! Add the SMELT library for future use. Add .gitignore. --- include/smdatapack.hpp | 57 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 include/smdatapack.hpp (limited to 'include/smdatapack.hpp') diff --git a/include/smdatapack.hpp b/include/smdatapack.hpp new file mode 100644 index 0000000..ace7c81 --- /dev/null +++ b/include/smdatapack.hpp @@ -0,0 +1,57 @@ +// -*- C++ -*- +/* + * Simple MultimEdia LiTerator(SMELT) + * by Chris Xiong 2015 + * api level 1 + * DaTaPack format support header + * + * WARNING: This library is in development and interfaces would be very + * unstable. + * + */ +#ifndef SMDTP_H +#define SMDTP_H +#include "smelt.hpp" +#include +#include +#include +#include +class smFileInfo +{ +public: + char *path,*data; + DWORD size,offset,crc; +}; +class smDtpFileR +{ +private: + int fcnt; + gzFile file; + std::map m; + + bool enmemory; + DWORD msize; + char *cp,*bp; +public: + bool openDtp(const char* path); + bool openDtpFromMemory(char* ptr,DWORD size); + void closeDtp(); + char* getFirstFile(); + char* getLastFile(); + char* getNextFile(const char* path); + char* getPrevFile(const char* path); + char* getFilePtr(const char* path); + void releaseFilePtr(const char* path); + DWORD getFileSize(const char* path); +}; +class smDtpFileW +{ +private: + smFileInfo files[256]; + int fcnt; +public: + smDtpFileW(); + bool addFile(const char* path,const char* realpath); + bool writeDtp(const char* path); +}; +#endif -- cgit v1.2.3