dictziplib.hpp
来自「使用Qt4编写的星际译王(stardict)」· HPP 代码 · 共 58 行
HPP
58 行
#ifndef __DICT_ZIP_LIB_H__#define __DICT_ZIP_LIB_H__#include <ctime>#include <string>#include <zlib.h>#include "mapfile.hpp"#define DICT_CACHE_SIZE 5struct dictCache { int chunk; char *inBuffer; int stamp; int count;};struct dictData { dictData() {} bool open(const std::string& filename, int computeCRC); void close(); void read(char *buffer, unsigned long start, unsigned long size); ~dictData() { close(); }private: const char *start; /* start of mmap'd area */ const char *end; /* end of mmap'd area */ unsigned long size; /* size of mmap */ int type; z_stream zStream; int initialized; int headerLength; int method; int flags; time_t mtime; int extraFlags; int os; int version; int chunkLength; int chunkCount; int *chunks; unsigned long *offsets; /* Sum-scan of chunks. */ std::string origFilename; std::string comment; unsigned long crc; unsigned long length; unsigned long compressedLength; dictCache cache[DICT_CACHE_SIZE]; MapFile mapfile; int read_header(const std::string &filename, int computeCRC);};#endif//!__DICT_ZIP_LIB_H__
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?