all decoders: introduce a reset() method
authorGerhard Sittig <gerhard.sittig@gmx.net>
Mon, 20 Feb 2017 20:37:05 +0000 (21:37 +0100)
committerUwe Hermann <uwe@hermann-uwe.de>
Fri, 22 Dec 2017 11:21:54 +0000 (12:21 +0100)
Move initialization code of protocol decoders from the constructor to a
new reset() helper method. The libsigrokdecode backend could run this
method several times to clear the decoder's internal state, before new
data from another acquisition gets fed to decode() calls.

79 files changed:
decoders/ade77xx/pd.py
decoders/adf435x/pd.py
decoders/adns5020/pd.py
decoders/am230x/pd.py
decoders/arm_etmv3/pd.py
decoders/arm_itm/pd.py
decoders/arm_tpiu/pd.py
decoders/aud/pd.py
decoders/avr_isp/pd.py
decoders/avr_pdi/pd.py
decoders/can/pd.py
decoders/dali/pd.py
decoders/dcf77/pd.py
decoders/dmx512/pd.py
decoders/ds1307/pd.py
decoders/ds243x/pd.py
decoders/ds28ea00/pd.py
decoders/dsi/pd.py
decoders/edid/pd.py
decoders/eeprom24xx/pd.py
decoders/eeprom93xx/pd.py
decoders/em4100/pd.py
decoders/em4305/pd.py
decoders/gpib/pd.py
decoders/graycode/pd.py
decoders/guess_bitrate/pd.py
decoders/i2c/pd.py
decoders/i2cdemux/pd.py
decoders/i2cfilter/pd.py
decoders/i2s/pd.py
decoders/iec/pd.py
decoders/ir_nec/pd.py
decoders/ir_rc5/pd.py
decoders/jitter/pd.py
decoders/jtag/pd.py
decoders/jtag_stm32/pd.py
decoders/lm75/pd.py
decoders/lpc/pd.py
decoders/maple_bus/pd.py
decoders/mdio/pd.py
decoders/midi/pd.py
decoders/mlx90614/pd.py
decoders/modbus/pd.py
decoders/morse/pd.py
decoders/mrf24j40/pd.py
decoders/mxc6225xu/pd.py
decoders/nrf24l01/pd.py
decoders/nunchuk/pd.py
decoders/onewire_link/pd.py
decoders/onewire_network/pd.py
decoders/pan1321/pd.py
decoders/parallel/pd.py
decoders/ps2/pd.py
decoders/pwm/pd.py
decoders/qi/pd.py
decoders/rfm12/pd.py
decoders/rgb_led_spi/pd.py
decoders/rgb_led_ws281x/pd.py
decoders/rtc8564/pd.py
decoders/sdcard_sd/pd.py
decoders/sdcard_spi/pd.py
decoders/spdif/pd.py
decoders/spi/pd.py
decoders/spiflash/pd.py
decoders/ssi32/pd.py
decoders/stepper_motor/pd.py
decoders/swd/pd.py
decoders/t55xx/pd.py
decoders/tca6408a/pd.py
decoders/timing/pd.py
decoders/tlc5620/pd.py
decoders/uart/pd.py
decoders/usb_packet/pd.py
decoders/usb_power_delivery/pd.py
decoders/usb_request/pd.py
decoders/usb_signalling/pd.py
decoders/wiegand/pd.py
decoders/xfp/pd.py
decoders/z80/pd.py

index 32a431bcc5e9f754340afce017297425baf9d340..0dfd7c86bf08fa0ceb25656ab97b00f5daa07909 100644 (file)
@@ -50,6 +50,9 @@ class Decoder(srd.Decoder):
         self.mosi_bytes, self.miso_bytes = [], []
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.ss_cmd, self.es_cmd = 0, 0
         self.reset_data()
 
index a17eb8426d583503f2c1a6bea0176af29823fbc5..dcc08dec55fd52eb1de3dc34b49ab4aa61ef0067 100644 (file)
@@ -105,6 +105,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.bits = []
 
     def start(self):
index 0ee3f8b348b79ca111e9e741fec39a9299c7adff..55f6853b0099921e739f6b8490928b44749e493f 100644 (file)
@@ -59,6 +59,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.ss_cmd, self.es_cmd = 0, 0
         self.mosi_bytes = []
 
