]> sigrok.org Git - libsigrokdecode.git/commitdiff
Various PDs: Throw SamplerateError instead of Exception.
authorUwe Hermann <redacted>
Tue, 8 Jul 2014 19:32:32 +0000 (21:32 +0200)
committerUwe Hermann <redacted>
Wed, 9 Jul 2014 15:58:37 +0000 (17:58 +0200)
Also, use the "if not self.samplerate" form, which catches both the case
where self.samplerate is None, as well as the case where it is 0.

decoders/can/pd.py
decoders/dcf77/pd.py
decoders/guess_bitrate/pd.py
decoders/i2c/pd.py
decoders/i2s/pd.py
decoders/ir_nec/pd.py
decoders/ir_rc5/pd.py
decoders/onewire_link/pd.py
decoders/spi/pd.py
decoders/uart/pd.py
decoders/usb_signalling/pd.py

index e425575433510c3edea2512d0b707404134af4d9..f80ebc6da33fa57f640b7185a43e965781e4f9fe 100644 (file)
@@ -20,6 +20,9 @@
 
 import sigrokdecode as srd
 
+class SamplerateError(Exception):
+    pass
+
 class Decoder(srd.Decoder):
     api_version = 2
     id = 'can'
@@ -358,8 +361,8 @@ class Decoder(srd.Decoder):
         self.curbit += 1
 
     def decode(self, ss, es, data):
-        if self.samplerate is None:
-            raise Exception("Cannot decode without samplerate.")
+        if not self.samplerate:
+            raise SamplerateError('Cannot decode without samplerate.')
         for (self.samplenum, pins) in data:
 
             (can_rx,) = pins
index 3f0ff50c54809cef8bc04a59e61f0ba5a683bcca..14d8637ff00fa287a928e38c18319e96c80c0dd2 100644 (file)
@@ -25,6 +25,9 @@ import calendar
 def bcd2int(b):
     return (b & 0x0f) + ((b >> 4) * 10)
 
+class SamplerateError(Exception):
+    pass
+
 class Decoder(srd.Decoder):
     api_version = 2
     id = 'dcf77'
@@ -245,8 +248,8 @@ class Decoder(srd.Decoder):
             raise Exception('Invalid DCF77 bit: %d' % c)
 
     def decode(self, ss, es, data):
-        if self.samplerate is None:
-            raise Exception("Cannot decode without samplerate.")
+        if not self.samplerate:
+            raise SamplerateError('Cannot decode without samplerate.')
         for (self.samplenum, pins) in data:
 
             # Ignore identical samples early on (for performance reasons).
index e86316fb86d7c384c2fb74ec0a1869c1d22aebdc..1d7434beb738fadfd2f51b91ddbf95502e1e9cb3 100644 (file)
@@ -20,6 +20,9 @@
 
 import sigrokdecode as srd
 
+class SamplerateError(Exception):
+    pass
+
 class Decoder(srd.Decoder):
     api_version = 2
     id = 'guess_bitrate'
@@ -53,8 +56,8 @@ class Decoder(srd.Decoder):
             self.samplerate = value;
 
     def decode(self, ss, es, data):
-        if self.samplerate is None:
-            raise Exception("Cannot decode without samplerate.")
+        if not self.samplerate:
+            raise SamplerateError('Cannot decode without samplerate.')
         for (self.samplenum, pins) in data:
 
             data = pins[0]
index ced58cde5d093278b93f8af7328be135e7482729..b46fd1de194309457f067d4dc1a1841fdf78d376 100644 (file)
@@ -269,7 +269,7 @@ class Decoder(srd.Decoder):
 
     def decode(self, ss, es, data):
         if not self.samplerate:
-            raise SamplerateError("Cannot decode without samplerate.")
+            raise SamplerateError('Cannot decode without samplerate.')
         for (self.samplenum, pins) in data:
 
             # Ignore identical samples early on (for performance reasons).
