]> sigrok.org Git - libsigrokdecode.git/blobdiff - libsigrokdecode.h.in
Drop obsolete report() method.
[libsigrokdecode.git] / libsigrokdecode.h.in
index c61a0e4d17d6c0a11c094fd8509b9d79d676d62e..a654373c570048e6a944ac110eb6e73085e27059 100644 (file)
@@ -160,16 +160,15 @@ enum {
  */
 enum {
        SRD_OUTPUT_ANN,
-       SRD_OUTPUT_PROTO,
+       SRD_OUTPUT_PYTHON,
        SRD_OUTPUT_BINARY,
+       SRD_OUTPUT_META,
 };
 
 #define SRD_MAX_NUM_PROBES 64
 
 enum {
-       SRD_CONF_NUM_PROBES = 10000,
-       SRD_CONF_UNITSIZE,
-       SRD_CONF_SAMPLERATE,
+       SRD_CONF_SAMPLERATE = 10000,
 };
 
 struct srd_decoder {
@@ -242,9 +241,7 @@ struct srd_decoder_inst {
        GSList *pd_output;
        int dec_num_probes;
        int *dec_probemap;
-       int data_num_probes;
        int data_unitsize;
-       uint64_t data_samplerate;
        GSList *next_di;
 };
 
@@ -253,15 +250,22 @@ struct srd_pd_output {
        int output_type;
        struct srd_decoder_inst *di;
        char *proto_id;
+       /* Only used for OUTPUT_META. */
+       const GVariantType *meta_type;
+       char *meta_name;
+       char *meta_descr;
 };
 
 struct srd_proto_data {
        uint64_t start_sample;
        uint64_t end_sample;
        struct srd_pd_output *pdo;
-       int ann_format;
        void *data;
 };
+struct srd_proto_data_annotation {
+       int ann_format;
+       char **ann_text;
+};
 
 typedef void (*srd_pd_output_callback_t)(struct srd_proto_data *pdata,
                                         void *cb_data);
@@ -304,10 +308,11 @@ SRD_API struct srd_decoder_inst *srd_inst_find_by_id(struct srd_session *sess,
                const char *inst_id);
 SRD_API int srd_session_new(struct srd_session **sess);
 SRD_API int srd_session_start(struct srd_session *sess);
-SRD_API int srd_session_config_set(struct srd_session *sess, int key,
+SRD_API int srd_session_metadata_set(struct srd_session *sess, int key,
                GVariant *data);
 SRD_API int srd_session_send(struct srd_session *sess,
-               uint64_t start_samplenum, const uint8_t *inbuf, uint64_t inbuflen);
+               uint64_t start_samplenum, uint64_t end_samplenum,
+               const uint8_t *inbuf, uint64_t inbuflen);
 SRD_API int srd_session_destroy(struct srd_session *sess);
 SRD_API int srd_pd_output_callback_add(struct srd_session *sess,
                int output_type, srd_pd_output_callback_t cb, void *cb_data);