68 lines
2 KiB
C++
68 lines
2 KiB
C++
#ifndef _ECHO_TOOL_
|
|
#define _ECHO_TOOL_
|
|
|
|
#include "basetool.h"
|
|
#include "tools.h"
|
|
#include "param.h"
|
|
#include "toolhelp.h"
|
|
#include "..\dmtoolprp\toolprops.h"
|
|
|
|
class CEchoTool :
|
|
public CBaseTool ,
|
|
public CParamsManager,
|
|
public CToolHelper,
|
|
public IPersistStream,
|
|
public ISpecifyPropertyPages,
|
|
public IDirectMusicEchoTool
|
|
|
|
{
|
|
public:
|
|
CEchoTool();
|
|
|
|
public:
|
|
// IUnknown
|
|
STDMETHODIMP QueryInterface(const IID &iid, void **ppv) ;
|
|
STDMETHODIMP_(ULONG) AddRef() ;
|
|
STDMETHODIMP_(ULONG) Release() ;
|
|
|
|
// IPersist functions
|
|
STDMETHODIMP GetClassID(CLSID* pClassID);
|
|
|
|
// IPersistStream functions
|
|
STDMETHODIMP IsDirty();
|
|
STDMETHODIMP Load(IStream* pStream);
|
|
STDMETHODIMP Save(IStream* pStream, BOOL fClearDirty);
|
|
STDMETHODIMP GetSizeMax(ULARGE_INTEGER* pcbSize);
|
|
|
|
// ISpecifyPropertyPages
|
|
STDMETHODIMP GetPages(CAUUID *pPages);
|
|
|
|
// IDirectMusicTool
|
|
// STDMETHODIMP Init(IDirectMusicGraph* pGraph) ;
|
|
// STDMETHODIMP GetMsgDeliveryType(DWORD* pdwDeliveryType ) ;
|
|
// STDMETHODIMP GetMediaTypeArraySize(DWORD* pdwNumElements ) ;
|
|
// STDMETHODIMP GetMediaTypes(DWORD** padwMediaTypes, DWORD dwNumElements) ;
|
|
STDMETHODIMP ProcessPMsg(IDirectMusicPerformance* pPerf, DMUS_PMSG* pDMUS_PMSG) ;
|
|
// STDMETHODIMP Flush(IDirectMusicPerformance* pPerf, DMUS_PMSG* pDMUS_PMSG, REFERENCE_TIME rt) ;
|
|
|
|
// IDirectMusicTool8
|
|
STDMETHODIMP Clone( IDirectMusicTool ** ppTool) ;
|
|
|
|
// IDirectMusicEchoTool
|
|
STDMETHODIMP SetRepeat(DWORD dwRepeat) ;
|
|
STDMETHODIMP SetDecay(DWORD dwDecay) ;
|
|
STDMETHODIMP SetTimeUnit(DWORD dwTimeUnit) ;
|
|
STDMETHODIMP SetDelay(DWORD dwDelay) ;
|
|
STDMETHODIMP SetGroupOffset(DWORD dwChannelOffset) ;
|
|
STDMETHODIMP SetType(DWORD dwType) ;
|
|
STDMETHODIMP GetRepeat(DWORD * pdwRepeat) ;
|
|
STDMETHODIMP GetDecay(DWORD * pdwDecay) ;
|
|
STDMETHODIMP GetTimeUnit(DWORD * pdwTimeUnit) ;
|
|
STDMETHODIMP GetDelay(DWORD * pdwDelay) ;
|
|
STDMETHODIMP GetType(DWORD * pdwType) ;
|
|
STDMETHODIMP GetGroupOffset(DWORD * pdwChannelOffset) ;
|
|
protected:
|
|
};
|
|
|
|
#endif // _ECHO_TOOL_
|