public bool FindIndexData(K key, out IndexFileData data) { if (m_IndexDataMap == null || m_IndexDataMap.Count <= 0) { data = new IndexFileData(); data.Offset = -1; data.Index = -1; data.Count = 0; return(false); } return(m_IndexDataMap.TryGetValue(key, out data)); }
private void LoadObjectIndex(ConfigFileHeader header, Stream stream) { var map = this.IndexDataMap; for (int i = 0; i < header.Count; ++i) { K key = ReadKey(stream); long offset = FilePathMgr.GetInstance().ReadLong(stream); int index = FilePathMgr.GetInstance().ReadInt(stream); IndexFileData data = new IndexFileData(); data.Index = index; data.Offset = offset; data.Count = 1; m_IndexDataMap[key] = data; } }
private void LoadMapIndex(ConfigFileHeader header, Stream stream) { for (int i = 0; i < header.Count; ++i) { K key = ReadKey(stream); long offset = FilePathMgr.GetInstance().ReadLong(stream); int cnt = FilePathMgr.GetInstance().ReadInt(stream); int index = FilePathMgr.GetInstance().ReadInt(stream); IndexFileData data = new IndexFileData(); data.Index = index; data.Offset = offset; data.Count = cnt; if (m_IndexDataMap == null) { m_IndexDataMap = new Dictionary <K, IndexFileData>(); } m_IndexDataMap[key] = data; } }