/// <summary> /// 加载配置文件 /// </summary> private static void LoadSettingData() { _setting = EditorHelper.LoadSettingData <AssetBundleCollectorSetting>(); // IPackRule { // 清空缓存集合 _cachePackRuleTypes.Clear(); _cachePackRuleInstance.Clear(); // 获取所有类型 List <Type> types = new List <Type>(100) { typeof(PackSeparately), typeof(PackDirectory), typeof(PackTopDirectory), typeof(PackCollector), typeof(PackGroup), typeof(PackRawFile), }; var customTypes = EditorTools.GetAssignableTypes(typeof(IPackRule)); types.AddRange(customTypes); for (int i = 0; i < types.Count; i++) { Type type = types[i]; if (_cachePackRuleTypes.ContainsKey(type.Name) == false) { _cachePackRuleTypes.Add(type.Name, type); } } } // IFilterRule { // 清空缓存集合 _cacheFilterRuleTypes.Clear(); _cacheFilterRuleInstance.Clear(); // 获取所有类型 List <Type> types = new List <Type>(100) { typeof(CollectAll), typeof(CollectScene), typeof(CollectPrefab), typeof(CollectSprite) }; var customTypes = EditorTools.GetAssignableTypes(typeof(IFilterRule)); types.AddRange(customTypes); for (int i = 0; i < types.Count; i++) { Type type = types[i]; if (_cacheFilterRuleTypes.ContainsKey(type.Name) == false) { _cacheFilterRuleTypes.Add(type.Name, type); } } } // IAddressRule { // 清空缓存集合 _cacheAddressRuleTypes.Clear(); _cacheAddressRuleInstance.Clear(); // 获取所有类型 List <Type> types = new List <Type>(100) { typeof(AddressByFileName), typeof(AddressByCollectorAndFileName), typeof(AddressByGroupAndFileName) }; var customTypes = EditorTools.GetAssignableTypes(typeof(IAddressRule)); types.AddRange(customTypes); for (int i = 0; i < types.Count; i++) { Type type = types[i]; if (_cacheAddressRuleTypes.ContainsKey(type.Name) == false) { _cacheAddressRuleTypes.Add(type.Name, type); } } } }
private List <Type> GetEncryptionServicesClassTypes() { return(EditorTools.GetAssignableTypes(typeof(IEncryptionServices))); }