File: table_to_cpp.py

package info (click to toggle)
uhd 4.3.0.0%2Bds1-5
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 175,384 kB
  • sloc: cpp: 271,145; ansic: 103,960; python: 95,906; vhdl: 55,838; tcl: 14,117; xml: 8,535; makefile: 2,706; sh: 2,432; pascal: 230; javascript: 120; csh: 94; asm: 20; perl: 11
file content (26 lines) | stat: -rw-r--r-- 934 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#!/usr/bin/python

import sys

if len(sys.argv) != 3:
    print 'Usage: ' + sys.argv[0] + ' <table filename> <table name>'
    sys.exit(1)

with open(sys.argv[1], 'rb') as f:
    print ('static const std::vector<twinrx_gain_config_t> ' +
           sys.argv[2] + ' = boost::assign::list_of')
    i = -1
    for line in f.readlines():
        if (i != -1):
            row = line.strip().split(',')
            print ('    ( twinrx_gain_config_t( %s, %6.1f, %s, %s, %s, %s ) )' % (
                str(i).rjust(5),
                float(row[0].rjust(6)),
                row[1].rjust(6), row[2].rjust(6),
                ('true' if int(row[3]) == 1 else 'false').rjust(5),
                ('true' if int(row[4]) == 1 else 'false').rjust(5)))
        else:
            print ('    //                      %s, %s, %s, %s, %s, %s' % (
                'Index', '  Gain', 'Atten1', 'Atten2', ' Amp1', ' Amp2'))
        i += 1
    print ';'