index 0e4eac85223e94d3f65414ab5f320f8d220ca6ec..81c1f28da39506e4d714c779593b3ac77d60f5d3 100644 (file)
@@ -122,6 +122,9 @@ class Decoder(srd.Decoder):
         return checksum % 256
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.samplerate = None
         self.reset_variables()
 
index 8a2a8bb9f00199911023a694c0728281d04343d1..8de3ce2c8d40915af88ef580f1a645a88d2e62b0 100644 (file)
@@ -170,6 +170,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.buf = []
         self.syncbuf = []
         self.prevsample = 0
index 15ffe7223277023a7e5b87583492333a8082f451..5970f27c0f9c2b97120562e6cf075b2cac7e24c8 100644 (file)
@@ -80,6 +80,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.buf = []
         self.syncbuf = []
         self.swpackets = {}
index efacb2794b26fc77f2a875de95062e294fd75c54..f50af65b471b652814aaa45f22185a8afc8ea7e3 100644 (file)
@@ -42,6 +42,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.buf = []
         self.syncbuf = []
         self.prevsample = 0
index baa920e933f59fa4af02ba2c0d397386d8eb6c12..30c32f5fcc89d46d89a6555f00a5fcaac2ac4723 100644 (file)
@@ -46,6 +46,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.ncnt = 0
         self.nmax = 0
         self.addr = 0
index 9c8647d3d58b7006530aa41dd73637f3af8f70da..2530e8cc23b4c5bb0bb44a3281f96e90977e189d 100644 (file)
@@ -51,6 +51,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.state = 'IDLE'
         self.mosi_bytes, self.miso_bytes = [], []
         self.ss_cmd, self.es_cmd = 0, 0
index fcb73af88b945f079a03da306bbbd87983483b04..7fedbbdfe18e4e18b8447134adc271591c143d21 100644 (file)
@@ -154,6 +154,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.samplerate = None
         self.clear_state()
 
index 5be3e993e0db522548a851e1fc4cc2316fd0d5e7..056736b85de83560b13d10283ea1ca892e393fe2 100644 (file)
@@ -65,6 +65,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.samplerate = None
         self.reset_variables()
 
index 904adc7fbdc72ad628be5187bc07d3736090a72c..5dd577db1affe50d49b567473e0977f2a86f4b79 100644 (file)
@@ -56,6 +56,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.samplerate = None
         self.samplenum = None
         self.edges, self.bits, self.ss_es_bits = [], [], []
index a4e87f64a114b7a94bb98d8f3082a8396d1d523a..7b180ce2855f90b4e1d2de1599631d05096b5ede 100644 (file)
@@ -65,6 +65,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.samplerate = None
         self.state = 'WAIT FOR RISING EDGE'
         self.ss_bit = self.ss_bit_old = self.es_bit = self.ss_block = 0
index f250a3b49f77f78f7c8dbbc9a646a3e8f0060938..1bcca20ff67cd108882fbf528b3fa4628655ad02 100644 (file)
@@ -52,6 +52,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.samplerate = None
         self.sample_usec = None
         self.run_start = -1
index 560d94d2a50b8f9561b2519a4d1279eb2d632c86..414da6531c31998977dab755af66dd3ce421257e 100644 (file)
@@ -75,6 +75,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.state = 'IDLE'
         self.hours = -1
         self.minutes = -1
index 05313dcc9e720f239261600585ddddeb2c7d11e7..c7869a8d9c4af3ab2b39dcd4d4edc50b4ccdce58 100644 (file)
@@ -77,6 +77,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         # Bytes for function command.
         self.bytes = []
         self.family_code = None
index 2ae94699fe36e7bbdaa9610fbb5e407881bbb93b..a792d95956f3533094e50583e548bf8cfeded180 100644 (file)
@@ -48,6 +48,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.trn_beg = 0
         self.trn_end = 0
         self.state = 'ROM'
index 5b473be2b34bd374800b392f543374a15ebca657..c5d9bf9c25c34c4f2d2375a577114f288ca6c5e8 100644 (file)
@@ -51,6 +51,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.samplerate = None
         self.samplenum = None
         self.edges, self.bits, self.ss_es_bits = [], [], []
index baf226358e63cb626faf069ed98b52f3b3a310c7..e73884e7e2b9bf7b6ce4bbe27c6767132056eaa6 100644 (file)
@@ -91,6 +91,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.state = None
         # Received data items, used as an index into samplenum/data
         self.cnt = 0
