namespace XGame.Framework.Data
{
    /// <summary>
    /// 数据实例管理器
    /// </summary>
    public interface IDataModule
    {
        /// <summary>
        /// 返回指定类型的数据实例
        /// </summary>
        /// <typeparam name="TType"></typeparam>
        /// <returns></returns>
        TType GetOrAdd<TType>() where TType : class, IData, new();
        /// <summary>
        /// 移除
        /// </summary>
        /// <typeparam name="TType"></typeparam>
        void Remove<TType>() where TType : class, IData, new();
    }
}
