home *** CD-ROM | disk | FTP | other *** search
/ Chip 2002 October / Chip_2002-10_cd1.bin / zkuste / vbasic / Data / Utils / WMP71SDK.exe / WMEffect.awx / TEMPLATE / SAMPLE.H < prev    next >
Encoding:
C/C++ Source or Header  |  2001-10-01  |  2.3 KB  |  75 lines

  1. /////////////////////////////////////////////////////////////////////////////
  2. //
  3. // $$root$$.h : Declaration of the C$$Safe_root$$
  4. //
  5. /////////////////////////////////////////////////////////////////////////////
  6.  
  7. #ifndef __$$SAFE_ROOT$$_H_
  8. #define __$$SAFE_ROOT$$_H_
  9.  
  10. #include "resource.h"
  11. #include "effects.h"
  12.  
  13. // preset values
  14. enum {
  15.     PRESET_BARS = 0,
  16.     PRESET_SCOPE,
  17.     PRESET_COUNT
  18. };
  19.  
  20. /////////////////////////////////////////////////////////////////////////////
  21. // C$$Safe_root$$
  22. class ATL_NO_VTABLE C$$Safe_root$$ : 
  23.     public CComObjectRootEx<CComSingleThreadModel>,
  24.     public CComCoClass<C$$Safe_root$$, &CLSID_$$Safe_root$$>,
  25.     public IDispatchImpl<I$$Safe_root$$, &IID_I$$Safe_root$$, &LIBID_$$SAFE_ROOT$$Lib>,
  26.     public IWMPEffects
  27. {
  28. private:
  29.     COLORREF    m_clrForeground;    // foreground color
  30.     LONG        m_nPreset;          // current preset
  31.  
  32.     HRESULT WzToColor(const WCHAR *pwszColor, COLORREF *pcrColor);
  33.     HRESULT ColorToWz( BSTR* pbstrColor, COLORREF crColor);
  34.     DWORD SwapBytes(DWORD dwRet);
  35.  
  36. public:
  37.     C$$Safe_root$$();
  38.     ~C$$Safe_root$$();
  39.  
  40. DECLARE_REGISTRY_RESOURCEID(IDR_$$SAFE_ROOT$$)
  41.  
  42. DECLARE_PROTECT_FINAL_CONSTRUCT()
  43.  
  44. BEGIN_COM_MAP(C$$Safe_root$$)
  45.     COM_INTERFACE_ENTRY(I$$Safe_root$$)
  46.     COM_INTERFACE_ENTRY(IDispatch)
  47.     COM_INTERFACE_ENTRY(IWMPEffects)
  48. END_COM_MAP()
  49.  
  50. public:
  51.  
  52.     // CComCoClass Overrides
  53.     HRESULT FinalConstruct();
  54.     void FinalRelease();
  55.  
  56.     // I$$Safe_root$$
  57.     STDMETHOD(get_foregroundColor)(/*[out, retval]*/ BSTR *pVal);
  58.     STDMETHOD(put_foregroundColor)(/*[in]*/ BSTR newVal);
  59.  
  60.     // IEffects
  61.     STDMETHOD(Render)(TimedLevel *pLevels, HDC hdc, RECT *rc);
  62.     STDMETHOD(MediaInfo)(LONG lChannelCount, LONG lSampleRate, BSTR bstrTitle);
  63.     STDMETHOD(GetCapabilities)(DWORD * pdwCapabilities);
  64.     STDMETHOD(GoFullscreen)(BOOL fFullScreen) { return E_NOTIMPL; };
  65.     STDMETHOD(RenderFullScreen)(TimedLevel *pLevels) { return E_NOTIMPL; };
  66.     STDMETHOD(DisplayPropertyPage)(HWND hwndOwner) { return E_NOTIMPL; };
  67.     STDMETHOD(GetTitle)(BSTR *bstrTitle);
  68.     STDMETHOD(GetPresetTitle)(LONG nPreset, BSTR *bstrPresetTitle);
  69.     STDMETHOD(GetPresetCount)(LONG *pnPresetCount);
  70.     STDMETHOD(SetCurrentPreset)(LONG nPreset);
  71.     STDMETHOD(GetCurrentPreset)(LONG *pnPreset);
  72. };
  73.  
  74. #endif //__$$SAFE_ROOT$$_H_
  75.