##
-## This file is part of the sigrok project.
+## This file is part of the libsigrokdecode project.
##
## Copyright (C) 2012 Bert Vermeulen <bert@biot.com>
##
##
'''
-Takes input from the I2C protocol decoder and filters out traffic from/to
-a single address on the I2C bus.
+This is a generic I²C filtering protocol decoder.
-It then outputs the filtered data one byte at a time as OUTPUT_PROTO up the
-protocol decoder stack. No annotations are output.
+It takes input from the I²C protocol decoder and removes all traffic
+except that from/to the specified slave address and/or direction.
-The I2C address to filter out should be passed in as an option 'address', as
-an integer. A specific read or write operation can be selected with the
-'direction' option, which should be 'read' or 'write'.
+It then outputs the filtered data again as OUTPUT_PROTO of type/format 'i2c'
+(up the protocol decoder stack). No annotations are output.
+
+The I²C slave address to filter out should be passed in as an option
+'address', as an integer. A specific read or write operation can be selected
+with the 'direction' option, which should be 'read', 'write', or 'both'.
Both of these are optional; if no options are specified the entire payload
-of the I2C session will be output.
+of the I²C session will be output.
'''
-from .i2cfilter import *
-
+from .pd import Decoder