Leaked source code of windows server 2003
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.
|
|
/*++
Copyright (C) 1997-2001 Microsoft Corporation
Module Name:
INDEXCAC.H
Abstract:
Declares the CCacheEntry and CIndexCache classes.
History:
a-davj 04-Mar-97 Created.
--*/
#ifndef _INDEXCAC_H_
#define _INDEXCAC_H_
//***************************************************************************
//
// CLASS NAME:
//
// CCacheEntry
//
// DESCRIPTION:
//
// This "object" is used as a structure. It holds a cache entry.
//
//***************************************************************************
class CCacheEntry : public CObject { public: CCacheEntry(TCHAR * pValue, int iIndex); CCacheEntry(WCHAR * pValue); ~CCacheEntry(); int m_iIndex; TCHAR * m_ptcValue; WCHAR * m_pwcValue; };
//***************************************************************************
//
// CLASS NAME:
//
// CIndexCache
//
// DESCRIPTION:
//
// Holds a cache for string/integer combinations that the perf monitor
// provider uses to speed up lookup.
//
//***************************************************************************
class CIndexCache : public CObject { public: CIndexCache(); ~CIndexCache(){Empty();}; void Empty();
// this routine returns -1, if the entry isnt found. The second
// argument can be used to find subsequent entries.
int Find(const TCHAR * pFind, DWORD dwWhichEntry = 0);
// this routine returns TRUE if the add worked
BOOL Add(TCHAR * pAdd, int iIndex); // this routine returns NULL if the index isnt found. Note that
// the index isnt necessarily the m_iIndex value as found in the entry
WCHAR * GetWString(int iIndex); BOOL SetAt(WCHAR * pwcAdd, int iIndex);
private: CFlexArray m_Array; };
#endif //_INDEXCAC_H_
|