MediaCoreCOM.h 998 B

12345678910111213141516171819202122232425262728293031323334
  1. #ifndef NULLSOFT_WINAMP_MEDIACORECOM_H
  2. #define NULLSOFT_WINAMP_MEDIACORECOM_H
  3. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  4. #pragma once
  5. #endif
  6. #include "./dispatchCallback.h"
  7. class MediaCoreCOM : public IDispatch
  8. {
  9. public:
  10. STDMETHOD(QueryInterface)(REFIID riid, PVOID *ppvObject);
  11. STDMETHOD_(ULONG, AddRef)(void);
  12. STDMETHOD_(ULONG, Release)(void);
  13. // *** IDispatch Methods ***
  14. STDMETHOD (GetIDsOfNames)(REFIID riid, OLECHAR FAR* FAR* rgszNames, unsigned int cNames, LCID lcid, DISPID FAR* rgdispid);
  15. STDMETHOD (GetTypeInfo)(unsigned int itinfo, LCID lcid, ITypeInfo FAR* FAR* pptinfo);
  16. STDMETHOD (GetTypeInfoCount)(unsigned int FAR * pctinfo);
  17. STDMETHOD (Invoke)(DISPID dispid, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS FAR *pdispparams, VARIANT FAR *pvarResult, EXCEPINFO FAR * pexecinfo, unsigned int FAR *puArgErr);
  18. public:
  19. void OnPlay();
  20. void OnStop(int last_time, int fullstop);
  21. void OnPause();
  22. void OnResume();
  23. private:
  24. DispatchCallbackStore coreCallbacks;
  25. };
  26. #endif