]> sigrok.org Git - libsigrok.git/blobdiff - proto.h
use a dynamically expanding probe list
[libsigrok.git] / proto.h
diff --git a/proto.h b/proto.h
index ce61d009483fcbcc3d3073c377433ec8c67c0106..a88a6deb3c7bbca6b7edc62d314548f1e5f4dada 100644 (file)
--- a/proto.h
+++ b/proto.h
 #ifndef LIBSIGROK_SIGROK_PROTO_H
 #define LIBSIGROK_SIGROK_PROTO_H
 
+/**
+ * @file
+ *
+ * Header file containing API function prototypes.
+ */
+
 /*--- backend.c -------------------------------------------------------------*/
 
-SR_API int sr_init(void);
-SR_API int sr_exit(void);
+SR_API int sr_init(struct sr_context **ctx);
+SR_API int sr_exit(struct sr_context *ctx);
 
 /*--- log.c -----------------------------------------------------------------*/
 
@@ -56,18 +62,21 @@ SR_API int sr_dev_trigger_set(const struct sr_dev_inst *sdi, int probenum,
 SR_API gboolean sr_dev_has_hwcap(const struct sr_dev_inst *sdi, int hwcap);
 SR_API int sr_dev_config_set(const struct sr_dev_inst *sdi, int hwcap,
                const void *value);
+SR_API GSList *sr_dev_inst_list(const struct sr_dev_driver *driver);
+SR_API int sr_dev_inst_clear(const struct sr_dev_driver *driver);
 
 /*--- filter.c --------------------------------------------------------------*/
 
-SR_API int sr_filter_probes(int in_unitsize, int out_unitsize,
-                           const int *probelist, const uint8_t *data_in,
+SR_API int sr_filter_probes(unsigned int in_unitsize, unsigned int out_unitsize,
+                           const GArray *probe_array, const uint8_t *data_in,
                            uint64_t length_in, uint8_t **data_out,
                            uint64_t *length_out);
 
 /*--- hwdriver.c ------------------------------------------------------------*/
 
 SR_API struct sr_dev_driver **sr_driver_list(void);
-SR_API int sr_driver_init(struct sr_dev_driver *driver);
+SR_API int sr_driver_init(struct sr_context *ctx,
+               struct sr_dev_driver *driver);
 SR_API GSList *sr_driver_scan(struct sr_dev_driver *driver, GSList *options);
 SR_API int sr_info_get(struct sr_dev_driver *driver, int id,
                const void **data, const struct sr_dev_inst *sdi);
@@ -80,7 +89,7 @@ SR_API const struct sr_hwcap_option *sr_devopt_name_get(const char *optname);
 /*--- session.c -------------------------------------------------------------*/
 
 typedef void (*sr_datafeed_callback_t)(const struct sr_dev_inst *sdi,
-               struct sr_datafeed_packet *packet);
+               const struct sr_datafeed_packet *packet);
 
 /* Session setup */
 SR_API int sr_session_load(const char *filename);
@@ -120,6 +129,7 @@ SR_API struct sr_output_format **sr_output_list(void);
 
 /*--- 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(struct sr_rational *voltage);