diff options
author | Harald Welte <laforge@gnumonks.org> | 2017-01-22 22:41:04 +0100 |
---|---|---|
committer | Harald Welte <laforge@gnumonks.org> | 2017-01-24 17:09:26 +0100 |
commit | 78ced2084d7732bc2a37a9eb9bb37c9392372066 (patch) | |
tree | 1c2b5bd798b62096e369f644b053db2ec06a087a | |
parent | db5831c1c95debf40daef459c873f4d743bb06f2 (diff) |
qxdm_db.py: Move value_string code generator to separate file
-rw-r--r-- | tools/qxdm_db.py | 11 | ||||
-rw-r--r-- | tools/value_string.py | 29 |
2 files changed, 30 insertions, 10 deletions
diff --git a/tools/qxdm_db.py b/tools/qxdm_db.py index 126cfbc..81b19a3 100644 --- a/tools/qxdm_db.py +++ b/tools/qxdm_db.py @@ -18,16 +18,7 @@ # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import csv - -def export_value_str(name, vals, flavor='osmocom'): - 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=int): - print("\t{ %d, \"%s\" }," % (int(v), vals[v])); - print("\t{ 0, NULL }") - print("};"); +from value_string import export_value_str class QxdmDb(object): file_fields = { 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 <laforge@gnumonks.org> +# +# 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("};"); |