Files @ 3c997bc6d380
Branch filter:

Location: light9/light8/configconvert.py

Drew Perttula
fix some coffee lint
Ignore-this: 1a988be1598dda76dd2fefca3b499aa0


from Config import subs
import Patch

Patch.reload_data(0)

def print_tsv(filename,allchans,subs):
    f=open(filename,"w")
    print >>f,"\t"+"\t".join(allchans)

    for name,levels in subs.items():
        normd={}
        # nrmalize the names in the sub
        for k,v in levels.items():
            normd[Patch.resolve_name(k)]=v

        print >>f,"%s\t%s" % (name, "\t".join([str(normd.get(c,"")) for c in allchans]))


def read_tsv(filename,outname):
    """converts from tsv filename to a config file (python) named outname"""
    f=open(filename,'r')
    out=open(outname,'w')
    allchans=f.readline().split("\t")[1:]
    for line in f.xreadlines():
        spl=line.split("\t")
        subname=spl[0]
        print >>out,"subs['%s']={" % subname,
        for channame,level in zip(allchans,spl[1:]):
            try:
                if level!="" and int(level)>0:
                    print >>out,"'%s': %s," %(channame,level),
            except ValueError:
                pass
        print >>out,"}\n"
        

#print_tsv(filename="sublevs.txt",allchans=Patch.get_all_channels(),subs=subs)
read_tsv(filename="sublevs-fixed",outname="Configsubs-fixed.py")