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

📄 plghand2.h

📁 linux下的一款播放器
💻 H
📖 第 1 页 / 共 3 页
字号:
						    char* PropVal2, 						    char* PropName3, 						    char* PropVal3, 						    REF(UINT32) unIndex);    /************************************************************************     *	Method:     *	    IHXPlugin2Handler::FindReturnPluginUsingStrings     *     *	Purpose:         *	    Finds a plugin  which matches the set of values given. A Plugin     *	    instance is returned.      *	    NOTE: that a max of two values may be given.     */    STDMETHOD(FindPluginUsingStrings)		    (THIS_ char* PropName1, 						    char* PropVal1, 						    char* PropName2, 						    char* PropVal2, 						    char* PropName3, 						    char* PropVal3, 						    REF(IUnknown*) pUnk);    /************************************************************************     *	Method:     *	    IHXPlugin2Handler::FindImplementationFromClassID     *     *	Purpose:         *	    Finds a CommonClassFactory plugin which supports the      *	    ClassID given. An instance of the Class is returned.      */    STDMETHOD(FindImplementationFromClassID)    (	REFGUID GUIDClassID, 	REF(IUnknown*) pIUnknownInstance    );    /************************************************************************     *	Method:     *	    IHXPlugin2Handler::Close     *     *	Purpose:         *	    A function which performs all of the functions of delete.     *	         *     */        STDMETHOD(Close)		(THIS);     /************************************************************************     *	Method:     *	    IHXPlugin2Handler::SetRequiredPlugins     *     *	Purpose:         *	    This function sets the required plugin list     *	         *     */    STDMETHOD(SetRequiredPlugins) (THIS_ const char** ppszRequiredPlugins);    /************************************************************************     *	Method:     *	    IHXPlugin2HandlerEnumeratorInterface::GetNumPluginsSupporting     *     *	Purpose:    Required for the plugin enumerator.     *	         *	         *     */    STDMETHOD(GetNumPluginsSupporting) (THIS_ REFIID iid, REF(UINT32) nNumPlugins);    /************************************************************************     *	Method:     *	    IHXPlugin2HandlerEnumeratorInterface::GetPluginIndexSupportingIID     *     *	Purpose:    Required for the plugin enumerator.     *	         *	         *     */    STDMETHOD(GetPluginIndexSupportingIID) (THIS_ REFIID iid, UINT32 nPluginIndex, REF(UINT32) nIndexOut);    /************************************************************************     *	Method:     *	    IHXPlugin2HandlerEnumeratorInterface::AddSupportedIID     *     *	Purpose:    Required for the plugin enumerator.     *	         *	         *     */    STDMETHOD(AddSupportedIID) (THIS_ REFIID iid);    /************************************************************************     *	Method:     *	    IHXPluginHandler3::RegisterContext     *     *	Purpose:         *	    Sets up the context without loading any plugin info     *     */    STDMETHOD( RegisterContext )( THIS_ IUnknown* pContext );    /************************************************************************     *	Method:     *	    IHXPluginHandler3::AddPluginMountPoint     *     *	Purpose:         *     */    STDMETHOD( AddPluginMountPoint )( THIS_ const char* pName, UINT32 majorVersion,					    UINT32 minorVersion, IHXBuffer* pPath );    /************************************************************************     *	Method:     *	    IHXPluginHandler3::RefreshPluginMountPoint     *     *	Purpose:         *     */    STDMETHOD( RefreshPluginMountPoint )( THIS_ const char* pName );    /************************************************************************     *	Method:     *	    IHXPluginHandler3::RemovePluginMountPoint     *     *	Purpose:         *     */    STDMETHOD( RemovePluginMountPoint )( THIS_ const char* pName );    /************************************************************************     *	Method:     *	    IHXPluginHandler3::FindImplementationFromClassID     *     *	Purpose:         *	    Finds a CommonClassFactory plugin which supports the      *	    ClassID given. An instance of the Class is returned.      *	    The plugin instance is initialized with the specified      *	    context     */    STDMETHOD( FindImplementationFromClassID )( THIS_ REFGUID GUIDClassID, 		    REF(IUnknown*) pIUnknownInstance, IUnknown* pIUnkOuter, IUnknown* pContext );    /************************************************************************     *	Method:     *	    IHXPluginHandler3::FindCLSIDFromName     *     *	Purpose:         *     *	    Maps a text name to a CLSID based on information from      *	    component plugins     */    STDMETHOD( FindCLSIDFromName )( THIS_ const char* pName, REF(IHXBuffer*) pCLSID );    /************************************************************************     *	Method:     *	    IHXPluginHandler3::FindGroupOfPluginsUsingValues     *     *	Purpose:         *	    Builds a collection of plugins that match the criteria     *     */    STDMETHOD(FindGroupOfPluginsUsingValues)(THIS_ IHXValues* pValues, 				    REF(IHXPluginSearchEnumerator*) pIEnumerator);    /************************************************************************     *	Method:     *	    IHXPluginHandler3::FindGroupOfPluginsUsingStrings     *     *	Purpose:         *	    Builds a collection of plugins that match the criteria     *     */    STDMETHOD(FindGroupOfPluginsUsingStrings)(THIS_ char* PropName1, 				    char* PropVal1, 				    char* PropName2, 				    char* PropVal2, 				    char* PropName3, 				    char* PropVal3, 				    REF(IHXPluginSearchEnumerator*) pIEnumerator);    /************************************************************************     *	Method:     *	    IHXPluginHandler3::GetPlugin     *     *	Purpose:         *	    Allocates a plugin based on index.  Supports aggregation     *     */    STDMETHOD(GetPlugin)(THIS_ ULONG32 ulIndex,				    REF(IUnknown*) pIUnkResult,				    IUnknown* pIUnkOuter );    /************************************************************************     *	Method:     *	    IHXPluginHandler3::FindPluginUsingValues     *     *	Purpose:         *	    Allocates a plugin based on criteria.  Supports aggregation     *     */    STDMETHOD(FindPluginUsingValues)(THIS_ IHXValues*, 				    REF(IUnknown*) pIUnkResult, 				    IUnknown* pIUnkOuter );    /************************************************************************     *	Method:     *	    IHXPluginHandler3::FindPluginUsingStrings     *     *	Purpose:         *	    Allocates a plugin based on criteria.  Supports aggregation     *     */    STDMETHOD(FindPluginUsingStrings)(THIS_ char* PropName1, 				    char* PropVal1, 				    char* PropName2, 				    char* PropVal2, 				    char* PropName3, 				    char* PropVal3, 				    REF(IUnknown*) pIUnkResult, 				    IUnknown* pIUnkOuter );    /************************************************************************     *	Method:     *	    IHXPluginHandler3::UnloadPluginFromClassID     *     *	Purpose:         *	    Finds a plugin from the classID and unloads it if it supports CanUnload2	 *		and returns TRUE in response to query     */    STDMETHOD( UnloadPluginFromClassID )( THIS_ REFGUID GUIDClassID );    /************************************************************************     *	Method:     *	    IHXPluginHandler3::UnloadPackageByName     *     *	Purpose:         *	    finds a package from the name passed in and attempts to unload it.     */    STDMETHOD (UnloadPackageByName) (const char* pName);    //------------------------------------ IHXPluginDatabase interface methods    STDMETHOD( AddPluginIndex ) ( THIS_ const char* pKeyName, EPluginIndexType indexType, BOOL bScanExisting );    STDMETHOD( RemovePluginIndex )( THIS_ const char* pKeyName );    STDMETHOD( FindPluginInfoViaIndex )( THIS_ const char* pKeyName, const void* pValue, IHXValues** ppIInfo );    STDMETHOD( FindPluginSetViaIndex )( THIS_ const char* pKeyName, const void* pValue, IHXPluginSearchEnumerator** ppIEnumerator );    STDMETHOD( CreatePluginViaIndex )( THIS_ const char* pKeyName, const void* pValue, IUnknown** ppIUnkPlugin, IUnknown* pIUnkOuter );    //------------------------------------ Class Methods    Errors		    Stat(const char* pszFilename, struct stat* pStatBuffer);    IHXBuffer*		    ChecksumFile(char* pszFileName, IHXBuffer* pPathBuffer);    IHXBuffer*		    ConvertToAsciiString(char* pBuffer, UINT32 nBuffLen);    IHXBuffer*		    GetPluginDir();    IHXPreferences*	    GetPreferences();    CHXSimpleList&	    GetCanUnload2DllList() { return( m_CanUnload2DllList ); }    HX_RESULT		    FindGroupOfPluginsUsingStrings(char* PropName1, 						    char* PropVal1, 						    char* PropName2, 						    char* PropVal2, 						    char* PropName3, 						    char* PropVal3, 						    REF(CPluginEnumerator*) pEnumerator);    HX_RESULT		    FindGroupOfPluginsUsingValues(IHXValues* pValues, 						    REF(CPluginEnumerator*) pEnumerator);    void		    ReportError( UINT8 severity, const char* pDLLName, const char* pDesc );    static const char* const	zm_pszFileExtension;    static const char* const	zm_pszDirectorySeperator;    static const char* const	zm_pszValueSeperator;    static const char* const	zm_pszListStart;    static const char* const	zm_pszListEnd;    static const char* const	zm_pszValueSeperator2;    static const char   	zm_cDirectorySeperator;    static const char* const	zm_pszKeyNameRegKey;    static const char* const	zm_pszRegKeySeperator;#if !defined(HELIX_CONFIG_NOSTATICS)    static BOOL 		zm_bFasterPrefs;#else    static const BOOL 		zm_bFasterPrefs;#endif    HX_RESULT AddtoLRU(Plugin2Handler::PluginDLL* pDLL);    HX_RESULT RemoveFromLRU(Plugin2Handler::PluginDLL* pDLL);    HX_RESULT UpdateCache();    HX_RESULT ReloadPluginsNoPropagate();    HX_RESULT ReloadPluginsNoPropagate( PluginMountPoint* pMountPoint );private:     static HX_RESULT VerifyChecksum_ (const char*);    void UnloadDeadDLLs(void);    IHXScheduler*  m_pIScheduler;    CallbackHandle  m_hScheduler;    enum    {//	kPingDuration = 1000	// USE ONLY FOR TESTING	kPingDuration = 60000	// 60000ms = 1 minute    };    IHXBuffer*		    GetDefaultPluginDir();    void		    WriteSupportedGUIDs();    HX_RESULT		    ConnectPluginToDLL(Plugin2Handler::Plugin * pPlugin);    Errors		    LoadDLL(char* pszDllName, PluginMountPoint* pMountPoint);    void		    LoadPluginsFromComponentDLL( Plugin2Handler::PluginDLL* pPluginDll, 							IHXComponentPlugin* pIIterator );    // Methods to determine out of data DLLs    BOOL		    FindPlugin(const char* pFileName, UINT32 nDLLIndex, REF(UINT32) nIndex);    HX_RESULT		    AddToValues(IHXValues*, char* pPropName, char* pPropVal, eValueTypes eValueType);    UINT32		    GetNumSupportedGUIDs();    HX_RESULT		    RemoveDLLFromGUIDSupportLists(const char* pszFileName);    HX_RESULT		    GetGUIDForIndex(UINT32 nIndex, REF(CHXString) sGUID);    HX_RESULT		    AddSupportForGUID(const char* pszGUID, PluginDLL* pDLL, UINT32 nIndexInDLL);    BOOL		    GetPluginFileInfo( REF(char*) pszCurrentPos, 					       REF(char*) pszName, 					       REF(char*) pszCheckSum, 					       REF(BOOL) bFactory, 					       REF(int) nDLLSize, 					       REF(int) nNumberPlugins);    BOOL		    GetNameValuePair(REF(char*) pszCurrentPos, REF(char*) pszName, REF(char*) pszValue);    BOOL		    GetPluginFileInfo(REF(char*) pszCurrentPos, REF(Plugin2Handler::Plugin*) pPlugin);    BOOL		    GetNextSupportingFile(REF(char*) pszCurrentPos, REF(char*) pszFileName, REF(UINT32) index);    BOOL		    GetGUIDInfo(REF(char*) pszCurrentPos, PluginMountPoint* pMountPoint, REF(char*) pszGUID, REF(CHXSimpleList*) pList);

⌨️ 快捷键说明

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