]> sigrok.org Git - libsigrokdecode.git/blobdiff - decoders/xfp/pd.py
rfm12: Cosmetics.
[libsigrokdecode.git] / decoders / xfp / pd.py
index 3d204ad99095db3fc5dcdba6f5923838f95c533f..9a6543c2404ebf08db5d64ec880993dc48b87200 100644 (file)
 ## along with this program; if not, see <http://www.gnu.org/licenses/>.
 ##
 
-# XFP protocol decoder
-
 import sigrokdecode as srd
-import os
 
 MODULE_ID = {
     0x01: 'GBIC',
@@ -194,7 +191,7 @@ AUX_TYPES = [
 ]
 
 class Decoder(srd.Decoder):
-    api_version = 1
+    api_version = 2
     id = 'xfp'
     name = 'XFP'
     longname = '10 Gigabit Small Form Factor Pluggable Module (XFP)'
@@ -202,13 +199,10 @@ class Decoder(srd.Decoder):
     license = 'gplv3+'
     inputs = ['i2c']
     outputs = ['xfp']
-    probes = []
-    optional_probes = []
-    options = {}
-    annotations = [
-        ['XFP field names and values', 'XFP structure field names and values'],
-        ['XFP fields', 'XFP structure fields'],
-    ]
+    annotations = (
+        ('fieldnames-and-values', 'XFP structure field names and values'),
+        ('fields', 'XFP structure fields'),
+    )
 
     def __init__(self, **kwargs):
         # Received data items, used as an index into samplenum/data
@@ -276,8 +270,8 @@ class Decoder(srd.Decoder):
             255: self.maybe_ascii,
         }
 
-    def start(self, metadata):
-        self.out_ann = self.add(srd.OUTPUT_ANN, 'xfp')
+    def start(self):
+        self.out_ann = self.register(srd.OUTPUT_ANN)
 
     def decode(self, ss, es, data):
         cmd, data = data
@@ -650,4 +644,3 @@ class Decoder(srd.Decoder):
         self.annotate("AUX1 monitoring", aux)
         aux = AUX_TYPES[data[0] & 0x0f]
         self.annotate("AUX2 monitoring", aux)
-