Initial add POI index

This commit is contained in:
Victor Shcherb 2011-09-21 00:10:23 +02:00
parent 0c7ec258ac
commit fc0dff14e5
3 changed files with 2418 additions and 65 deletions

View file

@ -4,7 +4,7 @@
<exec dir="." executable="protoc">
<arg value="src/osmand_odb.proto"/>
<arg value="--java_out=./src/"/>
</exec>
</exec>
</target>
</project>

File diff suppressed because it is too large Load diff

View file

@ -16,6 +16,8 @@ message OsmAndStructure {
repeated OsmAndAddressIndex addressIndex = 3;
// encoded as fixed32 length delimited
repeated OsmAndTransportIndex transportIndex = 4;
// encoded as fixed32 length delimited
repeated OsmAndPoiIndex poiIndex = 5;
// last field should version again (to check consistency)
required uint32 versionConfirm = 32;
@ -255,4 +257,56 @@ message OsmAndTransportIndex {
required StringTable stringTable = 9;
}
message OsmAndPoiIndex {
required string name = 1;
required StringTable categoryTable = 3;
required StringTable subcategoriesTable = 4;
// leave space for other indexes
// encoded as fixed32 length delimited
repeated OsmAndPoiBox routes = 6; // children
// encoded as fixed32 length delimited
repeated OsmAndPoiBoxData poiData = 7;
}
message OsmAndPoiBox {
required uint32 zoom = 1; // delta encoded to parent
required sint32 left = 2; // delta encoded (zoom)
required sint32 right = 3; // delta encoded (zoom)
required sint32 top = 4; // delta encoded (zoom)
required sint32 bottom = 5; // delta encoded (zoom)
optional OsmAndPoiCategories categories = 6;
// encoded as fixed32 length delimited
repeated OsmAndPoiBox subBoxes = 7;
optional uint32 shiftToData = 10; // shift to OsmAndPoiBoxDataAtom
// TODO
// TransportStop.Message.start - sizeof(TransportStop.Message.length) - routes[i]
// = TransportRoute.Message.start - sizeof(TransportRoute.Message.length)
// message is started when body is started
}
message OsmAndPoiCategories {
// sorted categories
repeated uint32 categories = 3;
}
message OsmAndPoiBoxData {
repeated OsmAndPoiBoxDataAtom poiData = 3;
}
message OsmAndPoiBoxDataAtom {
}