插件加载模式和加载阶段

加载模式

namespace EHostType
{
	enum Type
	{
		//在所有目标(程序除外)上加载。
		Runtime,
		
		//在所有目标上加载,除程序和命令行外。
		RuntimeNoCommandlet,
		
		//在所有目标上加载,包括受支持的程序。
		RuntimeAndProgram,
		
		//仅加载cooked资源。
		CookedOnly,

		//仅加载uncooked资源。
		UncookedOnly,

		//已废弃
		Developer,

		//加载启用了bBuildDeveloperTools的任何目标。
		DeveloperTool,

		//仅在编辑器启动时加载。
		Editor,
		
		//仅在编辑器启动时加载,而不加载命令行。
		EditorNoCommandlet,

		//仅在编辑器和目标程序上加载。
		EditorAndProgram,

		//仅加载目标程序。
		Program,
		
		//加载除专用客户端之外的所有目标。
		ServerOnly,
		
		//加载除专用服务器之外的所有目标。
		ClientOnly,

		//在编辑器和客户端中加载,但加载命令行。
		ClientOnlyNoCommandlet,
		
		//注意:如果添加一个新值,请确保更新下面的ToString()方法!
		Max
	};
         /**
	 * Converts a string to a EHostType::Type value
	 *
	 * @param	The string to convert to a value
	 * @return	The corresponding value, or 'Max' if the string is not valid.
	 */
	PROJECTS_API EHostType::Type FromString( const TCHAR *Text );

	/**
	 * Converts an EHostType::Type value to a string literal
	 *
	 * @param	The value to convert to a string
	 * @return	The string representation of this enum value
	 */
	PROJECTS_API const TCHAR* ToString( const EHostType::Type Value );
};

加载阶段

namespace ELoadingPhase
{
	enum Type
	{
                //尽可能快——换句话说,uplugin文件可以从pak文件中加载(如果没有使用pak文件,也可以在PlatformFile设置后加载),用于需要读取文件的插件(压缩格式等)
		EarliestPossible,

                //在引擎完全初始化之前加载,在配置系统初始化之后立即加载。
		PostConfigInit,

		//系统启动画面后呈现的第一个画面
		PostSplashScreen,

		//在coreUObject之前加载,用于设置手动加载屏幕,用于修补系统
		PreEarlyLoadingScreen,

                //在引擎完全初始化之前加载
		PreLoadingScreen,
                
                //在默认阶段之前
		PreDefault,

                //启动时(加载游戏模块后引擎init)在默认加载点加载。
		Default,

                //在默认阶段之后
		PostDefault,

                //在引擎被初始化之后
		PostEngineInit,

                //不自动加载此模块
		None,

		//注意:如果添加一个新值,请确保更新下面的ToString()方法!
		Max
	};
	/**
	 * Converts a string to a ELoadingPhase::Type value
	 *
	 * @param	The string to convert to a value
	 * @return	The corresponding value, or 'Max' if the string is not valid.
	 */
	PROJECTS_API ELoadingPhase::Type FromString( const TCHAR *Text );

	/**
	 * Returns the name of a module load phase.
	 *
	 * @param	The value to convert to a string
	 * @return	The string representation of this enum value
	 */
	PROJECTS_API const TCHAR* ToString( const ELoadingPhase::Type Value );
};
posted @ 2020-08-08 22:55  CodeWithMe  阅读(843)  评论(0)    收藏  举报