home *** CD-ROM | disk | FTP | other *** search
- // CWMPEventDispatch.cpp : Implementation of the event dispatcher
- //
- // Copyright (C) 2000-2001 Microsoft Corporation
- // All rights reserved.
- //
-
- #include "CWMPEventDispatch.h"
-
- HRESULT CWMPEventDispatch::Invoke(
- DISPID dispIdMember,
- REFIID riid,
- LCID lcid,
- WORD wFlags,
- DISPPARAMS FAR* pDispParams,
- VARIANT FAR* pVarResult,
- EXCEPINFO FAR* pExcepInfo,
- unsigned int FAR* puArgErr )
- {
- if (!pDispParams)
- return E_POINTER;
-
- if (pDispParams->cNamedArgs != 0)
- return DISP_E_NONAMEDARGS;
-
- HRESULT hr = DISP_E_MEMBERNOTFOUND;
-
- switch (dispIdMember)
- {
- case DISPID_WMPCOREEVENT_OPENSTATECHANGE:
- OpenStateChange(pDispParams->rgvarg[0].lVal /* NewState */ );
- break;
-
- case DISPID_WMPCOREEVENT_STATUSCHANGE:
- StatusChange();
- break;
-
- case DISPID_WMPCOREEVENT_PLAYSTATECHANGE:
- PlayStateChange(pDispParams->rgvarg[0].lVal /* NewState */);
- break;
-
- case DISPID_WMPCOREEVENT_SCRIPTCOMMAND:
- ScriptCommand(pDispParams->rgvarg[1].bstrVal /* scType */, pDispParams->rgvarg[0].bstrVal /* Param */ );
- break;
-
- case DISPID_WMPCOREEVENT_DISCONNECT:
- Disconnect(pDispParams->rgvarg[0].lVal /* Result */ );
- break;
-
- case DISPID_WMPCOREEVENT_BUFFERING:
- Buffering(pDispParams->rgvarg[0].boolVal /* Start */);
- break;
-
- case DISPID_WMPCOREEVENT_ERROR:
- Error();
- break;
-
- case DISPID_WMPCOREEVENT_MEDIAERROR:
- MediaError(pDispParams->rgvarg[0].pdispVal /* pMediaObject */);
- break;
-
- case DISPID_WMPCOREEVENT_POSITIONCHANGE:
- PositionChange(pDispParams->rgvarg[1].dblVal /* oldPosition */, pDispParams->rgvarg[0].dblVal /* newPosition */);
- break;
-
- case DISPID_WMPCOREEVENT_MARKERHIT:
- MarkerHit(pDispParams->rgvarg[0].lVal /* MarkerNum */);
- break;
-
- case DISPID_WMPCOREEVENT_DURATIONUNITCHANGE:
- DurationUnitChange(pDispParams->rgvarg[0].lVal /* NewDurationUnit */);
- break;
-
- case DISPID_WMPCOREEVENT_CDROMMEDIACHANGE:
- CdromMediaChange(pDispParams->rgvarg[0].lVal /* CdromNum */);
- break;
-
- case DISPID_WMPCOREEVENT_PLAYLISTCHANGE:
- PlaylistChange(pDispParams->rgvarg[1].pdispVal /* Playlist */, (WMPPlaylistChangeEventType) pDispParams->rgvarg[0].lVal /* change */);
- break;
-
- case DISPID_WMPCOREEVENT_CURRENTPLAYLISTCHANGE:
- CurrentPlaylistChange((WMPPlaylistChangeEventType) pDispParams->rgvarg[0].lVal /* change */);
- break;
-
- case DISPID_WMPCOREEVENT_CURRENTPLAYLISTITEMAVAILABLE:
- CurrentPlaylistItemAvailable(pDispParams->rgvarg[0].bstrVal /* bstrItemName */);
- break;
-
- case DISPID_WMPCOREEVENT_MEDIACHANGE:
- MediaChange(pDispParams->rgvarg[0].pdispVal /* Item */);
- break;
-
- case DISPID_WMPCOREEVENT_CURRENTMEDIAITEMAVAILABLE:
- CurrentMediaItemAvailable(pDispParams->rgvarg[0].bstrVal /* bstrItemName */);
- break;
-
- case DISPID_WMPCOREEVENT_CURRENTITEMCHANGE:
- CurrentItemChange(pDispParams->rgvarg[0].pdispVal /* pdispMedia */);
- break;
- }
-
- return( hr );
- }
-
- // Sent when the control changes OpenState
- void CWMPEventDispatch:: OpenStateChange(long NewState)
- {
- return;
- }
-
- // Sent when the status string changes
- void CWMPEventDispatch:: StatusChange()
- {
- return;
- }
-
- // Sent when the control changes PlayState
- void CWMPEventDispatch:: PlayStateChange(long NewState)
- {
- return;
- }
-
- // Sent when a synchronized command or URL is received
- void CWMPEventDispatch:: ScriptCommand(BSTR scType,BSTR Param)
- {
- return;
- }
-
- // Sent when the control is disconnected from the server
- void CWMPEventDispatch:: Disconnect(long Result )
- {
- return;
- }
-
- // Sent when the control begins or ends buffering
- void CWMPEventDispatch:: Buffering(VARIANT_BOOL Start)
- {
- return;
- }
-
- // Sent when the control has an error condition
- void CWMPEventDispatch:: Error()
- {
- return;
- }
-
- // Sent when the media object has an error condition
- void CWMPEventDispatch:: MediaError(IDispatch * pMediaObject)
- {
- return;
- }
-
- // Indicates that the current position of the movie has changed
- void CWMPEventDispatch:: PositionChange(double oldPosition,double newPosition)
- {
- return;
- }
-
- // Sent when a marker is reached
- void CWMPEventDispatch:: MarkerHit(long MarkerNum )
- {
- return;
- }
-
- // Indicates that the unit used to express duration and position has changed
- void CWMPEventDispatch:: DurationUnitChange(long NewDurationUnit)
- {
- return;
- }
-
- // Indicates that the CD ROM media has changed
- void CWMPEventDispatch:: CdromMediaChange(long CdromNum)
- {
- return;
- }
-
- // Sent when a playlist changes
- void CWMPEventDispatch:: PlaylistChange(IDispatch * Playlist,WMPPlaylistChangeEventType change)
- {
- return;
- }
-
- // Sent when the current playlist changes
- void CWMPEventDispatch:: CurrentPlaylistChange(WMPPlaylistChangeEventType change )
- {
- return;
- }
-
- // Sent when a current playlist item becomes available
- void CWMPEventDispatch:: CurrentPlaylistItemAvailable(BSTR bstrItemName)
- {
- return;
- }
-
- // Sent when a media object changes
- void CWMPEventDispatch:: MediaChange(IDispatch * Item)
- {
- return;
- }
-
- // Sent when a current media item becomes available
- void CWMPEventDispatch:: CurrentMediaItemAvailable(BSTR bstrItemName)
- {
- return;
- }
-
- // Sent when the item selection on the current playlist changes
- void CWMPEventDispatch:: CurrentItemChange(IDispatch *pdispMedia)
- {
- return;
- }
-