1#ifndef OSMSCOUT_IMPORT_GENOPTIMIZEAREASLOWZOOM_H
2#define OSMSCOUT_IMPORT_GENOPTIMIZEAREASLOWZOOM_H
23#include <osmscoutimport/ImportFeatures.h>
26#include <unordered_map>
44 typedef std::unordered_map<FileOffset,FileOffset> FileOffsetFileOffsetMap;
49 MagnificationLevel optLevel;
50 MagnificationLevel indexLevel;
58 uint8_t dataOffsetBytes;
70 void GetAreaTypesToOptimize(
const TypeConfig& typeConfig,
73 bool WriteTypeData(FileWriter& writer,
74 const TypeData& data);
76 bool WriteHeader(FileWriter& writer,
77 const std::list<TypeData>& areaTypesData,
78 const MagnificationLevel& optimizeMaxMap);
80 bool GetAreas(
const TypeConfig& typeConfig,
81 const ImportParameter& parameter,
84 const TypeInfoSet& types,
85 std::vector<std::list<AreaRef> >& areas,
86 TypeInfoSet& loadedTypes);
88 void GetAreaIndexLevel(
const ImportParameter& parameter,
89 const std::list<AreaRef>& areas,
92 void WriteAreas(
const TypeConfig& typeConfig,
94 const std::list<AreaRef>& areas,
95 FileOffsetFileOffsetMap& offsets);
97 bool WriteAreaBitmap(Progress& progress,
99 const std::list<AreaRef>& areas,
100 const FileOffsetFileOffsetMap& offsets,
103 bool HandleAreas(
const ImportParameter& parameter,
105 const TypeConfig& typeConfig,
107 const TypeInfoSet& types,
108 std::list<TypeData>& typesData);
110 void OptimizeAreas(Progress& progress,
111 const std::list<AreaRef>& areas,
112 std::list<AreaRef>& optimizedAreas,
117 const Magnification& magnification,
118 TransPolygon::OptimizeMethod optimizeAreaMethod);
122 ImportModuleDescription& description)
const override;
void GetDescription(const ImportParameter ¶meter, ImportModuleDescription &description) const override
bool Import(const TypeConfigRef &typeConfig, const ImportParameter ¶meter, Progress &progress) override
Definition ImportModule.h:101
uint64_t FileOffset
Definition OSMScoutTypes.h:46
std::shared_ptr< TypeConfig > TypeConfigRef
Definition TypeConfig.h:1396
std::shared_ptr< TypeInfo > TypeInfoRef
Definition TypeConfig.h:61