index e7b344c92a82efc017848b23fcda32554fdf39a5..49c586d23b417ebbbd8729e05ae2dfbbc6193e24 100644 (file)
@@ -73,6 +73,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.reset_variables()
 
     def start(self):
index 82c1ae85aa0800953bb1f4c8b26c91993cbf9805..d76b869756c25fbb6fb23a513ba641f46b280819 100644 (file)
@@ -43,6 +43,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.frame = []
 
     def start(self):
index 711c0fa20dab7fbc372806c9117b856b3efb4f16..778cfd1621e6a918977a9567b0f3898dd877c4f6 100644 (file)
@@ -62,6 +62,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.samplerate = None
         self.oldpin = None
         self.last_samplenum = None
index 895ee15feb2e216b4d2af7f86f86e11e1188b00c..9fac9c6da0d582e601576a5eed818f4311145e8a 100644 (file)
@@ -65,6 +65,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.samplerate = None
         self.last_samplenum = None
         self.state = 'FFS_SEARCH'
index 01801bc592161009898a64c28249d626012952df..d131cb9dee30523ef4c56f4e73c4793eb365a066 100644 (file)
@@ -61,6 +61,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.items = []
         self.itemcount = 0
         self.saved_item = None
index f500c8393bc77013ddc141e2d825be741b5fdfbf..1211c69efd88834a47cd84120cf287be5c6d4f4e 100644 (file)
@@ -101,6 +101,9 @@ class Decoder(srd.Decoder):
     annotation_rows = tuple((u, v, (i,)) for i, (u, v) in enumerate(annotations))
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.num_channels = 0
         self.samplerate = None
         self.last_n = deque()
index e8390c6b44dfdf634c5e7ad936c4ed13edcd0d61..7a3121a3009e0f5c062bb95c390366fb1483b3e4 100644 (file)
@@ -42,6 +42,9 @@ class Decoder(srd.Decoder):
         self.put(self.ss_edge, self.samplenum, self.out_ann, data)
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.ss_edge = None
 
     def start(self):
index d0c2ea71702d20ac247a37739173047cfdce8588..7f8960da4ffdf60fbf7f070f1d91107a0c1755b7 100644 (file)
@@ -108,6 +108,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.samplerate = None
         self.ss = self.es = self.ss_byte = -1
         self.bitcount = 0
index c6ab53d17c8d098e58f4bb4d094777e1b8040725..2495e84931a3a42d0af015672d154bd32fd46d5e 100644 (file)
@@ -30,6 +30,9 @@ class Decoder(srd.Decoder):
     outputs = [] # TODO: Only known at run-time.
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.packets = [] # Local cache of I²C packets
         self.slaves = [] # List of known slave addresses
         self.stream = -1 # Current output stream
index af09c496f78e0379aeabcfb247defdd063e9df21..1dc7fd1ddfc3e73cb1a2b53f3d38fa091aec0922 100644 (file)
@@ -39,6 +39,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.curslave = -1
         self.curdirection = None
         self.packets = [] # Local cache of I²C packets
index beee07925ce57c6018cecc59b215071c7ee6ba2e..91801b4e98f9c0c6a62dcb8b92852907513f6092 100644 (file)
@@ -60,6 +60,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.samplerate = None
         self.oldws = 1
         self.bitcount = 0
index 0b34391d2f0732e126824decb09c4d9ec44725e7..06fdc7a3282aa455b0a5982fa37a578b851eca94 100644 (file)
@@ -55,6 +55,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.saved_ATN = False
         self.saved_EOI = False
         self.ss_item = self.es_item = None
index 84b2e70a6ef77b85d97d9ad3a5134073f7735560..0362609dfb7d11ccd0dbb085c118a3e3caf2c3be 100644 (file)
@@ -99,6 +99,9 @@ class Decoder(srd.Decoder):
                  '%s' % btn[1]]])
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.state = 'IDLE'
         self.ss_bit = self.ss_start = self.ss_other_edge = self.ss_remote = 0
         self.data = self.count = self.active = None
index edb29bd2b66e20a74450f9368ce347168c4880fe..60a94160498a3beac0e74f31c1eec5b67c57d288 100644 (file)
@@ -56,6 +56,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.samplerate = None
         self.samplenum = None
         self.edges, self.bits, self.ss_es_bits = [], [], []
