[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Commit-gnuradio] [gnuradio] 01/07: base: Added argparse equivalent for
From: |
git |
Subject: |
[Commit-gnuradio] [gnuradio] 01/07: base: Added argparse equivalent for eng_option |
Date: |
Mon, 6 Jul 2015 23:37:00 +0000 (UTC) |
This is an automated email from the git hooks/post-receive script.
jcorgan pushed a commit to branch master
in repository gnuradio.
commit b3ac0d53c7ce1bd0763704aa20a36f446aeb2e10
Author: Martin Braun <address@hidden>
Date: Sat Jun 27 11:46:07 2015 -0700
base: Added argparse equivalent for eng_option
---
gnuradio-runtime/python/gnuradio/CMakeLists.txt | 1 +
gnuradio-runtime/python/gnuradio/eng_arg.py | 53 +++++++++++++++++++++++++
2 files changed, 54 insertions(+)
diff --git a/gnuradio-runtime/python/gnuradio/CMakeLists.txt
b/gnuradio-runtime/python/gnuradio/CMakeLists.txt
index bd566ed..d29e6aa 100644
--- a/gnuradio-runtime/python/gnuradio/CMakeLists.txt
+++ b/gnuradio-runtime/python/gnuradio/CMakeLists.txt
@@ -31,6 +31,7 @@ GR_PYTHON_INSTALL(FILES
__init__.py
eng_notation.py
eng_option.py
+ eng_arg.py
gr_unittest.py
gr_xmlrunner.py
DESTINATION ${GR_PYTHON_DIR}/gnuradio
diff --git a/gnuradio-runtime/python/gnuradio/eng_arg.py
b/gnuradio-runtime/python/gnuradio/eng_arg.py
new file mode 100644
index 0000000..05cd8a1
--- /dev/null
+++ b/gnuradio-runtime/python/gnuradio/eng_arg.py
@@ -0,0 +1,53 @@
+#
+# Copyright 2015 Free Software Foundation, Inc.
+#
+# This file is part of GNU Radio
+#
+# GNU Radio 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 3, or (at your option)
+# any later version.
+#
+# GNU Radio 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 GNU Radio; see the file COPYING. If not, write to
+# the Free Software Foundation, Inc., 51 Franklin Street,
+# Boston, MA 02110-1301, USA.
+#
+
+'''
+Add support for engineering notation to argparse.ArgumentParser
+'''
+
+import argparse
+from gnuradio import eng_notation
+
+def intx(string):
+ """
+ Generic integer type, will interpret string as string literal.
+ Does the right thing for 0x1F, 0b10101, 010.
+ """
+ try:
+ return int(string, 0)
+ except:
+ raise argparse.ArgumentTypeError(
+ "Invalid integer value: {}".format(string)
+ )
+
+def eng_float(string):
+ """
+ Takes a string, returns a float. Accepts engineering notation.
+ Designed for use with argparse.ArgumentParser.
+ Will raise an ArgumentTypeError if not possible.
+ """
+ try:
+ return eng_notation.str_to_num(string)
+ except:
+ raise argparse.ArgumentTypeError(
+ "Invalid engineering notation value: {}".format(string)
+ )
+
- [Commit-gnuradio] [gnuradio] branch master updated (b9bdd1c -> 1185d40), git, 2015/07/06
- [Commit-gnuradio] [gnuradio] 05/07: Merge branch 'maint', git, 2015/07/06
- [Commit-gnuradio] [gnuradio] 04/07: Merge remote-tracking branch 'mbr0wn/python/eng_args', git, 2015/07/06
- [Commit-gnuradio] [gnuradio] 03/07: Merge branch 'maint', git, 2015/07/06
- [Commit-gnuradio] [gnuradio] 06/07: Merge remote-tracking branch 'mmueller/freq_phase_mod_honest_signatures', git, 2015/07/06
- [Commit-gnuradio] [gnuradio] 07/07: Merge branch 'maint', git, 2015/07/06
- [Commit-gnuradio] [gnuradio] 01/07: base: Added argparse equivalent for eng_option,
git <=
- [Commit-gnuradio] [gnuradio] 02/07: float internally, double in API: Honest signatures for honest people, git, 2015/07/06