]> sigrok.org Git - libsigrok.git/blobdiff - libsigrok-internal.h
session: Make sr_session_stop thread-safe
[libsigrok.git] / libsigrok-internal.h
index 5cbe845ce20aa7ba3408bcddafd0cbb74f7820c4..bd1b7289e979d3b760c819bec1356b25fe638ae9 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * This file is part of the sigrok project.
  *
- * Copyright (C) 2010-2012 Bert Vermeulen <bert@biot.com>
+ * Copyright (C) 2013 Bert Vermeulen <bert@biot.com>
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -48,9 +48,6 @@
 #define g_match_info_unref g_match_info_free
 #endif
 
-/* Size of a datastore chunk in units */
-#define DATASTORE_CHUNKSIZE (512 * 1024)
-
 struct sr_context {
 #ifdef HAVE_LIBUSB_1_0
        libusb_context *libusb_ctx;
@@ -116,6 +113,8 @@ SR_PRIV void sr_serial_dev_inst_free(struct sr_serial_dev_inst *serial);
 /*--- hwdriver.c ------------------------------------------------------------*/
 
 SR_PRIV void sr_hw_cleanup_all(void);
+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_add(int fd, int events, int timeout,
                          sr_receive_data_callback_t cb, void *cb_data);
@@ -124,6 +123,19 @@ SR_PRIV int sr_source_add(int fd, int events, int timeout,
 
 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);
+
+/*--- std.c -----------------------------------------------------------------*/
+
+typedef int (*dev_close_t)(struct sr_dev_inst *sdi);
+
+SR_PRIV int std_hw_init(struct sr_context *sr_ctx, struct sr_dev_driver *di,
+                       const char *prefix);
+SR_PRIV int std_hw_dev_acquisition_stop_serial(struct sr_dev_inst *sdi,
+                       void *cb_data, dev_close_t hw_dev_close_fn,
+                       struct sr_serial_dev_inst *serial, const char *prefix);
+SR_PRIV int std_session_send_df_header(const struct sr_dev_inst *sdi,
+                                      const char *prefix);
 
 /*--- hardware/common/serial.c ----------------------------------------------*/
 
@@ -229,7 +241,7 @@ SR_PRIV int sr_metex14_parse(const uint8_t *buf, float *floatval,
 #define RS9LCD_PACKET_SIZE 9
 
 /* Dummy info struct. The parser does not use it. */
-struct rs9lcd_info {};
+struct rs9lcd_info { int dummy; };
 
 SR_PRIV gboolean sr_rs9lcd_packet_valid(const uint8_t *buf);
 SR_PRIV int sr_rs9lcd_parse(const uint8_t *buf, float *floatval,