public void Open()
        {
            readingCache = new ReadingCache(indexFileName);

            int version = readingCache.ReadInt32();
            if (version != StreamSource.VERSION)
            {
                throw new NotSupportedException("The index file version is incorrect. Please check the file used is what you want or rebuild the index file.");
            }
        }
Beispiel #2
0
        public void Open()
        {
            readingCache = new ReadingCache(indexFileName);

            int version = readingCache.ReadInt32();

            if (version != StreamSource.VERSION)
            {
                throw new NotSupportedException("The index file version is incorrect. Please check the file used is what you want or rebuild the index file.");
            }
        }
Beispiel #3
0
        public IndexNode ReadIndexNode(int nodeIndex)
        {
            int indexOffset = nodeIndex * 8;

            readingCache.SeekForward(indexOffset);  // move the the position where record the position of adjacent ids.

            long recordPosition = readingCache.ReadLong();

            readingCache.Seek(recordPosition);

            IndexNode indexNode = new IndexNode(nodeIndex);

            int adjacentCount = readingCache.ReadInt32();

            for (int i = 0; i < adjacentCount; i++)
            {
                int   id   = readingCache.ReadInt32();
                float cost = readingCache.ReadFloat();
                indexNode.AdjacentNodes.Add(new IndexAdjacentNode(id, cost));
            }

            return(indexNode);
        }