using System;
using System.Collections.Generic;
using IFramework;
namespace IFramework
{
///
/// 环境
///
public interface IEnvironment: IDisposable
{
///
/// 环境类型
///
EnvironmentType envType { get; }
///
/// 是否初始化完成
///
bool inited { get; }
///
/// 模块容器
///
IModules modules { get; }
///
/// 时间
///
ITimeCalculator time { get; }
///
/// 绑定 Dispose
///
///
void BindDispose(Action action);
///
/// 绑定 Update
///
///
void BindUpdate(Action action);
///
/// 初始化
///
///
void Init(IEnumerable types);
///
/// 初始化
///
void InitWithAttribute();
///
/// 解绑 Dispose
///
///
void UnBindDispose(Action action);
///
/// 解绑 Update
///
///
void UnBindUpdate(Action action);
///
/// 刷新
///
void Update();
///
/// 等待环境刷新
///
///
void WaitEnvironmentFrame(Action action);
}
}