コード例 #1
0
        /// <summary>
        /// Adds a new stop.
        /// </summary>
        public uint Add(float latitude, float longitude, uint metaId)
        {
            var id = _nextId;

            _nextId++;

            var size = _data.Length;

            while ((id * SIZE + SIZE) > size)
            {
                size += BLOCK_SIZE;
            }
            if (size != _data.Length)
            {
                _data.Resize(size);
            }

            _data[id * SIZE + 0] = StopsDb.Encode(latitude);
            _data[id * SIZE + 1] = StopsDb.Encode(longitude);
            _data[id * SIZE + 2] = metaId;

            return(id);
        }