123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160 |
- //------------------------------------------------------------
- // Game Framework
- // Copyright © 2013-2021 loyalsoft. All rights reserved.
- // Homepage: http://www.game7000.com/
- // Feedback: http://www.game7000.com/
- //------------------------------------------------------------
- using GameFramework.Resource;
- namespace GameFramework.Config
- {
- /// <summary>
- /// 全局配置管理器接口。
- /// </summary>
- public interface IConfigManager : IDataProvider<IConfigManager>
- {
- /// <summary>
- /// 获取全局配置项数量。
- /// </summary>
- int Count
- {
- get;
- }
- /// <summary>
- /// 获取缓冲二进制流的大小。
- /// </summary>
- int CachedBytesSize
- {
- get;
- }
- /// <summary>
- /// 设置资源管理器。
- /// </summary>
- /// <param name="resourceManager">资源管理器。</param>
- void SetResourceManager(IResourceManager resourceManager);
- /// <summary>
- /// 设置全局配置数据提供者辅助器。
- /// </summary>
- /// <param name="dataProviderHelper">全局配置数据提供者辅助器。</param>
- void SetDataProviderHelper(IDataProviderHelper<IConfigManager> dataProviderHelper);
- /// <summary>
- /// 设置全局配置辅助器。
- /// </summary>
- /// <param name="configHelper">全局配置辅助器。</param>
- void SetConfigHelper(IConfigHelper configHelper);
- /// <summary>
- /// 确保二进制流缓存分配足够大小的内存并缓存。
- /// </summary>
- /// <param name="ensureSize">要确保二进制流缓存分配内存的大小。</param>
- void EnsureCachedBytesSize(int ensureSize);
- /// <summary>
- /// 释放缓存的二进制流。
- /// </summary>
- void FreeCachedBytes();
- /// <summary>
- /// 检查是否存在指定全局配置项。
- /// </summary>
- /// <param name="configName">要检查全局配置项的名称。</param>
- /// <returns>指定的全局配置项是否存在。</returns>
- bool HasConfig(string configName);
- /// <summary>
- /// 从指定全局配置项中读取布尔值。
- /// </summary>
- /// <param name="configName">要获取全局配置项的名称。</param>
- /// <returns>读取的布尔值。</returns>
- bool GetBool(string configName);
- /// <summary>
- /// 从指定全局配置项中读取布尔值。
- /// </summary>
- /// <param name="configName">要获取全局配置项的名称。</param>
- /// <param name="defaultValue">当指定的全局配置项不存在时,返回此默认值。</param>
- /// <returns>读取的布尔值。</returns>
- bool GetBool(string configName, bool defaultValue);
- /// <summary>
- /// 从指定全局配置项中读取整数值。
- /// </summary>
- /// <param name="configName">要获取全局配置项的名称。</param>
- /// <returns>读取的整数值。</returns>
- int GetInt(string configName);
- /// <summary>
- /// 从指定全局配置项中读取整数值。
- /// </summary>
- /// <param name="configName">要获取全局配置项的名称。</param>
- /// <param name="defaultValue">当指定的全局配置项不存在时,返回此默认值。</param>
- /// <returns>读取的整数值。</returns>
- int GetInt(string configName, int defaultValue);
- /// <summary>
- /// 从指定全局配置项中读取浮点数值。
- /// </summary>
- /// <param name="configName">要获取全局配置项的名称。</param>
- /// <returns>读取的浮点数值。</returns>
- float GetFloat(string configName);
- /// <summary>
- /// 从指定全局配置项中读取浮点数值。
- /// </summary>
- /// <param name="configName">要获取全局配置项的名称。</param>
- /// <param name="defaultValue">当指定的全局配置项不存在时,返回此默认值。</param>
- /// <returns>读取的浮点数值。</returns>
- float GetFloat(string configName, float defaultValue);
- /// <summary>
- /// 从指定全局配置项中读取字符串值。
- /// </summary>
- /// <param name="configName">要获取全局配置项的名称。</param>
- /// <returns>读取的字符串值。</returns>
- string GetString(string configName);
- /// <summary>
- /// 从指定全局配置项中读取字符串值。
- /// </summary>
- /// <param name="configName">要获取全局配置项的名称。</param>
- /// <param name="defaultValue">当指定的全局配置项不存在时,返回此默认值。</param>
- /// <returns>读取的字符串值。</returns>
- string GetString(string configName, string defaultValue);
- /// <summary>
- /// 增加指定全局配置项。
- /// </summary>
- /// <param name="configName">要增加全局配置项的名称。</param>
- /// <param name="configValue">全局配置项的值。</param>
- /// <returns>是否增加全局配置项成功。</returns>
- bool AddConfig(string configName, string configValue);
- /// <summary>
- /// 增加指定全局配置项。
- /// </summary>
- /// <param name="configName">要增加全局配置项的名称。</param>
- /// <param name="boolValue">全局配置项布尔值。</param>
- /// <param name="intValue">全局配置项整数值。</param>
- /// <param name="floatValue">全局配置项浮点数值。</param>
- /// <param name="stringValue">全局配置项字符串值。</param>
- /// <returns>是否增加全局配置项成功。</returns>
- bool AddConfig(string configName, bool boolValue, int intValue, float floatValue, string stringValue);
- /// <summary>
- /// 移除指定全局配置项。
- /// </summary>
- /// <param name="configName">要移除全局配置项的名称。</param>
- /// <returns>是否移除全局配置项成功。</returns>
- bool RemoveConfig(string configName);
- /// <summary>
- /// 清空所有全局配置项。
- /// </summary>
- void RemoveAllConfigs();
- }
- }
|