meastool.h
Upload User: hxb_1234
Upload Date: 2010-03-30
Package Size: 8328k
Code Size: 1k
Development Platform:

Visual C++

  1. #ifndef _MEASTOOL_H
  2. #define _MEASTOOL_H
  3. #include <dmusici.h>
  4. typedef enum { eOff, eMeasure, eBeat } EBeatType;
  5. class CMeasureTool : public IDirectMusicTool
  6. {
  7. public:
  8. CMeasureTool(HWND hwndParent);
  9.     ~CMeasureTool();
  10.     HWND        m_hwndParent;
  11. public:
  12.     virtual STDMETHODIMP QueryInterface(const IID &iid, void **ppv);
  13.     virtual STDMETHODIMP_(ULONG) AddRef();
  14.     virtual STDMETHODIMP_(ULONG) Release();
  15. HRESULT STDMETHODCALLTYPE Init( IDirectMusicGraph* pGraph );
  16. HRESULT STDMETHODCALLTYPE GetMsgDeliveryType( DWORD* pdwDeliveryType );
  17. HRESULT STDMETHODCALLTYPE GetMediaTypeArraySize( DWORD* pdwNumElements );
  18. HRESULT STDMETHODCALLTYPE GetMediaTypes( DWORD** padwMediaTypes, DWORD dwNumElements) ;
  19. HRESULT STDMETHODCALLTYPE ProcessPMsg( IDirectMusicPerformance* pPerf, DMUS_PMSG* pDMUS_PMSG );
  20. HRESULT STDMETHODCALLTYPE Flush( IDirectMusicPerformance* pPerf, DMUS_PMSG* pDMUS_PMSG, REFERENCE_TIME rt );
  21.     void    Blink(EBeatType);
  22. private:
  23. long    m_cRef;    
  24. };
  25. void CALLBACK Unblink(HWND, UINT, UINT_PTR, DWORD);
  26. #endif // _MEASTOOL_H