You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
64 lines
1.2 KiB
64 lines
1.2 KiB
|
|
/******************************************************************************
|
|
|
|
Copyright (c) 1999 Microsoft Corporation
|
|
|
|
Module Name:
|
|
hashlist.h
|
|
|
|
Abstract:
|
|
|
|
|
|
Revision History:
|
|
Eugene Mesgar (eugenem) 6/16/99
|
|
created
|
|
|
|
******************************************************************************/
|
|
|
|
#ifndef __CFLHASHLIST__
|
|
#define __CFLHASHLIST__
|
|
|
|
#include "flstructs.h"
|
|
|
|
#define LARGEST_HASH_SIZE 1003
|
|
|
|
class CFLHashList
|
|
{
|
|
LPVOID m_pBasePointer;
|
|
LONG m_lNumElements;
|
|
|
|
LONG m_lNumHashSpots;
|
|
LONG m_ilOpenEntry;
|
|
DWORD m_dwSize;
|
|
|
|
|
|
ListHeader *m_pListHeader;
|
|
ListEntry *m_pNodeIndex;
|
|
BlobHeader *m_pBlobHeader;
|
|
|
|
DWORD *m_paHashArray; // base index pointer
|
|
|
|
HANDLE m_hHeapToUse;
|
|
public:
|
|
CFLHashList();
|
|
CFLHashList(HANDLE hHeap);
|
|
|
|
virtual ~CFLHashList();
|
|
|
|
BOOL Init(LONG lNumNodes, DWORD dwNumChars);
|
|
BOOL AddFile(LPTSTR szFile, TCHAR chType);
|
|
BOOL CleanUpMemory();
|
|
|
|
DWORD CreatePathElem( LPTSTR pszData, BYTE *pbLargeBuffer );
|
|
|
|
DWORD GetSize();
|
|
LPVOID GetBasePointer();
|
|
|
|
|
|
BOOL IsPrime(DWORD dwNumber);
|
|
DWORD GetNextHighestPrime( DWORD dwNumber );
|
|
|
|
|
|
};
|
|
|
|
#endif
|