⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 hxengin.h

📁 linux下的一款播放器
💻 H
📖 第 1 页 / 共 5 页
字号:
 *  *  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()     *     *  Maximum number of threads on the system (MAX_THREADS on server)     */    STDMETHOD_(int, GetMaxThreads)	(THIS) PURE;    /*     *  IHXThreadLocal::GetThreadNumber()     *     *  This thread's number (< MAX_THREADS)     */    STDMETHOD_(int, GetThreadNumber)	(THIS) PURE;};/**************************************************************************** * *  Interface: * *     IHXMemoryServices * *  Purpose: * *     Exposes server memory functions * *  IID_IHXMemoryServices * *     {00000126-0901-11d1-8B06-00A024406D59} * */DEFINE_GUID(IID_IHXMemoryServices, 0x00000126, 0x901, 0x11d1, 0x8b, 0x6, 0x0,                       0xa0, 0x24, 0x40, 0x6d, 0x59);#undef  INTERFACE#define INTERFACE   IHXMemoryServices#define CLSID_IHXMemoryServices IID_IHXMemoryServicesDECLARE_INTERFACE_(IHXMemoryServices, IUnknown){    /*     *  IUnknown methods     */    STDMETHOD(QueryInterface)          (THIS_                                       REFIID riid,                                       void** ppvObj) PURE;    STDMETHOD_(ULONG32,AddRef)         (THIS) PURE;    STDMETHOD_(ULONG32,Release)        (THIS) PURE;    /*     * IHXMemoryServices methods     */    /*     *  IHXMemoryServices::ValidateMemory()     *     *  Make consistency checks on the server shared memory space.     *     * lStartPage, lPages     *     * Specifies a page range to allow smaller searches, if you have a      * repro case and want to fail as soon as possible after the scribble.     * Use lPages == 0 to check to the last page.  (Pages in the shared     * space are numbered starting from zero.  You can decide on a range     * based on the printout of previous errors.)     *     * ulFlags     *     * 0x00000001	fail -- abort() -- on finding an error.     * 0x00000002	do rudimentary checks on internal SharedMemory data arrays.     *     */    STDMETHOD(ValidateMemory)		(THIS_					 INT32 lStartPage, 					 INT32 lPages, 					 UINT32 ulFlags) PURE;};typedef enum _HX_PRIVATE_SOCKET_OPTION{    HX_PRIVATE_SOCKOPT_IGNORE_WSAECONNRESET} HX_PRIVATE_SOCKET_OPTION;/**************************************************************************** *  *  Interface: *  *	IHXSetPrivateSocketOption *  *  Purpose: *  *	Set private sockt option *  *  IID_IHXSetPrivateSocketOption: * *     {00000127-0901-11d1-8B06-00A024406D59} *  */DEFINE_GUID(IID_IHXSetPrivateSocketOption,     0x00000127, 0x901, 0x11d1, 0x8b, 0x6, 0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59); #undef  INTERFACE#define INTERFACE   IHXSetPrivateSocketOptionDECLARE_INTERFACE_(IHXSetPrivateSocketOption, IUnknown){    /*     *  IUnknown methods     */    STDMETHOD(QueryInterface)		(THIS_					REFIID riid,					void** ppvObj) PURE;    STDMETHOD_(ULONG32,AddRef)		(THIS) PURE;    STDMETHOD_(ULONG32,Release)		(THIS) PURE;    /*     *	IHXSetPrivateSocketOption methods     */    STDMETHOD(SetOption)		(THIS_ 					 HX_PRIVATE_SOCKET_OPTION option,					 UINT32 ulValue) PURE;					 };/**************************************************************************** *  *  Interface: *  *	IHXNetInterfaces *  *  Purpose: *  *	Network Interfaces *  *  IID_IHXNetInterfaces: * *     {00000128-0901-11d1-8B06-00A024406D59} *  */typedef enum{    UNKNOWN,    LOOPBACK,    POINTTOPOINT,    BROADCAST} NIType;typedef struct _NIInfo{    NIType	type;    BOOL	bActive;    UINT32	ulNetAddress;    UINT32	ulNetMask;} NIInfo;DEFINE_GUID(IID_IHXNetInterfaces,     0x00000128, 0x901, 0x11d1, 0x8b, 0x6, 0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59); #undef  INTERFACE#define INTERFACE   IHXNetInterfacesDECLARE_INTERFACE_(IHXNetInterfaces, IUnknown){    /*     *  IUnknown methods     */    STDMETHOD(QueryInterface)		(THIS_					REFIID riid,					void** ppvObj) PURE;    STDMETHOD_(ULONG32,AddRef)		(THIS) PURE;    STDMETHOD_(ULONG32,Release)		(THIS) PURE;    /*     *	IHXNetworkInterfaces methods     */    STDMETHOD(UpdateNetInterfaces)		(THIS) PURE;    STDMETHOD_(UINT32, GetNumOfNetInterfaces)	(THIS) PURE;    STDMETHOD(GetNetInterfaces)			(THIS_						UINT16		lIndex,						REF(NIInfo*)	pNIInfo) PURE;    STDMETHOD(AddAdviseSink)			(THIS_						IHXNetInterfacesAdviseSink* pSink) PURE;    STDMETHOD(RemoveAdviseSink)			(THIS_						IHXNetInterfacesAdviseSink* pSink) PURE;};/**************************************************************************** *  *  Interface: *  *	IHXNetInterfacesAdviseSink *  *  Purpose: *  *	Network Interfaces Advise Sink *  *  IID_IHXNetInterfaces: * *     {00000129-0901-11d1-8B06-00A024406D59} *  */DEFINE_GUID(IID_IHXNetInterfacesAdviseSink,     0x00000129, 0x901, 0x11d1, 0x8b, 0x6, 0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59); #undef  INTERFACE#define INTERFACE   IHXNetInterfacesAdviseSinkDECLARE_INTERFACE_(IHXNetInterfacesAdviseSink, IUnknown){    /*     *  IUnknown methods     */    STDMETHOD(QueryInterface)		(THIS_					REFIID riid,					void** ppvObj) PURE;    STDMETHOD_(ULONG32,AddRef)		(THIS) PURE;    STDMETHOD_(ULONG32,Release)		(THIS) PURE;    /*     *	IHXNetInterfacesAdviseSink methods     */    STDMETHOD(NetInterfacesUpdated)	(THIS) PURE;};// $EndPrivate./**************************************************************************** *  *  Interface: *  *	IHXNetworkInterfaceEnumerator *  *  Purpose: *  *	Enumerate interfaces on a box. *  *  IID_IHXNetworkInterfaceEnumerator; *  *	{00000121-0901-11d1-8B06-00A024406D59} *  */DEFINE_GUID(IID_IHXNetworkInterfaceEnumerator, 0x00000121, 0x901, 0x11d1, 0x8b, 0x6, 0x0, 			0xa0, 0x24, 0x40, 0x6d, 0x59);#undef  INTERFACE#define INTERFACE   IHXNetworkInterfaceEnumeratorDECLARE_INTERFACE_(IHXNetworkInterfaceEnumerator, IUnknown){    /*     *  IUnknown methods     */    STDMETHOD(QueryInterface)		(THIS_					REFIID riid,					void** ppvObj) PURE;    STDMETHOD_(ULONG32,AddRef)		(THIS) PURE;    STDMETHOD_(ULONG32,Release)		(THIS) PURE;    /************************************************************************     *	Method:     *	    IHXNetworkInterfaceEnumerator::EnumerateInterfaces     *	Purpose:     *	    returns a list of local interfaces     *	Usage:     *	    If a buffer passed in is too small, it will return      *	    HXR_BUFFERTOOSMALL with ulNumInterfaces updated.     */    STDMETHOD(EnumerateInterfaces)	(THIS_	REF(UINT32*) pulInterfaces, REF(UINT32) ulNumInterfaces) PURE;};/**************************************************************************** *  *  Interface: *  *	IHXUDPConnectedSocket *  *  Purpose: *  *	Connect and disconnect a UDP socket *  *  IID_IHXUDPConnectedSocket; *  *	{0000012A-0901-11d1-8B06-00A024406D59} *  */DEFINE_GUID(IID_IHXUDPConnectedSocket, 0x0000012a, 0x901, 0x11d1, 0x8b, 0x6, 0x0, 			0xa0, 0x24, 0x40, 0x6d, 0x59);#undef  INTERFACE#define INTERFACE   IHXUDPConnectedSocketDECLARE_INTERFACE_(IHXUDPConnectedSocket, IUnknown){    /*     *  IUnknown methods     */    STDMETHOD(QueryInterface)		(THIS_					REFIID riid,					void** ppvObj) PURE;    STDMETHOD_(ULONG32,AddRef)		(THIS) PURE;    STDMETHOD_(ULONG32,Release)		(THIS) PURE;    /************************************************************************     *	Method:     *	    IHXUDPConnectedSocket::UDPConnect     *	Purpose:     *	    Connect the udp socket     *	Usage:     *	    Connect to the foreign addr and port the socket already knows     *      about; this is implementation-dependent.     */    STDMETHOD(UDPConnect)	(THIS) PURE;    /************************************************************************     *	Method:     *	    IHXUDPConnectedSocket::UDPConnect(ULONG32 ulAddr, UINT16 nPort);     *	Purpose:     *	    Connect the udp socket     *	Usage:     *	    Specify the host-ordered foreign addr and port to connect to.     */    STDMETHOD(UDPConnect)	(THIS_	ULONG32 ulAddr, UINT16 nPort) PURE;    /************************************************************************     *	Method:     *	    IHXUDPConnectedSocket::UDPDisconnect     *	Purpose:     *	    Disconnect the udp socket     */    STDMETHOD(UDPDisconnect) (THIS) PURE;    /************************************************************************     *	Method:     *	    IHXUDPConnectedSocket::IsUDPConnected     *	Purpose:     *	    Return whether the socket is connected.     */    STDMETHOD_(BOOL, IsUDPConnected) (THIS) PURE;    /************************************************************************     *	Method:     *	    IHXUDPConnectedSocket::IsUDPConnected(REF(ULONG32) ulAddr,      *                                            REF(UINT16) nPort)     *	Purpose:     *	    Return whether the socket is connected, and the connected addr/port.     *	Usage:     *      Return the foreign addr/port the socket knows about, regardless of     *      whether it's connected.  This is the foreign addr that is connected     *      to (if TRUE) or that will be used if Connect(void) called (if FALSE).     */    STDMETHOD_(BOOL, IsUDPConnected) (THIS_ REF(ULONG32) ulAddr,                                             REF(UINT16) nPort) PURE;};#endif /* _HXENGIN_H_ */

⌨️ 快捷键说明

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