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.

55 lines
1.2 KiB

  1. #ifndef _TBIDIREQUESTCONTAINERENUM
  2. #define _TBIDIREQUESTCONTAINERENUM
  3. class TBidiRequestContainer;
  4. class TBidiRequestContainerEnum:
  5. public IEnumUnknown
  6. {
  7. public:
  8. // IUnknown
  9. STDMETHOD(QueryInterface)(
  10. REFIID iid,
  11. void** ppv) ;
  12. STDMETHOD_ (ULONG, AddRef) () ;
  13. STDMETHOD_ (ULONG, Release)() ;
  14. STDMETHOD (Next)(
  15. IN ULONG celt,
  16. OUT IUnknown ** rgelt,
  17. OUT ULONG * pceltFetched);
  18. STDMETHOD (Skip) (
  19. IN ULONG celt);
  20. STDMETHOD (Reset)(void);
  21. STDMETHOD (Clone)(
  22. OUT IEnumUnknown ** ppenum);
  23. TBidiRequestContainerEnum (
  24. TBidiRequestContainer &refContainer,
  25. TReqInterfaceList &refReqList);
  26. TBidiRequestContainerEnum (
  27. TBidiRequestContainerEnum & refEnum);
  28. ~TBidiRequestContainerEnum ();
  29. inline BOOL
  30. bValid () CONST {return m_bValid;};
  31. private:
  32. BOOL m_bValid;
  33. LONG m_cRef ;
  34. TReqInterfaceList & m_refReqList;
  35. TReqInterfaceNode * m_pHead;
  36. TReqInterfaceNode * m_pCurrent;
  37. TBidiRequestContainer & m_refContainer;
  38. };
  39. #endif