54 lines
1.3 KiB
C#
54 lines
1.3 KiB
C#
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using XED.Util;
|
|
|
|
namespace XED.Repositories
|
|
{
|
|
public class CustomAssetDataRepository
|
|
{
|
|
List<CustomAssetData> assetDatas = new List<CustomAssetData>();
|
|
|
|
public bool isEmpty => assetDatas.Count == 0;
|
|
|
|
public void Add(CustomAssetData data)
|
|
{
|
|
assetDatas.Add(data);
|
|
}
|
|
|
|
public bool TryGetDataFromPath(string path, out CustomAssetData data)
|
|
{
|
|
data = FindFromPath(path);
|
|
return data != null;
|
|
}
|
|
|
|
public CustomAssetData FindFromPath(string path)
|
|
{
|
|
if(path==null)
|
|
return null;
|
|
|
|
return assetDatas.Find(data => data.localFBXPath == path);
|
|
}
|
|
|
|
internal void Remove(CustomAssetData assetData)
|
|
{
|
|
assetDatas.Remove(assetData);
|
|
}
|
|
|
|
internal bool TryGetDataFromName(string name, out CustomAssetData p)
|
|
{
|
|
p = FindFromName(name);
|
|
return p != null;
|
|
}
|
|
|
|
private CustomAssetData FindFromName(string name)
|
|
{
|
|
return assetDatas.Find(data => data.assetName == name);
|
|
}
|
|
|
|
internal void AddRange(List<CustomAssetData> assetDatas)
|
|
{
|
|
this.assetDatas.AddRange(assetDatas);
|
|
}
|
|
}
|
|
} |