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.

54 lines
1.0 KiB

  1. /*++
  2. Copyright (c) 1996 Microsoft Corporation
  3. Module Name:
  4. CEnumVar.h
  5. Abstract:
  6. Author:
  7. Environment:
  8. User mode
  9. Revision History :
  10. --*/
  11. #ifndef _CENUMVAR_H_
  12. #define _CENUMVAR_H_
  13. class FAR CEnumVariant : public IEnumVARIANT
  14. {
  15. public:
  16. // IUnknown methods
  17. STDMETHOD(QueryInterface)(REFIID riid, LPVOID FAR* ppvObj) ;
  18. STDMETHOD_(ULONG, AddRef)() ;
  19. STDMETHOD_(ULONG, Release)() ;
  20. // IEnumVARIANT methods
  21. STDMETHOD(Next)(ULONG cElements,
  22. VARIANT FAR* pvar,
  23. ULONG FAR* pcElementFetched);
  24. STDMETHOD(Skip)(ULONG cElements);
  25. STDMETHOD(Reset)();
  26. STDMETHOD(Clone)(IEnumVARIANT FAR* FAR* ppenum);
  27. CEnumVariant();
  28. ~CEnumVariant();
  29. static HRESULT Create(SAFEARRAY FAR* psa, ULONG cElements, CEnumVariant** ppenumvariant);
  30. private:
  31. ULONG m_cRef;
  32. ULONG m_cElements;
  33. long m_lLBound;
  34. long m_lCurrent;
  35. SAFEARRAY* m_psa;
  36. };
  37. #endif