public void LoadFrom(Stream stream) { BinaryReader reader = new BinaryReader(stream); m_Name = reader.ReadNameA4(); int numObjects = reader.ReadInt32(); m_PreloadTable = new List <PPtr <Object> >(numObjects); for (int i = 0; i < numObjects; i++) { PPtr <Object> objPtr = new PPtr <Object>(stream); if (objPtr.m_FileID == 0) { Component comp = file.FindComponent(objPtr.m_PathID, false); if (comp == null) { comp = new NotLoaded(file, objPtr.m_PathID, 0, 0); } objPtr = new PPtr <Object>(comp); } m_PreloadTable.Add(objPtr); } int numContainerEntries = reader.ReadInt32(); m_Container = new List <KeyValuePair <string, AssetInfo> >(numContainerEntries); for (int i = 0; i < numContainerEntries; i++) { m_Container.Add ( new KeyValuePair <string, AssetInfo> ( reader.ReadNameA4(), new AssetInfo(file, stream) ) ); } m_MainAsset = new AssetInfo(file, stream); int numScriptComps = reader.ReadInt32(); m_ScriptCompatibility = new AssetBundleScriptInfo[numScriptComps]; for (int i = 0; i < numScriptComps; i++) { m_ScriptCompatibility[i] = new AssetBundleScriptInfo(stream); } int numClassComps = reader.ReadInt32(); m_ClassCompatibility = new KeyValuePair <int, uint> [numClassComps]; for (int i = 0; i < numClassComps; i++) { m_ClassCompatibility[i] = new KeyValuePair <int, uint> ( reader.ReadInt32(), reader.ReadUInt32() ); } m_RuntimeCompatibility = reader.ReadUInt32(); }
public void LoadFrom(Stream stream) { BinaryReader reader = new BinaryReader(stream); m_Name = reader.ReadNameA4(); int numObjects = reader.ReadInt32(); m_PreloadTable = new List<PPtr<Object>>(numObjects); for (int i = 0; i < numObjects; i++) { PPtr<Object> objPtr = new PPtr<Object>(stream); if (objPtr.m_FileID == 0) { Component comp = file.FindComponent(objPtr.m_PathID, false); if (comp == null) { comp = new NotLoaded(file, objPtr.m_PathID, 0, 0); } objPtr = new PPtr<Object>(comp); } m_PreloadTable.Add(objPtr); } int numContainerEntries = reader.ReadInt32(); m_Container = new List<KeyValuePair<string, AssetInfo>>(numContainerEntries); for (int i = 0; i < numContainerEntries; i++) { m_Container.Add ( new KeyValuePair<string, AssetInfo> ( reader.ReadNameA4(), new AssetInfo(file, stream) ) ); } m_MainAsset = new AssetInfo(file, stream); int numScriptComps = reader.ReadInt32(); m_ScriptCompatibility = new AssetBundleScriptInfo[numScriptComps]; for (int i = 0; i < numScriptComps; i++) { m_ScriptCompatibility[i] = new AssetBundleScriptInfo(stream); } int numClassComps = reader.ReadInt32(); m_ClassCompatibility = new KeyValuePair<int, uint>[numClassComps]; for (int i = 0; i < numClassComps; i++) { m_ClassCompatibility[i] = new KeyValuePair<int, uint> ( reader.ReadInt32(), reader.ReadUInt32() ); } m_RuntimeCompatibility = reader.ReadUInt32(); }