]> sigrok.org Git - libsigrok.git/blobdiff - libsigrok.h
drivers: return SR_ERR_NA on unsupported config key
[libsigrok.git] / libsigrok.h
index a606dfb08ee9933bb4048079061e51b02c5ecf53..294bb15d7d3ba0a5fd7827ddf89b9640dfaead1a 100644 (file)
@@ -70,6 +70,7 @@ enum {
        SR_ERR_ARG        = -3, /**< Function argument error. */
        SR_ERR_BUG        = -4, /**< Errors hinting at internal bugs. */
        SR_ERR_SAMPLERATE = -5, /**< Incorrect samplerate. */
+       SR_ERR_NA         = -6, /**< Not applicable. */
 };
 
 #define SR_MAX_NUM_PROBES    64 /* Limited by uint64_t. */
@@ -636,6 +637,12 @@ enum {
        /** The device supports setting its sample interval, in ms. */
        SR_CONF_SAMPLE_INTERVAL,
 
+       /** Number of timebases, as related to SR_CONF_TIMEBASE.  */
+       SR_CONF_NUM_TIMEBASE,
+
+       /** Number of vertical divisions, as related to SR_CONF_VDIV.  */
+       SR_CONF_NUM_VDIV,
+
        /*--- Special stuff -------------------------------------------------*/
 
        /** Scan options supported by the driver. */
@@ -769,6 +776,14 @@ struct sr_session {
        struct source *sources;
        GPollFD *pollfds;
        int source_timeout;
+
+       /*
+        * These are our synchronization primitives for stopping the session in
+        * an async fashion. We need to make sure the session is stopped from
+        * within the session thread itself.
+        */
+       GMutex stop_mutex;
+       gboolean abort_session;
 };
 
 #include "proto.h"