]> sigrok.org Git - libsigrokdecode.git/blobdiff - decoders/usb_request/pd.py
decoders: Add/update tags for each PD.
[libsigrokdecode.git] / decoders / usb_request / pd.py
index 1bd287851f5a90a9b230adbf21ef24d3c2a37da8..2835bf9036142314adff4d167173b0997b799124 100644 (file)
@@ -120,6 +120,7 @@ class Decoder(srd.Decoder):
     license = 'gplv2+'
     inputs = ['usb_packet']
     outputs = ['usb_request']
+    tags = ['PC']
     annotations = (
         ('request-setup-read', 'Setup: Device-to-host'),
         ('request-setup-write', 'Setup: Host-to-device'),
@@ -136,6 +137,9 @@ class Decoder(srd.Decoder):
     )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         self.samplerate = None
         self.request = {}
         self.request_id = 0
@@ -168,7 +172,8 @@ class Decoder(srd.Decoder):
     def metadata(self, key, value):
         if key == srd.SRD_CONF_SAMPLERATE:
             self.samplerate = value
-            self.secs_per_sample = float(1) / float(self.samplerate)
+            if self.samplerate:
+                self.secs_per_sample = float(1) / float(self.samplerate)
 
     def start(self):
         self.out_binary = self.register(srd.OUTPUT_BINARY)