index 04a2577403094fa6f6aba83376973494a9e06229..f492a9fa077c9027965a856b8809dabee2699191 100644 (file)
@@ -63,6 +63,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.state = 'CLK'
         self.samplerate = None
         self.oldclk, self.oldsig = 0, 0
index 4ad11c4cccc2b80d12e99f21c0b2e8558e83126d..7f784eb138dbe19a28571978ece928ce011624d0 100644 (file)
@@ -88,6 +88,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         # self.state = 'TEST-LOGIC-RESET'
         self.state = 'RUN-TEST/IDLE'
         self.oldstate = None
index 4cc39e047e7c58376e11c362cf661bc7ac301209..d27a5577babc7af7889c7f0154652d80c17cc393 100644 (file)
@@ -156,6 +156,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.state = 'IDLE'
         self.samplenums = None
 
index d65fb4d30fc926f514d96f7842e1d4a4e4262ad5..29237d7adaf17528fb3907330d48286cd247ff59 100644 (file)
@@ -62,6 +62,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.state = 'IDLE'
         self.reg = 0x00 # Currently selected register
         self.databytes = []
index c7375441daf9b50be419592eda832635d11011cf..7242208829b95109079b1699788d3a3e7f051b9d 100644 (file)
@@ -136,6 +136,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.state = 'IDLE'
         self.oldlclk = -1
         self.samplenum = 0
index 861b3f864dcdae9669d83124a7fcaea3705d0d36..830606185f71fddd94b004258681ee83415343dc 100644 (file)
@@ -73,6 +73,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         pass
 
     def start(self):
index 7c2fc5f3039b465bbe65fb5055c8eb21848d1c85..3580acc1cb888ca7c10a4b41329d20009e3d6b09 100644 (file)
@@ -62,6 +62,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.illegal_bus = 0
         self.samplenum = -1
         self.clause45_addr = -1 # Clause 45 is context sensitive.
index c2d3f72ab441935bd308edcf871ccd32739a488c..feb581c6684522c8d87a7fc449310403332976b3 100644 (file)
@@ -44,6 +44,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.state = 'IDLE'
         self.status_byte = 0
         self.explicit_status_byte = False
index 1f627e6adf755c63051a1bb853ba30ab583dd6fe..60927f7324bb5d96c390f27837f1c4845ca7968a 100644 (file)
@@ -34,6 +34,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.state = 'IGNORE START REPEAT'
         self.data = []
 
index 2404312ba8e760a1093aa618fa76553178150ca6..d2307b9ec5506855331131c2e0d035b2dafc088d 100644 (file)
@@ -847,6 +847,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.ADUSc = None # Start off with empty slave -> client ADU.
         self.ADUCs = None # Start off with empty client -> slave ADU.
 
index 588394dadc2e5a5f5f266a02b048c257e1660200..a1e3c23072d6bad62a871ecfa80832ed4011349a 100644 (file)
@@ -137,6 +137,9 @@ class Decoder(srd.Decoder):
     annotation_rows = tuple((u, v, (i,)) for i, (u, v) in enumerate(annotations))
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.samplerate = None
 
     def metadata(self, key, value):
index e195b18f327354b0dd1240e3453822557682a996..8ccf47384a67f4b54b3f9b2c353aa545d0e9bd47 100644 (file)
@@ -43,6 +43,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.ss_cmd, self.es_cmd = 0, 0
         self.mosi_bytes = []
         self.miso_bytes = []
index 34482cd0c428cba094358a2fb88d7152d872dd90..1e9045519c90ce41bfecef1dd3b7ac8b9f7872d8 100644 (file)
@@ -72,6 +72,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.state = 'IDLE'
 
     def start(self):
index 02cdddbce06337be86a436e4c079c226ef3d50b9..221b968ea2ac0db672e2a5a30761120b16f86f3b 100644 (file)
@@ -94,6 +94,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.next()
         self.requirements_met = True
         self.cs_was_released = False
index de6e157e9e21f52b3cfc3052cc49379d5e279d14..4f006f2f8f0816546124b288982781eec5cb3f49 100644 (file)
@@ -47,6 +47,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.state = 'IDLE'
         self.sx = self.sy = self.ax = self.ay = self.az = self.bz = self.bc = -1
         self.databytecount = 0
index ca324159aacd920d140fc6ad01bee288987ac100..72aea83f7248952e91cda83823aa3605f7d09156 100644 (file)
@@ -118,6 +118,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.samplerate = None
         self.state = 'INITIAL'
         self.present = 0
