hash.h

来自「My (so called) HiP compression algorithm」· C头文件 代码 · 共 46 行

H
46
字号
/***************************************************************************** 

  Hash
  ----

  A little fast string search algorithm based on a hash table
  
  by yoda

  WWW:      y0da.cjb.net
  E-mail:   LordPE@gmx.net

  You are allowed to use this class in your own projects if you keep this
  trademark.

*****************************************************************************/

#pragma once

#include <windows.h>

//
// Hash class
//
class Hash
{
public:
	Hash(void);
	~Hash(void);

	void         Dispose();
	BOOL         Assign( PBYTE buffer, DWORD cb );
	BOOL   FindLongestMatch(IN  PBYTE pbyWin, IN PBYTE pData, IN DWORD cbData, 
						   IN DWORD cbMin2Match, IN BOOL bAddNode, OUT DWORD &dwDistance, OUT DWORD &dwLength );
	void   UpdateNodesForRange( PBYTE pby, DWORD cbAdd, DWORD cbMax );

private:
	BYTE**       m_Hash;
	PBYTE        m_Buff;
	DWORD        m_cbBuff;

	BOOL FindMatch(IN  PBYTE pbyWin, IN DWORD cbWin, IN PBYTE pData, IN DWORD cbData, 
						   OUT DWORD &dwDistance, OUT DWORD &dwLength );
	BOOL InsertHash( void* p, DWORD cbMax );
};

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?