IWMSPushSource::PausePushing

banner art

Previous Next

IWMSPushSource::PausePushing

The PausePushing method is called by the server to pause the flow of packets down a data path.

Syntax

  
    HRESULT PausePushing(
  IWMSCommandContext*  pCommand,
  IWMSPushSourceCallback*  pCallback,
  QWORD  qwContext
);

Parameters

pCommand

[in] Pointer to an IWMSCommandContext interface containing the context associated with this call.

pCallback

[in] Pointer to an IWMSPushSourceCallback interface used to report the status of this method call.

qwContext

[in] QWORD containing a value defined by the server to identify which call to PausePushing the plug-in is responding to when it calls IWMSPushSourceCallback::OnPausePushing. You must pass this value back unaltered when you call OnPausePushing.

Return Values

If the method succeeds, the plug-in must return S_OK. To report an error, the plug-in can return any HRESULT other than S_OK. If the plug-in uses the IWMSEventLog interface to log error information directly to the Windows Event Viewer, it is recommended that it return NS_E_PLUGIN_ERROR_REPORTED. Typically, the server attempts to make plug-in error information available to the server object model, the Windows Event Viewer, and the troubleshooting list in the details pane of the Windows Media Services MMC. However, if the plug-in uses the IWMSEventLog interface to send custom error information to the Windows Event Viewer, returning NS_E_PLUGIN_ERROR_REPORTED stops the server from also logging to the event viewer. For more information about retrieving plug-in error information, see Identifying Plug-in Errors.

Example Code

  HRESULT STDMETHODCALLTYPE 
CNetworkDataContainer::PausePushing(
                     IWMSCommandContext *pCommand,
                     IWMSPushSourceCallback *pCallback,
                     QWORD qwContext)
{
    HRESULT hr = S_OK;
    
    if ( ( m_StreamState == STOPPED ) )
    {
        pCallback->OnPausePushing( S_OK, qwContext );
        return( S_OK );
    }

    hr = m_pStream->Pause();
    if( FAILED( hr ) ) goto EXIT;
   
EXIT:
    if( FAILED( hr ) )
    {
        pCallback->OnPausePushing( hr, qwContext );
    }    
    return( S_OK );
}

Requirements

Header: wmsdatapath.h.

Library: WMSServerTypeLib.dll.

Platform: Windows Server 2003, Enterprise Edition; Windows Server 2003, Datacenter Edition; Windows Server 2008.

See Also

Previous Next