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 + -
显示快捷键?