X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=source%2Fdrv-protocol.h;h=28ab52bfa4717a97a25721d0a3e70fbfc78d2cd7;hb=1fd5630e86bdbe3d476d9f5613fe20fd08112c5d;hp=dae5ffed5e3c665df998412e1b757126d6541ffb;hpb=126eded091582d9b988d793141d6c428bc38457d;p=sigrok-util.git diff --git a/source/drv-protocol.h b/source/drv-protocol.h index dae5ffe..28ab52b 100644 --- a/source/drv-protocol.h +++ b/source/drv-protocol.h @@ -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}> * @@ -17,22 +17,33 @@ * along with this program. If not, see . */ -#ifndef LIBSIGROK_${upper}_H -#define LIBSIGROK_${upper}_H +#ifndef LIBSIGROK_HARDWARE_${upper}_PROTOCOL_H +#define LIBSIGROK_HARDWARE_${upper}_PROTOCOL_H + +#include +#include +#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);