SR_PRIV struct sr_config *sr_config_new(int key, GVariant *data);
SR_PRIV void sr_config_free(struct sr_config *src);
SR_PRIV int sr_source_remove(int fd);
+SR_PRIV int sr_source_remove_pollfd(GPollFD *pollfd);
+SR_PRIV int sr_source_remove_channel(GIOChannel *channel);
SR_PRIV int sr_source_add(int fd, int events, int timeout,
sr_receive_data_callback cb, void *cb_data);
+SR_PRIV int sr_source_add_pollfd(GPollFD *pollfd, int timeout,
+ sr_receive_data_callback cb, void *cb_data);
+SR_PRIV int sr_source_add_channel(GIOChannel *channel, int events, int timeout,
+ sr_receive_data_callback cb, void *cb_data);
/*--- session.c -------------------------------------------------------------*/
SR_PRIV int sr_session_send(const struct sr_dev_inst *sdi,
const struct sr_datafeed_packet *packet);
-SR_PRIV int sr_session_stop_sync(void);
+SR_PRIV int sr_session_stop_sync(struct sr_session *session);
SR_PRIV int sr_sessionfile_check(const char *filename);
-SR_PRIV struct sr_trigger *sr_session_trigger_get(void);
/*--- std.c -----------------------------------------------------------------*/
SR_PRIV int sr_atof(const char *str, float *ret);
SR_PRIV int sr_atof_ascii(const char *str, float *ret);
+/*--- soft-trigger.c --------------------------------------------------------*/
+
+struct soft_trigger_logic {
+ const struct sr_dev_inst *sdi;
+ const struct sr_trigger *trigger;
+ int count;
+ int unitsize;
+ int cur_stage;
+ uint8_t *prev_sample;
+};
+
+SR_PRIV struct soft_trigger_logic *soft_trigger_logic_new(
+ const struct sr_dev_inst *sdi, struct sr_trigger *trigger);
+SR_PRIV void soft_trigger_logic_free(struct soft_trigger_logic *st);
+SR_PRIV int soft_trigger_logic_check(struct soft_trigger_logic *st, uint8_t *buf,
+ int len);
+
/*--- hardware/common/serial.c ----------------------------------------------*/
#ifdef HAVE_LIBSERIALPORT