Add -p/--plot option so scripts will plot waves.
[igor.git] / bin / igorbinarywave.py
1 #!/usr/bin/env python
2 #
3 # Copyright (C) 2012 W. Trevor King <wking@tremily.us>
4 #
5 # This file is part of igor.
6 #
7 # igor is free software: you can redistribute it and/or modify it under the
8 # terms of the GNU Lesser General Public License as published by the Free
9 # Software Foundation, either version 3 of the License, or (at your option) any
10 # later version.
11 #
12 # igor is distributed in the hope that it will be useful, but WITHOUT ANY
13 # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
14 # A PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more
15 # details.
16 #
17 # You should have received a copy of the GNU Lesser General Public License
18 # along with igor.  If not, see <http://www.gnu.org/licenses/>.
19
20 "IBW -> ASCII conversion"
21
22 import pprint
23
24 import numpy
25
26 from igor.binarywave import load
27 from igor.script import Script
28
29
30 class WaveScript (Script):
31     def _run(self, args):
32         wave = load(args.infile)
33         numpy.savetxt(
34             args.outfile, wave['wave']['wData'], fmt='%g', delimiter='\t')
35         self.plot_wave(args, wave)
36         if args.verbose > 0:
37             wave['wave'].pop('wData')
38             pprint.pprint(wave)
39
40
41 s = WaveScript(description=__doc__)
42 s.run()