Source code of Windows XP (NT5)
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.

59 lines
1.3 KiB

  1. //+--------------------------------------------------------------------------
  2. //
  3. // Microsoft Windows
  4. // Copyright (C) Microsoft Corporation, 1996 - 1999
  5. //
  6. // File: enum.h
  7. //
  8. // Contents: Cert Server Database interface implementation
  9. //
  10. //---------------------------------------------------------------------------
  11. #include "resource.h" // main symbols
  12. class CEnumCERTDBNAME: public IEnumCERTDBNAME
  13. {
  14. public:
  15. CEnumCERTDBNAME();
  16. ~CEnumCERTDBNAME();
  17. // IUnknown
  18. STDMETHODIMP QueryInterface(const IID& iid, void **ppv);
  19. ULONG STDMETHODCALLTYPE AddRef();
  20. ULONG STDMETHODCALLTYPE Release();
  21. // IEnumCERTDBNAME
  22. STDMETHOD(Next)(
  23. /* [in] */ ULONG celt,
  24. /* [out] */ CERTDBNAME *rgelt,
  25. /* [out] */ ULONG *pceltFetched);
  26. STDMETHOD(Skip)(
  27. /* [in] */ LONG celt,
  28. /* [out] */ LONG *pielt);
  29. STDMETHOD(Reset)(VOID);
  30. STDMETHOD(Clone)(
  31. /* [out] */ IEnumCERTDBNAME **ppenum);
  32. // CEnumCERTDBNAME
  33. HRESULT Open(
  34. IN ICertDBRow *prow,
  35. IN JET_TABLEID tableid,
  36. IN DWORD Flags);
  37. private:
  38. VOID _Cleanup();
  39. ICertDBRow *m_prow;
  40. JET_TABLEID m_tableid;
  41. DWORD m_Flags;
  42. BOOL m_fNoMoreData;
  43. LONG m_ielt;
  44. LONG m_cskip;
  45. // Reference count
  46. long m_cRef;
  47. };