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.

67 lines
2.0 KiB

  1. #ifndef _VELOCITY_TOOL_
  2. #define _VELOCITY_TOOL_
  3. #include "basetool.h"
  4. #include "tools.h"
  5. #include "param.h"
  6. #include "toolhelp.h"
  7. #include "..\dmtoolprp\toolprops.h"
  8. class CVelocityTool :
  9. public CBaseTool ,
  10. public CParamsManager,
  11. public CToolHelper,
  12. public IPersistStream,
  13. public ISpecifyPropertyPages,
  14. public IDirectMusicVelocityTool
  15. {
  16. public:
  17. CVelocityTool();
  18. public:
  19. // IUnknown
  20. STDMETHODIMP QueryInterface(const IID &iid, void **ppv) ;
  21. STDMETHODIMP_(ULONG) AddRef() ;
  22. STDMETHODIMP_(ULONG) Release() ;
  23. // IPersist functions
  24. STDMETHODIMP GetClassID(CLSID* pClassID);
  25. // IPersistStream functions
  26. STDMETHODIMP IsDirty();
  27. STDMETHODIMP Load(IStream* pStream);
  28. STDMETHODIMP Save(IStream* pStream, BOOL fClearDirty);
  29. STDMETHODIMP GetSizeMax(ULARGE_INTEGER* pcbSize);
  30. // ISpecifyPropertyPages
  31. STDMETHODIMP GetPages(CAUUID *pPages);
  32. // IDirectMusicTool
  33. // STDMETHODIMP Init(IDirectMusicGraph* pGraph) ;
  34. // STDMETHODIMP GetMsgDeliveryType(DWORD* pdwDeliveryType ) ;
  35. // STDMETHODIMP GetMediaTypeArraySize(DWORD* pdwNumElements ) ;
  36. // STDMETHODIMP GetMediaTypes(DWORD** padwMediaTypes, DWORD dwNumElements) ;
  37. STDMETHODIMP ProcessPMsg(IDirectMusicPerformance* pPerf, DMUS_PMSG* pDMUS_PMSG) ;
  38. // STDMETHODIMP Flush(IDirectMusicPerformance* pPerf, DMUS_PMSG* pDMUS_PMSG, REFERENCE_TIME rt) ;
  39. // IDirectMusicTool8
  40. STDMETHODIMP Clone( IDirectMusicTool ** ppTool) ;
  41. // IDirectMusicVelocityTool
  42. STDMETHODIMP SetStrength(long lStrength) ;
  43. STDMETHODIMP SetLowLimit(long lVelocityOut) ;
  44. STDMETHODIMP SetHighLimit(long lVelocityOut) ;
  45. STDMETHODIMP SetCurveStart(long lVelocityIn) ;
  46. STDMETHODIMP SetCurveEnd(long lVelocityIn) ;
  47. STDMETHODIMP GetStrength(long * plStrength) ;
  48. STDMETHODIMP GetLowLimit(long * plVelocityOut) ;
  49. STDMETHODIMP GetHighLimit(long * plVelocityOut) ;
  50. STDMETHODIMP GetCurveStart(long * plVelocityIn) ;
  51. STDMETHODIMP GetCurveEnd(long * plVelocityIn) ;
  52. protected:
  53. };
  54. #endif // _VELOCITY_TOOL_