index 323da0b6e580c85aed13bc6f08620a78f5c700e5..5d850b5897abc5912843d20d5c2dc27335391dba 100644 (file)
@@ -45,6 +45,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.ss_block = 0
         self.es_block = 0
         self.state = 'COMMAND'
index c1a3bea451ef42b810d10617dcc692182fe870c6..ecaa6807f752c20d0ade4bce2c56081ba27e0d58 100644 (file)
@@ -39,6 +39,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.cmd = ['', '']
         self.ss_block = None
 
index c8ac2b0f74d2211b86f9a3b88c8f031a23e91223..140b7b8b34a6f5f3eb697977d688a9f59c8bcfa6 100644 (file)
@@ -88,6 +88,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.items = []
         self.itemcount = 0
         self.saved_item = None
index 1a7f0be988cd6d3af7212b39bd848f27782fb14c..6ed04c80af0b40770113caf5e1c84eeab3fbacd0 100644 (file)
@@ -53,6 +53,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.bits = []
         self.samplenum = 0
         self.bitcount = 0
index 444b4179cb55ac00e337bb791c10ac6c14da1e3c..2301523c1abd06923999aff4476b3ceae9c04a62 100644 (file)
@@ -49,6 +49,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.ss_block = self.es_block = None
 
     def metadata(self, key, value):
index 779cafa796c277c69a2e83cfa10d152833f3d900..cb46dbab33ce9165f1f2b09b7041829b39391d22 100644 (file)
@@ -73,6 +73,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.samplerate = None
         self.reset_variables()
 
index 3148a5748cfaa97fe46dba203c2d613d134d35de..e709696c9ef7fbbc28fc3c86cd2b17126875cd7d 100644 (file)
@@ -43,6 +43,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.mosi_bytes, self.miso_bytes = [], []
         self.mosi_bits, self.miso_bits = [], []
         self.row_pos = [0, 0, 0]
index 95cbf19518fffee852cdb05516d58ba408046c77..d0875561138ae43ecff813f244091df8b8bcf627 100644 (file)
@@ -33,6 +33,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.ss_cmd, self.es_cmd = 0, 0
         self.mosi_bytes = []
 
index 5cf21245df91603ea53fcc0d0fcce6f0feb5f112..b4f7c581d7e8f14b971fef5a912a56c9c42be64b 100644 (file)
@@ -46,6 +46,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.samplerate = None
         self.oldpin = None
         self.ss_packet = None
index 8560ac76b2f44925bba9dd5c93412a2b812fa3de..3a9dca0c48b36d67fbd44250059dd21855009a42 100644 (file)
@@ -52,6 +52,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.state = 'IDLE'
         self.hours = -1
         self.minutes = -1
index 2382a1534a7813519b5c238120c949b48572981d..9402f7ef7692bc486cc9b6adf9b5e3ba379d8bdd 100644 (file)
@@ -61,6 +61,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.state = 'GET COMMAND TOKEN'
         self.token = []
         self.is_acmd = False # Indicates CMD vs. ACMD
index 478dfc8ca33e627ad7e1fbaeecb2ad334671c666..7c596345b1c1b8c655dab78e10a4748d0a0ee80f 100644 (file)
@@ -46,6 +46,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.state = 'IDLE'
         self.ss, self.es = 0, 0
         self.ss_bit, self.es_bit = 0, 0
index 0c535e4a6d86e56530e6837390d01bac714b2c73..add2834e2f232869ab962c4cd7b9d3ee329887eb 100644 (file)
@@ -58,6 +58,9 @@ class Decoder(srd.Decoder):
         self.put(self.ss_edge, self.samplenum, self.out_ann, data)
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.state = 'GET FIRST PULSE WIDTH'
         self.ss_edge = None
         self.first_edge = True
index 7b979f0762bf3e50e555627344f26f916ec9c272..32fe8da40d71898a2853881085e3f0073754f328 100644 (file)
@@ -121,6 +121,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.samplerate = None
         self.bitcount = 0
         self.misodata = self.mosidata = 0
index 8e2b041225876f2e376359f51694be840de16739..07934c52c149e206cd008a52c68f12ab54075e2e 100644 (file)
@@ -98,6 +98,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.device_id = -1
         self.on_end_transaction = None
         self.end_current_transaction()
