From 78ced2084d7732bc2a37a9eb9bb37c9392372066 Mon Sep 17 00:00:00 2001 From: Harald Welte Date: Sun, 22 Jan 2017 22:41:04 +0100 Subject: qxdm_db.py: Move value_string code generator to separate file --- tools/value_string.py | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 tools/value_string.py (limited to 'tools/value_string.py') diff --git a/tools/value_string.py b/tools/value_string.py new file mode 100644 index 0000000..2bdc499 --- /dev/null +++ b/tools/value_string.py @@ -0,0 +1,29 @@ +#!/usr/bin/env python +# +# Helpers for 'struct value_string' as found in libosmocore and wireshark +# (C) 2017 by Harald Welte +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + + +def export_value_str(name, vals, flavor='osmocom', sort_key=int): + if flavor == 'osmocom': + print("const struct value_string %s[] = {" % name); + elif flavor == 'wireshark': + print("const value_string %s[] = {" % name); + for v in sorted(vals.iterkeys(), key=sort_key): + print("\t{ %s, \"%s\" }," % (v, vals[v])); + print("\t{ 0, NULL }") + print("};"); -- cgit v1.2.3