public Type GetType(UInt64 id) { UInt32 id1 = (UInt32)(id >> 32); UInt32 id2 = (UInt32)id; BSAssembly ass = m_lstAssembly[(int)id1]; return(ass.GetType((int)id2)); }
public UInt64 SetType(Type type) { Assembly ass = type.Assembly; Int32 id1 = m_lstAssembly.FindIndex(x => x.MyAssembly == ass); BSAssembly myAss = null; if (id1 < 0) { myAss = new BSAssembly(ass); m_lstAssembly.Add(myAss); id1 = m_lstAssembly.Count - 1; } int id2 = myAss.SetType(type); UInt64 id = (UInt32)id1; return((id << 32) | (UInt32)id2); }
public void LoadXml(XmlElement node) { try { Int32 count = Int32.Parse(node.GetAttribute("count")); m_lstAssembly.Clear(); m_lstAssembly.Capacity = count; XmlNodeList list = node.ChildNodes; BSAssembly ass = null; foreach (XmlElement one in list) { ass = new BSAssembly(); ass.LoadXml(one); } } catch (System.Exception) { } }