X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=libsigrokdecode.h;h=cf6479c99ff7fb7d6102b7634a3afc3b085d97c7;hb=819e508972da02a0dcff7f81178f0283546a9afd;hp=44402673479cd1af19d4599e7e9e5f3be5be7d52;hpb=ddcde1861eb029e17d2592b2fbf644e2e00f4835;p=libsigrokdecode.git diff --git a/libsigrokdecode.h b/libsigrokdecode.h index 4440267..cf6479c 100644 --- a/libsigrokdecode.h +++ b/libsigrokdecode.h @@ -190,7 +190,7 @@ struct srd_decoder { GSList *binary; /** - * List of logic output channels (item: id, description, samplerate). + * List of logic output channels (item: id, description). */ GSList *logic_output_channels; @@ -241,7 +241,6 @@ struct srd_decoder_annotation_row { struct srd_decoder_logic_output_channel { char *id; char *desc; - uint64_t samplerate; }; struct srd_decoder_inst { @@ -292,6 +291,9 @@ struct srd_decoder_inst { /** Requests termination of wait() and decode(). */ gboolean want_wait_terminate; + /** Requests that .wait() terminates a Python iteration. */ + gboolean communicate_eof; + /** Indicates the current state of the decoder stack. */ int decoder_state; @@ -324,12 +326,12 @@ struct srd_proto_data_annotation { struct srd_proto_data_binary { int bin_class; /* Index into "struct srd_decoder"->binary. */ uint64_t size; - const unsigned char *data; + const uint8_t *data; }; struct srd_proto_data_logic { - int logic_class; - uint64_t size; - const unsigned char *data; + int logic_group; + uint64_t repeat_count; /* Number of times the value in data was repeated. */ + const uint8_t *data; /* Bitfield containing the states of the logic outputs */ }; typedef void (*srd_pd_output_callback)(struct srd_proto_data *pdata, @@ -354,6 +356,7 @@ SRD_API int srd_session_metadata_set(struct srd_session *sess, int key, SRD_API int srd_session_send(struct srd_session *sess, uint64_t abs_start_samplenum, uint64_t abs_end_samplenum, const uint8_t *inbuf, uint64_t inbuflen, uint64_t unitsize); +SRD_API int srd_session_send_eof(struct srd_session *sess); SRD_API int srd_session_terminate_reset(struct srd_session *sess); SRD_API int srd_session_destroy(struct srd_session *sess); SRD_API int srd_pd_output_callback_add(struct srd_session *sess,