X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=proto.h;h=23d415b4e79ffe2e5afffda74bf9095f092954d3;hb=8789564070383e058cf5c9511c80c2398ff221e2;hp=49353d55c10533eec1d470c5f0fbc4da4c40d168;hpb=144f6660d004d60264a57db7150ed90e5f68ea77;p=libsigrok.git diff --git a/proto.h b/proto.h index 49353d55..23d415b4 100644 --- a/proto.h +++ b/proto.h @@ -49,8 +49,6 @@ SR_API int sr_dev_channel_name_set(const struct sr_dev_inst *sdi, int channelnum, const char *name); SR_API int sr_dev_channel_enable(const struct sr_dev_inst *sdi, int channelnum, gboolean state); -SR_API int sr_dev_trigger_set(const struct sr_dev_inst *sdi, int channelnum, - const char *trigger); SR_API gboolean sr_dev_has_option(const struct sr_dev_inst *sdi, int key); SR_API GSList *sr_dev_list(const struct sr_dev_driver *driver); SR_API int sr_dev_clear(const struct sr_dev_driver *driver); @@ -82,6 +80,7 @@ SR_API const struct sr_config_info *sr_config_info_name_get(const char *optname) typedef void (*sr_datafeed_callback)(const struct sr_dev_inst *sdi, const struct sr_datafeed_packet *packet, void *cb_data); +SR_API struct sr_trigger *sr_session_trigger_get(void); /* Session setup */ SR_API int sr_session_load(const char *filename); @@ -90,6 +89,7 @@ SR_API int sr_session_destroy(void); SR_API int sr_session_dev_remove_all(void); SR_API int sr_session_dev_add(const struct sr_dev_inst *sdi); SR_API int sr_session_dev_list(GSList **devlist); +SR_API int sr_session_trigger_set(struct sr_trigger *trig); /* Datafeed setup */ SR_API int sr_session_datafeed_callback_remove_all(void); @@ -129,14 +129,20 @@ SR_API int sr_output_send(struct sr_output *o, const struct sr_datafeed_packet *packet, GString **out); SR_API int sr_output_free(struct sr_output *o); +/*--- trigger.c -------------------------------------------------------------*/ + +SR_API struct sr_trigger *sr_trigger_new(char *name); +SR_API void sr_trigger_free(struct sr_trigger *trig); +SR_API struct sr_trigger_stage *sr_trigger_stage_add(struct sr_trigger *trig); +SR_API int sr_trigger_match_add(struct sr_trigger_stage *stage, + struct sr_channel *ch, int trigger_match, float value); + /*--- strutil.c -------------------------------------------------------------*/ SR_API char *sr_si_string_u64(uint64_t x, const char *unit); SR_API char *sr_samplerate_string(uint64_t samplerate); SR_API char *sr_period_string(uint64_t frequency); SR_API char *sr_voltage_string(uint64_t v_p, uint64_t v_q); -SR_API char **sr_parse_triggerstring(const struct sr_dev_inst *sdi, - const char *triggerstring); SR_API int sr_parse_sizestring(const char *sizestring, uint64_t *size); SR_API uint64_t sr_parse_timestring(const char *timestring); SR_API gboolean sr_parse_boolstring(const char *boolstring);