public IList <T> GetArray <T>(string name) { DataArray array = GetSubtree(name); if (array == null) { return(null); } int count = array.GetValue <int>("count"); DataArray items = array.GetSubtree("data"); if (items == null) { return(null); } T[] ret = new T[count]; for (int i = 0; i < count; i++) { ret[i] = items.GetValue <T>(i); } return(ret); }
public static AudioFormat Create(Stream stream) { AudioFormat format = new AudioFormat(); DataArray data = DataArray.Create(stream); format.Mappings.AddRange(data.GetArray <Mapping>("mappings")); format.InitialOffset = data.GetValue <int>("offset"); return(format); }
public T GetValue <T>(string name, int index) { DataArray tree = GetSubtree(name, false); return(tree == null ? default(T) : tree.GetValue <T>(index)); }