Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mapsme/omim.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorIlya Zverev <zverik@textual.ru>2016-07-15 18:01:19 +0300
committerIlya Zverev <zverik@textual.ru>2016-07-19 12:53:21 +0300
commit46a5d58ba1fe3b274df149214fe1bbc7bb97b6e1 (patch)
tree3d9baa51399d40e78102e3e1c7a6add4573c0059 /tools
parent989c84e7bb93994a02ba482e83e8ec3a90ff91fa (diff)
[generator] Add region info section to mwms
Diffstat (limited to 'tools')
-rwxr-xr-xtools/python/mwm/dump_mwm.py1
-rw-r--r--tools/python/mwm/mwm.py17
2 files changed, 18 insertions, 0 deletions
diff --git a/tools/python/mwm/dump_mwm.py b/tools/python/mwm/dump_mwm.py
index 0147c8dc19..edc891dc64 100755
--- a/tools/python/mwm/dump_mwm.py
+++ b/tools/python/mwm/dump_mwm.py
@@ -17,6 +17,7 @@ for tv in tvv:
v = mwm.read_version()
print('Format: {0}, version: {1}'.format(v['fmt'], v['version'].strftime('%Y-%m-%d %H:%M')))
print('Header: {0}'.format(mwm.read_header()))
+print('Region Info: {0}'.format(mwm.read_region_info()))
print('Metadata count: {0}'.format(len(mwm.read_metadata())))
cross = mwm.read_crossmwm()
diff --git a/tools/python/mwm/mwm.py b/tools/python/mwm/mwm.py
index bb4c941690..65929831bd 100644
--- a/tools/python/mwm/mwm.py
+++ b/tools/python/mwm/mwm.py
@@ -31,6 +31,8 @@ class MWM:
"denomination", "building_levels", "test_id", "ref:sponsored", "price_rate",
"rating", "fuel", "routes"]
+ regiondata = ["languages", "driving", "timezone", "addr_fmt", "phone_fmt", "postcode_fmt", "holidays", "housenames"]
+
def __init__(self, f):
self.f = f
self.coord_size = None
@@ -112,6 +114,21 @@ class MWM:
# COMPLEX READERS
+ def read_region_info(self):
+ if not self.has_tag('rgninfo'):
+ return {}
+ fields = {}
+ self.seek_tag('rgninfo')
+ sz = self.read_varuint()
+ if sz:
+ for i in range(sz):
+ t = self.read_varuint()
+ t = self.regiondata[t] if t < len(self.regiondata) else str(t)
+ fields[t] = self.read_string()
+ if t == 'languages':
+ fields[t] = [self.languages[ord(x)] for x in fields[t]]
+ return fields
+
def read_metadata(self):
"""Reads 'meta' and 'metaidx' sections."""
if not self.has_tag('metaidx'):