2 * Copyright 2000, International Business Machines Corporation and others.
5 * This software has been released under the terms of the IBM Public
6 * License. For details, see the LICENSE file in the top-level source
7 * directory or online at http://www.openafs.org/dl/license10.html
14 #include <afsconfig.h>
15 #include <afs/param.h>
19 #include <WINNT/afsclass.h>
24 * IDENTLIST CLASS ____________________________________________________________
28 IDENTLIST::IDENTLIST (void)
30 m_lIdents
= New (HASHLIST
);
34 IDENTLIST::~IDENTLIST (void)
42 void IDENTLIST::Add (LPIDENT lpi
)
44 m_lIdents
->AddUnique (lpi
);
48 void IDENTLIST::Remove (LPIDENT lpi
)
50 m_lIdents
->Remove (lpi
);
54 void IDENTLIST::RemoveAll (void)
57 while ((lpi
= (LPIDENT
)m_lIdents
->GetFirstObject()) != NULL
)
58 m_lIdents
->Remove (lpi
);
62 void IDENTLIST::CopyFrom (LPIDENTLIST pil
)
67 for (LPIDENT lpi
= pil
->FindFirst (&hEnum
); lpi
; lpi
= pil
->FindNext (&hEnum
))
72 size_t IDENTLIST::GetCount (void)
74 return m_lIdents
->GetCount();
78 BOOL
IDENTLIST::fIsInList (LPIDENT lpi
)
80 return m_lIdents
->fIsInList (lpi
);
84 LPIDENT
IDENTLIST::FindFirst (HENUM
*phEnum
)
87 if ((*phEnum
= m_lIdents
->FindFirst()) != NULL
)
88 lpi
= (LPIDENT
)( (*phEnum
)->GetObject() );
93 LPIDENT
IDENTLIST::FindNext (HENUM
*phEnum
)
97 if ((*phEnum
) && ((*phEnum
= (*phEnum
)->FindNext()) != NULL
))
98 lpi
= (LPIDENT
)( (*phEnum
)->GetObject() );
104 void IDENTLIST::FindClose (HENUM
*phEnum
)