windows-nt/Source/XPSP1/NT/admin/controls/smonctrl/namenode.h
2020-09-26 16:20:57 +08:00

52 lines
841 B
C++

/*++
Copyright (C) 1996-1999 Microsoft Corporation
Module Name:
namenode.h
Abstract:
<abstract>
--*/
#ifndef _NAMENODE_H_
#define _NAMENODE_H_
class CNamedNode
{
friend class CNamedNodeList;
protected:
CNamedNode *m_pnodeNext;
public:
CNamedNode() { m_pnodeNext = NULL; }
};
typedef CNamedNode *PCNamedNode;
//
// Class CNamedNodeList
//
class CNamedNodeList
{
private:
PCNamedNode m_pnodeFirst;
PCNamedNode m_pnodeLast;
public:
CNamedNodeList( void ) { m_pnodeFirst = m_pnodeLast = NULL; }
BOOL FindByName ( LPCTSTR pszName, INT iNameOffset, PCNamedNode *ppnodeRet );
void Add ( PCNamedNode pnodeNew, PCNamedNode pnodePos );
void Remove ( PCNamedNode pnode );
BOOL IsEmpty( void ) { return m_pnodeFirst == NULL; }
CNamedNode *First ( void ) { return m_pnodeFirst; }
};
#endif //_NAMENODE_H_