X-Git-Url: http://sigrok.org/gitweb/?a=blobdiff_plain;f=decoders%2Famulet_ascii%2Fpd.py;h=719532344727f98e566aeba51347644395b60907;hb=c5213e2632847750695bca0b3a97b5b03573435e;hp=23f5a151b0eb07651d1bcd1a8892f0f669458c3c;hpb=0b137b0d5e1cd9a42ab57edbb6e1c724ca88f692;p=libsigrokdecode.git diff --git a/decoders/amulet_ascii/pd.py b/decoders/amulet_ascii/pd.py index 23f5a15..7195323 100644 --- a/decoders/amulet_ascii/pd.py +++ b/decoders/amulet_ascii/pd.py @@ -19,19 +19,15 @@ import sigrokdecode as srd from math import ceil +from common.srdhelper import SrdIntEnum from .lists import * L = len(cmds) RX = 0 TX = 1 -rxtx_channels = ('RX', 'TX') -# Don't forget to keep this in sync with 'cmds' is lists.py. -class Ann: - PAGE, GBV, GWV, GSV, GLV, GRPC, SBV, SWV, SSV, RPC, LINE, RECT, FRECT, \ - PIXEL, GBVA, GWVA, SBVA, GBVR, GWVR, GSVR, GLVR, GRPCR, SBVR, SWVR, SSVR, \ - RPCR, LINER, RECTR, FRECTR, PIXELR, GBVAR, GWVAR, SBVAR, ACK, NACK, SWVA, \ - SWVAR, GCV, GCVR, SCV, SCVR, BIT, FIELD, WARN = range(L + 3) +Ann = SrdIntEnum.from_list('Ann', + [c[0] for c in cmds.values()] + ['BIT', 'FIELD', 'WARN']) def cmd_annotation_classes(): return tuple([tuple([cmd[0].lower(), cmd[1]]) for cmd in cmds.values()]) @@ -54,14 +50,14 @@ class Decoder(srd.Decoder): annotation_rows = ( ('bits', 'Bits', (L + 0,)), ('fields', 'Fields', (L + 1,)), - ('commands', 'Commands', tuple(range(len(cmds)))), + ('commands', 'Commands', tuple(range(L))), ('warnings', 'Warnings', (L + 2,)), ) options = ( {'id': 'ms_chan', 'desc': 'Master -> slave channel', - 'default': rxtx_channels[0], 'values': rxtx_channels}, + 'default': 'RX', 'values': ('RX', 'TX')}, {'id': 'sm_chan', 'desc': 'Slave -> master channel', - 'default': rxtx_channels[1], 'values': rxtx_channels}, + 'default': 'TX', 'values': ('RX', 'TX')}, ) def __init__(self):