]> sigrok.org Git - sigrok-util.git/blobdiff - source/drv-protocol.h
new-driver: Update for probe groups changes.
[sigrok-util.git] / source / drv-protocol.h
index dae5ffed5e3c665df998412e1b757126d6541ffb..28ab52bfa4717a97a25721d0a3e70fbfc78d2cd7 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * This file is part of the sigrok project.
+ * This file is part of the libsigrok project.
  *
  * Copyright (C) ${year} ${author} <${email}>
  *
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  */
 
-#ifndef LIBSIGROK_${upper}_H
-#define LIBSIGROK_${upper}_H
+#ifndef LIBSIGROK_HARDWARE_${upper}_PROTOCOL_H
+#define LIBSIGROK_HARDWARE_${upper}_PROTOCOL_H
+
+#include <stdint.h>
+#include <glib.h>
+#include "libsigrok.h"
+#include "libsigrok-internal.h"
+
+/* Message logging helpers with subsystem-specific prefix string. */
+#define LOG_PREFIX "${short}: "
+#define sr_log(l, s, args...) sr_log(l, LOG_PREFIX s, ## args)
+#define sr_spew(s, args...) sr_spew(LOG_PREFIX s, ## args)
+#define sr_dbg(s, args...) sr_dbg(LOG_PREFIX s, ## args)
+#define sr_info(s, args...) sr_info(LOG_PREFIX s, ## args)
+#define sr_warn(s, args...) sr_warn(LOG_PREFIX s, ## args)
+#define sr_err(s, args...) sr_err(LOG_PREFIX s, ## args)
 
 /** Private, per-device-instance driver context. */
 struct dev_context {
-       /** The current sampling limit (in number of samples). */
-       uint64_t limit_samples;
+       /* Model-specific information */
+
+       /* Acquisition settings */
 
-       /** The current sampling limit (in ms). */
-       uint64_t limit_msec;
+       /* Operational state */
 
-       /** Opaque pointer passed in by the frontend. */
-       void *cb_data;
+       /* Temporary state across callbacks */
 
-       /** The current number of already received samples. */
-       uint64_t num_samples;
 };
 
 SR_PRIV int ${lib}_receive_data(int fd, int revents, void *cb_data);