hxclsnk.h
来自「Amarok是一款在LINUX或其他类UNIX操作系统中运行的音频播放器软件。 」· C头文件 代码 · 共 231 行
H
231 行
/* * * This software is released under the provisions of the GPL version 2. * see file "COPYING". If that file is not available, the full statement * of the license can be found at * * http://www.fsf.org/licensing/licenses/gpl.txt * * Portions Copyright (c) 1995-2004 RealNetworks, Inc. All Rights Reserved. * */#ifndef _HXCLSNK_H_#define _HXCLSNK_H_/* * Forward declarations of some interfaces defined or used here-in. */typedef _INTERFACE IHXClientAdviseSink IHXClientAdviseSink;typedef _INTERFACE IHXRequest IHXRequest;/**************************************************************************** * * Interface: * * IHXClientAdviseSink * * Purpose: * * Interface supplied by client to core to receive notifications of * status changes. * * IID_IHXClientAdviseSink: * * {00000B00-0901-11d1-8B06-00A024406D59} * */DEFINE_GUID(IID_IHXClientAdviseSink, 0x00000B00, 0x901, 0x11d1, 0x8b, 0x6, 0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59);#undef INTERFACE#define INTERFACE IHXClientAdviseSinkDECLARE_INTERFACE_(IHXClientAdviseSink, IUnknown){ /* * IUnknown methods */ STDMETHOD(QueryInterface) (THIS_ REFIID riid, void** ppvObj) PURE; STDMETHOD_(ULONG32,AddRef) (THIS) PURE; STDMETHOD_(ULONG32,Release) (THIS) PURE; /* * IHXClientAdviseSink methods */ /************************************************************************ * Method: * IHXClientAdviseSink::OnPosLength * Purpose: * Called to advise the client that the position or length of the * current playback context has changed. */ STDMETHOD(OnPosLength) (THIS_ UINT32 ulPosition, UINT32 ulLength) PURE; /************************************************************************ * Method: * IHXClientAdviseSink::OnPresentationOpened * Purpose: * Called to advise the client a presentation has been opened. */ STDMETHOD(OnPresentationOpened) (THIS) PURE; /************************************************************************ * Method: * IHXClientAdviseSink::OnPresentationClosed * Purpose: * Called to advise the client a presentation has been closed. */ STDMETHOD(OnPresentationClosed) (THIS) PURE; /************************************************************************ * Method: * IHXClientAdviseSink::OnStatisticsChanged * Purpose: * Called to advise the client that the presentation statistics * have changed. */ STDMETHOD(OnStatisticsChanged) (THIS) PURE; /************************************************************************ * Method: * IHXClientAdviseSink::OnPreSeek * Purpose: * Called by client engine to inform the client that a seek is * about to occur. The render is informed the last time for the * stream's time line before the seek, as well as the first new * time for the stream's time line after the seek will be completed. * */ STDMETHOD(OnPreSeek) (THIS_ ULONG32 ulOldTime, ULONG32 ulNewTime) PURE; /************************************************************************ * Method: * IHXClientAdviseSink::OnPostSeek * Purpose: * Called by client engine to inform the client that a seek has * just occurred. The render is informed the last time for the * stream's time line before the seek, as well as the first new * time for the stream's time line after the seek. * */ STDMETHOD(OnPostSeek) (THIS_ ULONG32 ulOldTime, ULONG32 ulNewTime) PURE; /************************************************************************ * Method: * IHXClientAdviseSink::OnStop * Purpose: * Called by client engine to inform the client that a stop has * just occurred. * */ STDMETHOD(OnStop) (THIS) PURE; /************************************************************************ * Method: * IHXClientAdviseSink::OnPause * Purpose: * Called by client engine to inform the client that a pause has * just occurred. The render is informed the last time for the * stream's time line before the pause. * */ STDMETHOD(OnPause) (THIS_ ULONG32 ulTime) PURE; /************************************************************************ * Method: * IHXClientAdviseSink::OnBegin * Purpose: * Called by client engine to inform the client that a begin or * resume has just occurred. The render is informed the first time * for the stream's time line after the resume. * */ STDMETHOD(OnBegin) (THIS_ ULONG32 ulTime) PURE; /************************************************************************ * Method: * IHXClientAdviseSink::OnBuffering * Purpose: * Called by client engine to inform the client that buffering * of data is occurring. The render is informed of the reason for * the buffering (start-up of stream, seek has occurred, network * congestion, etc.), as well as percentage complete of the * buffering process. * */ STDMETHOD(OnBuffering) (THIS_ ULONG32 ulFlags, UINT16 unPercentComplete) PURE; /************************************************************************ * Method: * IHXClientAdviseSink::OnContacting * Purpose: * Called by client engine to inform the client is contacting * hosts(s). * */ STDMETHOD(OnContacting) (THIS_ const char* pHostName) PURE;};// $Private:/**************************************************************************** * * Interface: * * IHXClientRequestSink * * Purpose: * * Enables top level clients to get notified of new URLs * * * IID_IHXClientRequestSink * * {00000B01-0901-11d1-8B06-00A024406D59} * */DEFINE_GUID(IID_IHXClientRequestSink, 0x00000B01, 0x901, 0x11d1, 0x8b, 0x6, 0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59);#undef INTERFACE#define INTERFACE IHXClientRequestSinkDECLARE_INTERFACE_(IHXClientRequestSink, IUnknown){ /************************************************************************ * Method: * IHXClientRequestSink::OnNewRequest * Purpose: * Inform TLC of the new request. The TLC may choose to * modify RequestHeaders at this time. */ STDMETHOD(OnNewRequest) (THIS_ IHXRequest* pNewRequest) PURE;};// $EndPrivate.#endif /* _HXCLSNK_H_ */
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?