ifc_omserviceenum.h 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. #ifndef NULLSOFT_WINAMP_OMSERVICE_ENUMERATOR_INTERFACE_HEADER
  2. #define NULLSOFT_WINAMP_OMSERVICE_ENUMERATOR_INTERFACE_HEADER
  3. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  4. #pragma once
  5. #endif
  6. // {27E67F83-2E2B-4b5b-A029-2CDDFF28BD41}
  7. static const GUID IFC_OmServiceEnum =
  8. { 0x27e67f83, 0x2e2b, 0x4b5b, { 0xa0, 0x29, 0x2c, 0xdd, 0xff, 0x28, 0xbd, 0x41 } };
  9. #include <bfc/dispatch.h>
  10. class ifc_omservice;
  11. class __declspec(novtable) ifc_omserviceenum : public Dispatchable
  12. {
  13. protected:
  14. ifc_omserviceenum() {}
  15. ~ifc_omserviceenum() {}
  16. public:
  17. HRESULT Next(unsigned long listSize, ifc_omservice **elementList, unsigned long *elementCount);
  18. HRESULT Reset(void);
  19. HRESULT Skip(unsigned long elementCount);
  20. public:
  21. DISPATCH_CODES
  22. {
  23. API_NEXT = 10,
  24. API_RESET = 20,
  25. API_SKIP = 30,
  26. };
  27. };
  28. inline HRESULT ifc_omserviceenum::Next(unsigned long listSize, ifc_omservice **elementList, unsigned long *elementCount)
  29. {
  30. return _call(API_NEXT, (HRESULT)E_NOTIMPL, listSize, elementList, elementCount);
  31. }
  32. inline HRESULT ifc_omserviceenum::Reset(void)
  33. {
  34. return _call(API_RESET, (HRESULT)E_NOTIMPL);
  35. }
  36. inline HRESULT ifc_omserviceenum::Skip(unsigned long elementCount)
  37. {
  38. return _call(API_SKIP, (HRESULT)E_NOTIMPL, elementCount);
  39. }
  40. #endif //NULLSOFT_WINAMP_OMSERVICE_ENUMERATOR_INTERFACE_HEADER