hxengin.h

来自「Amarok是一款在LINUX或其他类UNIX操作系统中运行的音频播放器软件。 」· C头文件 代码 · 共 2,615 行 · 第 1/5 页

H
2,615
字号
 *  IID_IHXOverrideDefaultServices: *  *	{00000111-0901-11d1-8B06-00A024406D59} *  */DEFINE_GUID(IID_IHXOverrideDefaultServices, 0x00000111, 0x901, 0x11d1, 0x8b, 0x6, 0x0, 			0xa0, 0x24, 0x40, 0x6d, 0x59);#undef  INTERFACE#define INTERFACE   IHXOverrideDefaultServicesDECLARE_INTERFACE_(IHXOverrideDefaultServices, IUnknown){    /*     * IUnknown methods     */    STDMETHOD(QueryInterface)   (THIS_                                REFIID riid,				void** ppvObj) PURE;    STDMETHOD_(ULONG32,AddRef)  (THIS) PURE;    STDMETHOD_(ULONG32,Release) (THIS) PURE;   /*    * IHXOverrideDefaultServices methods    */   /************************************************************************    *  Method:    *      IHXOverrideDefaultServices::OverrideServices    *  Purpose:    *      Override default services provided by the G2 system.    *    */    STDMETHOD(OverrideServices)         (THIS_				IUnknown* pContext) PURE;};typedef enum _HX_SOCKET_OPTION{    HX_SOCKOPT_REUSE_ADDR,    HX_SOCKOPT_REUSE_PORT,    HX_SOCKOPT_BROADCAST,    HX_SOCKOPT_SET_RECVBUF_SIZE,    HX_SOCKOPT_SET_SENDBUF_SIZE,    HX_SOCKOPT_MULTICAST_IF,    HX_SOCKOPT_IP_TOS} HX_SOCKET_OPTION;/**************************************************************************** *  *  Interface: *  *	IHXSetSocketOption *  *  Purpose: *  *	Set sockt option *  *  IID_IHXSetSocketOption: *  *	IID_IHXSetSocketOption:    {00000114-0901-11d1-8B06-00A024406D59} *  */DEFINE_GUID(IID_IHXSetSocketOption,	    0x00000114, 0x901, 0x11d1, 0x8b, 0x6, 0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59);#undef  INTERFACE#define INTERFACE   IHXSetSocketOptionDECLARE_INTERFACE_(IHXSetSocketOption, IUnknown){    /*     *  IUnknown methods     */    STDMETHOD(QueryInterface)		(THIS_					REFIID riid,					void** ppvObj) PURE;    STDMETHOD_(ULONG32,AddRef)		(THIS) PURE;    STDMETHOD_(ULONG32,Release)		(THIS) PURE;    /*     *	IHXListenSocket methods     */    STDMETHOD(SetOption)		(THIS_ 					 HX_SOCKET_OPTION option,					 UINT32 ulValue) PURE;					 };#define HX_THREADSAFE_METHOD_FF_GETPACKET		0x00000001/* * FileFormat::GetPacket() only calls: *     CCF->CI(Buffer), CCF->CI(Packet), CCF->CI(Values), *Alloc, *Free,  *     FS->Read(), FS->Close(), FS->Seek(), *     FFR->PacketReady(), FFR->StreamDone() *     Context->Scheduler->*, *     CCF->CI(Mutex), Mutex->* *     Context->ErrorMessages * * XXXSMPNOW */#define HX_THREADSAFE_METHOD_FS_READ			0x00000002/* * FileSystem::Read()/Seek()/Close() only calls: *     CCF->CI(Buffer), CCF->CI(Packet), CCF->CI(Values), *Alloc, *Free,  *     FS->Read(), FS->Close(), FS->Seek(), *     Context->Scheduler->*, *     CCF->CI(Mutex), Mutex->* *     Context->ErrorMessages * * XXXSMPNOW */#define HX_THREADSAFE_METHOD_FSR_READDONE		0x00000004/* * FileFormat::ReadDone()/SeekDone()/CloseDone() only calls: *     CCF->CI(Buffer), CCF->CI(Packet), CCF->CI(Values), *Alloc, *Free,  *     FS->Read(), FS->Close(), FS->Seek(), *     FFR->PacketReady(), FFR->StreamDone() *     Context->Scheduler->*, *     CCF->CI(Mutex), Mutex->* *     Context->ErrorMessages * * XXXSMPNOW */#define HX_THREADSAFE_METHOD_CACHE_FILE		0x00000008/* * FileSystem::Read()/Seek()/Close() only calls: *     CCF->CI(Buffer), CCF->CI(Packet), CCF->CI(Values), *Alloc, *Free,  *     FS->Read(), FS->Close(), FS->Seek(), *     IHXCacheFile->*, IHXCacheFileResponse->*, *     Context->Scheduler->*, *     CCF->CI(Mutex), Mutex->* *     Context->ErrorMessages * * XXXSMPNOW */#define HX_THREADSAFE_METHOD_CACHE_FILE_RESPONSE	0x00000010/* * FileSystem::Read()/Seek()/Close() only calls: *     CCF->CI(Buffer), CCF->CI(Packet), CCF->CI(Values), *Alloc, *Free,  *     FS->Read(), FS->Close(), FS->Seek(), *     IHXCacheFile->*, IHXCacheFileResponse->*, *     Context->Scheduler->*, *     CCF->CI(Mutex), Mutex->* *     Context->ErrorMessages * * XXXSMPNOW *//* * Thread Safe flags for IHXDataConvert */#define HX_THREADSAFE_METHOD_CONVERT_HEADERS		0x00000020/* * IHXDataConvert::ConvertXXX()/CtrlBufferReady() only calls: *     CCF->CI(Buffer), CCF->CI(Packet), CCF->CI(Values), *Alloc, *Free,  *     IHXDataConvertResponse->* *     Context->Scheduler->*, *     CCF->CI(Mutex), Mutex->* *     Context->ErrorMessages * * XXXSMPNOW */#define HX_THREADSAFE_METHOD_CONVERT_DATA		0x00000040/* * IHXDataConvert::ConvertXXX()/CtrlBufferReady() only calls: *     CCF->CI(Buffer), CCF->CI(Packet), CCF->CI(Values), *Alloc, *Free,  *     IHXDataConvertResponse->* *     Context->Scheduler->*, *     CCF->CI(Mutex), Mutex->* *     Context->ErrorMessages * * XXXSMPNOW */#define HX_THREADSAFE_METHOD_CONVERT_CTRL_BUFFER_READY	0x00000080/* * IHXDataConvert::ConvertXXX()/CtrlBufferReady() only calls: *     CCF->CI(Buffer), CCF->CI(Packet), CCF->CI(Values), *Alloc, *Free,  *     IHXDataConvertResponse->* *     Context->Scheduler->*, *     CCF->CI(Mutex), Mutex->* *     Context->ErrorMessages * * XXXSMPNOW */#define HX_THREADSAFE_METHOD_SOCKET_READDONE 		0x00000100#define HX_THREADSAFE_METHOD_ALL 			(~0)/**************************************************************************** *  *  Interface: *  *	IHXThreadSafeMethods *  *  Purpose: *  *	XXXSMPNOW *  *  IID_IHXThreadSafeMethods: *  *	{00000115-0901-11d1-8B06-00A024406D59} *  */DEFINE_GUID(IID_IHXThreadSafeMethods, 0x00000115, 0x901, 0x11d1, 0x8b, 0x6, 0x0, 			0xa0, 0x24, 0x40, 0x6d, 0x59);#undef  INTERFACE#define INTERFACE   IHXThreadSafeMethodsDECLARE_INTERFACE_(IHXThreadSafeMethods, IUnknown){    /*     *	IUnknown methods     */    STDMETHOD(QueryInterface)		(THIS_					REFIID riid,					void** ppvObj) PURE;    STDMETHOD_(ULONG32,AddRef)		(THIS) PURE;    STDMETHOD_(ULONG32,Release)		(THIS) PURE;    /*     *	IHXThreadSafeMethods methods     */    /************************************************************************     *	Method:     *	    IHXThreadSafeMethods::IsThreadSafe     *	Purpose:     *	    XXXSMPNOW     */    STDMETHOD_(UINT32,IsThreadSafe)	    (THIS) PURE;};/**************************************************************************** *  *  Interface: *  *	IHXMutex *  *  Purpose: *  *	XXXSMPNOW *  *  IID_IHXMutex: *  *	{00000116-0901-11d1-8B06-00A024406D59} *  */DEFINE_GUID(IID_IHXMutex, 0x00000116, 0x901, 0x11d1, 0x8b, 0x6, 0x0, 			0xa0, 0x24, 0x40, 0x6d, 0x59);#undef  INTERFACE#define INTERFACE   IHXMutex/* *  The IHXCommonClassFactory supports creating an instance *  of this object. */#define CLSID_IHXMutex IID_IHXMutexDECLARE_INTERFACE_(IHXMutex, IUnknown){    /*     *	IUnknown methods     */    STDMETHOD(QueryInterface)		(THIS_					REFIID riid,					void** ppvObj) PURE;    STDMETHOD_(ULONG32,AddRef)		(THIS) PURE;    STDMETHOD_(ULONG32,Release)		(THIS) PURE;    /*     *	IHXMutex methods     */     /* XXXSMPNOW Comments */    STDMETHOD(Lock)	    (THIS) PURE;    STDMETHOD(TryLock)	    (THIS) PURE;    STDMETHOD(Unlock)	    (THIS) PURE;};// $Private:/**************************************************************************** *  *  Interface: *  *	IHXFastPathNetWrite *  *  Purpose: *  *	Private interface for high speed UDP output. *  *  IID_IHXFastPathNetWrite: *  *	{00000117-0901-11d1-8B06-00A024406D59} *  */DEFINE_GUID(IID_IHXFastPathNetWrite, 0x00000117, 0x901, 0x11d1, 0x8b, 0x6, 0x0, 			0xa0, 0x24, 0x40, 0x6d, 0x59);#undef  INTERFACE#define INTERFACE   IHXFastPathNetWriteDECLARE_INTERFACE_(IHXFastPathNetWrite, IUnknown){    /*     *  IUnknown methods     */    STDMETHOD(QueryInterface)		(THIS_					REFIID riid,					void** ppvObj) PURE;    STDMETHOD_(ULONG32,AddRef)		(THIS) PURE;    STDMETHOD_(ULONG32,Release)		(THIS) PURE;    /*     *	IHXFastPathNetWrite methods     *     */    STDMETHOD(FastWrite)	(THIS_				const UINT8* pBuffer, UINT32 ulLen) PURE;};/**************************************************************************** *  *  Interface: *  *	IHXWouldBlockResponse *  *  Purpose: *  *	Get notifications of EWOULDBLOCK conditions. *  *  IID_IHXWouldBlockResponse: *  *	{00000118-0901-11d1-8B06-00A024406D59} *  */DEFINE_GUID(IID_IHXWouldBlockResponse, 0x00000118, 0x901, 0x11d1, 0x8b, 0x6, 0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59);#undef  INTERFACE#define INTERFACE   IHXWouldBlockResponseDECLARE_INTERFACE_(IHXWouldBlockResponse, IUnknown){    /*     *  IUnknown methods     */    STDMETHOD(QueryInterface)		(THIS_					REFIID riid,					void** ppvObj) PURE;    STDMETHOD_(ULONG32,AddRef)		(THIS) PURE;    STDMETHOD_(ULONG32,Release)		(THIS) PURE;    /*     *	IHXWouldBlockResponse methods     *     */            /*     * WouldBlock     *     * Return HXR_OK to go into blocked mode, causing a future     * WouldBlockCleared call.  HXR_anythingelse to ignore.     */        STDMETHOD(WouldBlock)	(THIS_ UINT32 id) PURE;    STDMETHOD(WouldBlockCleared)(THIS_ UINT32 id) PURE;};/**************************************************************************** *  *  Interface: *  *	IHXWouldBlock *  *  Purpose: *  *	Notifier for EWOULDBLOCK conditions. *  *  IID_IHXWouldBlock: *  *	{00000119-0901-11d1-8B06-00A024406D59} *  */DEFINE_GUID(IID_IHXWouldBlock, 0x00000119, 0x901, 0x11d1, 0x8b, 0x6, 0x0, 			0xa0, 0x24, 0x40, 0x6d, 0x59);#undef  INTERFACE#define INTERFACE   IHXWouldBlockDECLARE_INTERFACE_(IHXWouldBlock, IUnknown){    /*     *  IUnknown methods     */    STDMETHOD(QueryInterface)		(THIS_					REFIID riid,					void** ppvObj) PURE;    STDMETHOD_(ULONG32,AddRef)		(THIS) PURE;    STDMETHOD_(ULONG32,Release)		(THIS) PURE;    /*     *	IHXWouldBlock methods     *     */        STDMETHOD(WantWouldBlock)	(THIS_	    			IHXWouldBlockResponse*, UINT32 id) PURE;};/**************************************************************************** * *  Interface: * *     IHXSharedUDPServices * *  Purpose: * *     Private interface for tying a UDP socket (via IHXUDPSocketContext) to *  a shared UDP resend port.  Used to send UDP packet resend requests to one *  shared UDP port per streamer. * *  IID_IHXSharedUDPServices * *     {00000123-0901-11d1-8B06-00A024406D59} * */DEFINE_GUID(IID_IHXSharedUDPServices, 0x00000124, 0x901, 0x11d1, 0x8b, 0x6, 0x0,                       0xa0, 0x24, 0x40, 0x6d, 0x59);#undef  INTERFACE#define INTERFACE   IHXSharedUDPServicesDECLARE_INTERFACE_(IHXSharedUDPServices, IUnknown){    /*     *  IUnknown methods     */    STDMETHOD(QueryInterface)          (THIS_                                       REFIID riid,                                       void** ppvObj) PURE;    STDMETHOD_(ULONG32,AddRef)         (THIS) PURE;    STDMETHOD_(ULONG32,Release)        (THIS) PURE;    /*     * IHXSharedUDPServices methods     */    STDMETHOD(RegisterSharedResponse)	(THIS_					 IHXUDPResponse* response,					 UINT16 sPortEnum) PURE;    STDMETHOD(UnregisterSharedResponse)	(THIS) PURE;    STDMETHOD_(UINT16, GetSharedPort)	(THIS) PURE;};/**************************************************************************** * *  Interface: * *     IHXThreadLocal * *  Purpose: * *     Thread-local information, namely the procnum. * *  IID_IHXThreadLocal * *     {00000125-0901-11d1-8B06-00A024406D59} * */DEFINE_GUID(IID_IHXThreadLocal, 0x00000125, 0x901, 0x11d1, 0x8b, 0x6, 0x0,                       0xa0, 0x24, 0x40, 0x6d, 0x59);#undef  INTERFACE#define INTERFACE   IHXThreadLocal#define CLSID_IHXThreadLocal IID_IHXThreadLocalDECLARE_INTERFACE_(IHXThreadLocal, IUnknown){    /*     *  IUnknown methods     */    STDMETHOD(QueryInterface)          (THIS_                                       REFIID riid,                                       void** ppvObj) PURE;    STDMETHOD_(ULONG32,AddRef)         (THIS) PURE;    STDMETHOD_(ULONG32,Release)        (THIS) PURE;    /*     * IHXThreadLocal methods     */    /*     *  IHXThreadLocal::GetMaxThreads()     *

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?