index 989a5a5eaf9433ec653b60d3bf12c0d4f4e82468..dc42a4e5d1900a84d892554ed655006fd8b56781 100644 (file)
@@ -33,6 +33,9 @@ Packet:
 <value>: integer
 '''
 
+class SamplerateError(Exception):
+    pass
+
 class Decoder(srd.Decoder):
     api_version = 2
     id = 'i2s'
@@ -128,8 +131,8 @@ class Decoder(srd.Decoder):
         return bytes([lo, hi])
 
     def decode(self, ss, es, data):
-        if self.samplerate is None:
-            raise Exception("Cannot decode without samplerate.")
+        if not self.samplerate:
+            raise SamplerateError('Cannot decode without samplerate.')
         for self.samplenum, (sck, ws, sd) in data:
 
             # Ignore sample if the bit clock hasn't changed.
index d9091bede8bd16fbe3e5e30bfe7c1e3f2dd01635..ce2e9f23cced6d52176eefe083973871f862ccfc 100644 (file)
@@ -21,6 +21,9 @@
 import sigrokdecode as srd
 from .lists import *
 
+class SamplerateError(Exception):
+    pass
+
 class Decoder(srd.Decoder):
     api_version = 2
     id = 'ir_nec'
@@ -148,8 +151,8 @@ class Decoder(srd.Decoder):
         return ret == 0
 
     def decode(self, ss, es, data):
-        if self.samplerate is None:
-            raise Exception("Cannot decode without samplerate.")
+        if not self.samplerate:
+            raise SamplerateError('Cannot decode without samplerate.')
         for (self.samplenum, pins) in data:
             self.ir = pins[0]
 
index 885b29d14450728406b7848f9cd7d36bdda0ebe6..bd99826da56670719751425539cca947659d9c0e 100644 (file)
@@ -21,6 +21,9 @@
 import sigrokdecode as srd
 from .lists import *
 
+class SamplerateError(Exception):
+    pass
+
 class Decoder(srd.Decoder):
     api_version = 2
     id = 'ir_rc5'
@@ -133,8 +136,8 @@ class Decoder(srd.Decoder):
         self.state = 'IDLE'
 
     def decode(self, ss, es, data):
-        if self.samplerate is None:
-            raise Exception("Cannot decode without samplerate.")
+        if not self.samplerate:
+            raise SamplerateError('Cannot decode without samplerate.')
         for (self.samplenum, pins) in data:
 
             self.ir = pins[0]
index 9503d15b93fb7c80eca3144b1728652fb3db857c..93cd51a1a1bdd984a4aa0536f18d42e8de93d225 100644 (file)
@@ -20,6 +20,9 @@
 
 import sigrokdecode as srd
 
+class SamplerateError(Exception):
+    pass
+
 class Decoder(srd.Decoder):
     api_version = 2
     id = 'onewire_link'
@@ -185,8 +188,8 @@ class Decoder(srd.Decoder):
                  % (time_min*1000000, time_max*1000000)]])
 
     def decode(self, ss, es, data):
-        if self.samplerate is None:
-            raise Exception("Cannot decode without samplerate.")
+        if not self.samplerate:
+            raise SamplerateError('Cannot decode without samplerate.')
         for (self.samplenum, (owr, pwr)) in data:
             # State machine.
             if self.state == 'WAIT FOR FALLING EDGE':
index 5c7df196370f2643378697199a63a3490dae1375..96c0689f8a7e6ea04ccc57caca27885c4d522d72 100644 (file)
@@ -265,7 +265,7 @@ class Decoder(srd.Decoder):
 
     def decode(self, ss, es, data):
         if not self.samplerate:
-            raise SamplerateError("Cannot decode without samplerate.")
+            raise SamplerateError('Cannot decode without samplerate.')
         # Either MISO or MOSI can be omitted (but not both). CS# is optional.
         for (self.samplenum, pins) in data:
 
index ff8a5163a40a844a57a69b3d4485cc680b50324f..da5e3033b3023cce80f8416ac96b580815d80eb0 100644 (file)
@@ -69,6 +69,9 @@ def parity_ok(parity_type, parity_bit, data, num_data_bits):
     else:
         raise Exception('Invalid parity type: %d' % parity_type)
 
+class SamplerateError(Exception):
+    pass
+
 class Decoder(srd.Decoder):
     api_version = 2
     id = 'uart'
@@ -327,8 +330,8 @@ class Decoder(srd.Decoder):
         self.putg([rxtx + 4, ['Stop bit', 'Stop', 'T']])
 
     def decode(self, ss, es, data):
-        if self.samplerate is None:
-            raise Exception("Cannot decode without samplerate.")
+        if not self.samplerate:
+            raise SamplerateError('Cannot decode without samplerate.')
         for (self.samplenum, pins) in data:
 
             # Note: Ignoring identical samples here for performance reasons
index a21fe8da2e2ea2ad1805f5b77c1b6dfd64f67961..59db0d4cce66938df92ff880c66f68866a8f1cf8 100644 (file)
@@ -73,6 +73,9 @@ sym_idx = {
     'SE1': 3,
 }
 
+class SamplerateError(Exception):
+    pass
+
 class Decoder(srd.Decoder):
     api_version = 2
     id = 'usb_signalling'
@@ -217,8 +220,8 @@ class Decoder(srd.Decoder):
         self.oldsym = sym
 
     def decode(self, ss, es, data):
-        if self.samplerate is None:
-            raise Exception("Cannot decode without samplerate.")
+        if not self.samplerate:
+            raise SamplerateError('Cannot decode without samplerate.')
         for (self.samplenum, pins) in data:
             # State machine.
             if self.state == 'IDLE':