[feature] Added RouteRelation and linked it with FeatureType.

Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
This commit is contained in:
Viktor Govako
2025-06-25 23:58:19 -03:00
committed by Konstantin Pastbin
parent 315bba2a22
commit b85c11ea5a
26 changed files with 336 additions and 63 deletions

View File

@@ -2,6 +2,7 @@
#include "indexer/dat_section_header.hpp"
#include "indexer/data_header.hpp"
#include "indexer/route_relation.hpp"
#include "coding/files_container.hpp"
#include "coding/geometry_coding.hpp"
@@ -15,6 +16,8 @@ class MetadataDeserializer;
namespace feature
{
class FeaturesOffsetsTable;
// This info is created once per FeaturesVector.
class SharedLoadInfo
{
@@ -22,12 +25,14 @@ public:
using Reader = FilesContainerR::TReader;
SharedLoadInfo(FilesContainerR const & cont, DataHeader const & header,
indexer::MetadataDeserializer * metaDeserializer);
feature::FeaturesOffsetsTable const * relTable, indexer::MetadataDeserializer * metaDeserializer);
Reader GetDataReader() const;
Reader GetGeometryReader(size_t ind) const;
Reader GetTrianglesReader(size_t ind) const;
RouteRelationBase ReadRelation(uint32_t id) const;
serial::GeometryCodingParams const & GetDefGeometryCodingParams() const
{
return m_header.GetDefGeometryCodingParams();
@@ -47,6 +52,7 @@ private:
DataHeader const & m_header;
public:
feature::FeaturesOffsetsTable const * m_relTable;
indexer::MetadataDeserializer * m_metaDeserializer;
feature::DatSectionHeader::Version m_version;