index dbcdf642fdd6dc0d56f60e31f2be1bdcdfb6d5ee..f2685e2869dc3010520633b98a511457724b482b 100644 (file)
@@ -46,6 +46,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.ss_cmd, self.es_cmd = 0, 0
         self.mosi_bytes = []
         self.miso_bytes = []
index 52e3e635a4bea1185e8e2282bad2d8c901a3d9e1..9ddc6453200366a2c55b000dd866097c0b4a5727 100644 (file)
@@ -50,6 +50,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.oldstep = None
         self.ss_prev_step = None
         self.pos = 0
index 22aad4533d25b89aba66f55edabbd4058b195156..0f7bc22aab281eaa8b418604f6970131a5524d69 100644 (file)
@@ -92,6 +92,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         # SWD data/clock state
         self.state = 'UNKNOWN'
         self.sample_edge = RISING
index 5a7611a46a14ac0c63110ee7ce7361b3a5075684..07df9c2cddd8eb9a38f6a05f648939da51693373 100644 (file)
@@ -66,6 +66,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.samplerate = None
         self.last_samplenum = None
         self.lastlast_samplenum = None
index 73de1b9f46dd0ef917bd333fc7373ecd3a6731b4..0e607675f0465f3df0f7e3b36cd8da8da28bb493 100644 (file)
@@ -41,6 +41,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.state = 'IDLE'
         self.chip = -1
 
index ab963bb11d33341ff564073f07c62c865f66c574..61eab1ea104c03b1a45b8f646f2b16df697cf4eb 100644 (file)
@@ -74,6 +74,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.samplerate = None
         self.last_samplenum = None
         self.last_n = deque()
index 3ca1415dd7ab845f16cd798eccd3533b15632cad..6fe8ae10d651c836a83b9dd13e4424a51307a902 100644 (file)
@@ -71,6 +71,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.bits = []
         self.ss_dac_first = None
         self.ss_dac = self.es_dac = 0
index 16729cc48fd5837a51e4a377e69b20ef9317e704..89932717ad8c24972e886f53c802260cc1575fff 100644 (file)
@@ -160,6 +160,9 @@ class Decoder(srd.Decoder):
         self.put(s - floor(halfbit), self.samplenum + ceil(halfbit), self.out_binary, data)
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.samplerate = None
         self.samplenum = 0
         self.frame_start = [-1, -1]
index 3983f2ccf1d1928ebb21b0920ba1f7b9d4d3769c..489e58eb81419b10b548de0d12865413acfc5ad4 100644 (file)
@@ -222,6 +222,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.bits = []
         self.packet = []
         self.packet_summary = ''
index 3258ac329674e3ac8f1f0751e34c8e051fd0b55d..a2d6b4da4d76693b1bbc739ed0707beffbd9c8d7 100644 (file)
@@ -439,6 +439,9 @@ class Decoder(srd.Decoder):
         return -1   # No Start Of Packet
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.samplerate = None
         self.idx = 0
         self.packet_seq = 0
index 1bd287851f5a90a9b230adbf21ef24d3c2a37da8..a4802845aa25681101011ce21cff17bfa1ab31cc 100644 (file)
@@ -136,6 +136,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.samplerate = None
         self.request = {}
         self.request_id = 0
index 7a885c05293a1820f0af0cb1509fdddad3add67e..424117dbe2cb5613744f6f54afd88b7022fa892c 100644 (file)
@@ -135,6 +135,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.samplerate = None
         self.oldsym = 'J' # The "idle" state is J.
         self.ss_block = None
index 3edefc5b00494d548c547e85bea481c5c3cec1d1..ea873ea123a9406aac91a11689d0b2895fa2d1eb 100644 (file)
@@ -48,6 +48,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self._samples_per_bit = 10
 
         self._d0_prev = None
index fcadab9c96fb0acfe90a16b2afc049c9ba83ef84..0bc6724511966f8ba43ba8f94076372b40d3209e 100644 (file)
@@ -37,6 +37,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         # Received data items, used as an index into samplenum/data
         self.cnt = -1
         # Start/end sample numbers per data item
index 76e1858ff98b6e1748499180915a206bc80a1caa..b7ff9a56b16ac83cc62bba2e6781876241b306dc 100644 (file)
@@ -111,6 +111,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.prev_cycle = Cycle.NONE
         self.op_state   = self.state_IDLE