12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
-
- namespace SC.XR.Unity {
- public enum SCModulePriority {
- High,
- Middle,
- Low,
- }
- public interface ISCModule : ISCLifeCycle {
- string ModuleName { get; set; }
- ISCModule FatherModule { get; set; }
- bool IsModuleInit { get; set; }
-
- bool IsModuleStarted { get; set; }
- bool IsMono { get; set; }
- bool IsEffectGameObject { get; set; }
- SCModulePriority Priority { get; set; }
- T GetSubModule<T>() where T : ISCModule;
- T GetFatherModule<T>() where T : ISCModule;
- /// <summary>
- /// 模块初始化
- /// </summary>
- void ModuleInit(bool isEffectGameObject = true,SCModulePriority priority = SCModulePriority.Middle);
- //void ModuleEnable();
- /// <summary>
- /// 模块启动,同Mono OnEnable
- /// </summary>
- void ModuleStart();
- void ModuleUpdate();
- void ModuleLateUpdate();
- void ModuleEndOfFrame();
- /// <summary>
- /// 模块停止,同Mono OnDisable
- /// </summary>
- void ModuleStop();
- /// <summary>
- /// 模块销毁
- /// </summary>
- void ModuleDestroy();
- }
- }
|