]> sigrok.org Git - libsigrok.git/blobdiff - sigrok.h.in
sr: zeroplus: Fix a segfault.
[libsigrok.git] / sigrok.h.in
index 605aece4389e880a4516300ad69255d681f825b8..fb8e0d53b732dffb501abe29244e0599e9c1a75c 100644 (file)
@@ -54,7 +54,8 @@ extern "C" {
 #define SR_ERR               -1 /* Generic/unspecified error */
 #define SR_ERR_MALLOC        -2 /* Malloc/calloc/realloc error */
 #define SR_ERR_ARG           -3 /* Function argument error */
-#define SR_ERR_SAMPLERATE    -4 /* Incorrect samplerate */
+#define SR_ERR_BUG           -4 /* Errors hinting at internal bugs */
+#define SR_ERR_SAMPLERATE    -5 /* Incorrect samplerate */
 
 #define SR_MAX_NUM_PROBES      64 /* Limited by uint64_t. */
 #define SR_MAX_PROBENAME_LEN   32
@@ -84,15 +85,6 @@ enum {
        SR_T_BOOL,
 };
 
-#if 0
-/* (Unused) protocol decoder stack entry */
-struct sr_protocol {
-       char *name;
-       int id;
-       int stackindex;
-};
-#endif
-
 /* sr_datafeed_packet.type values */
 enum {
        SR_DF_HEADER,
@@ -126,25 +118,6 @@ struct sr_datafeed_logic {
        void *data;
 };
 
-struct sr_datafeed_pd {
-       char *protocol;
-       char *annotation;
-       unsigned char *data;
-};
-
-#if defined(HAVE_LA_ALSA)
-struct sr_analog_probe {
-       uint8_t att;
-       uint8_t res;    /* Needs to be a power of 2, FIXME */
-       uint16_t val;   /* Max hardware ADC width is 16bits */
-};
-
-struct sr_analog_sample {
-       uint8_t num_probes; /* Max hardware probes is 256 */
-       struct sr_analog_probe probes[];
-};
-#endif
-
 struct sr_input {
        struct sr_input_format *format;
        char *param;
@@ -177,17 +150,6 @@ struct sr_output_format {
                      uint64_t *length_out);
 };
 
-#if 0
-struct sr_analyzer {
-       char *name;
-       char *filename;
-       /*
-        * TODO: Parameters? If so, configured plugins need another struct.
-        * TODO: Input and output format?
-        */
-};
-#endif
-
 struct sr_datastore {
        /* Size in bytes of the number of units stored in this datastore */
        int ds_unitsize;
@@ -227,7 +189,7 @@ struct sr_probe {
 
 /* Hardware plugin capabilities */
 enum {
-       SR_HWCAP_DUMMY,             /* Used to terminate lists */
+       SR_HWCAP_DUMMY = 0, /* Used to terminate lists. Must be 0! */
 
        /*--- Device classes ------------------------------------------------*/
 
@@ -236,6 +198,11 @@ enum {
 
        /* TODO: SR_HWCAP_SCOPE, SW_HWCAP_PATTERN_GENERATOR, etc.? */
 
+       /*--- Device types --------------------------------------------------*/
+
+       /** The device is demo device. */
+       SR_HWCAP_DEMO_DEVICE,
+
        /*--- Device options ------------------------------------------------*/
 
        /** The device supports setting/changing its samplerate. */
@@ -401,8 +368,6 @@ struct sr_device_plugin {
 struct sr_session {
        /* List of struct sr_device* */
        GSList *devices;
-       /* List of struct analyzer* */
-       GSList *analyzers;
        /* list of sr_receive_data_callback */
        GSList *datafeed_callbacks;
        GTimeVal starttime;