]> sigrok.org Git - libsigrok.git/blobdiff - hardware/genericdmm/genericdmm.h
sr: replace published static option data with API calls
[libsigrok.git] / hardware / genericdmm / genericdmm.h
index 58d4a906dac2d009e30d56a656c33211122b7fd4..caf2221022fd31c973f396a0f6eb48fc67b301ec 100644 (file)
@@ -44,7 +44,13 @@ struct dev_profile {
        struct sr_hwopt *defaults_opts;
 };
 
-struct context {
+/* Private driver context. */
+struct drv_context {
+       GSList *instances;
+};
+
+/* Private, per-device-instance driver context. */
+struct dev_context {
        struct dev_profile *profile;
        uint64_t limit_samples;
        uint64_t limit_msec;
@@ -71,9 +77,13 @@ struct context {
 
 struct dmmchip {
        /* Optional, called once before measurement starts. */
-       int (*init) (struct context *ctx);
+       int (*init) (void);
+
+       /* Scan for devices with the given options. */
+       GSList *(*scan) (GSList *options);
+
        /* Called whenever a chunk of data arrives. */
-       int (*data) (struct context *ctx, unsigned char *data);
+       int (*data) (struct sr_dev_inst *sdi, unsigned char *data);
 };