X-Git-Url: http://sigrok.org/gitweb/?a=blobdiff_plain;f=src%2Flibsigrok-internal.h;h=627e243cc8348652d5c321fd9664bf6e578b8708;hb=HEAD;hp=e5033085b78c8f8e0d499d99c49fb7cad62249df;hpb=c4f0fdab273bcf4c06444a05be296e8d04c6d7a9;p=libsigrok.git diff --git a/src/libsigrok-internal.h b/src/libsigrok-internal.h index e5033085..68a45f27 100644 --- a/src/libsigrok-internal.h +++ b/src/libsigrok-internal.h @@ -1678,17 +1678,20 @@ struct drv_context { /*--- log.c -----------------------------------------------------------------*/ +/* Provide a macro for other source code locations to re-use. */ #if defined(_WIN32) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4)) /* * On MinGW, we need to specify the gnu_printf format flavor or GCC * will assume non-standard Microsoft printf syntax. */ -SR_PRIV int sr_log(int loglevel, const char *format, ...) - __attribute__((__format__ (__gnu_printf__, 2, 3))); +#define ATTR_FMT_PRINTF(fmt_pos, arg_pos) \ + __attribute__((__format__ (__gnu_printf__, fmt_pos, arg_pos))) #else -SR_PRIV int sr_log(int loglevel, const char *format, ...) G_GNUC_PRINTF(2, 3); +#define ATTR_FMT_PRINTF(fmt_pos, arg_pos) G_GNUC_PRINTF(fmt_pos, arg_pos) #endif +SR_PRIV int sr_log(int loglevel, const char *format, ...) ATTR_FMT_PRINTF(2, 3); + /* Message logging helpers with subsystem-specific prefix string. */ #define sr_spew(...) sr_log(SR_LOG_SPEW, LOG_PREFIX ": " __VA_ARGS__) #define sr_dbg(...) sr_log(SR_LOG_DBG, LOG_PREFIX ": " __VA_ARGS__) @@ -2851,8 +2854,10 @@ struct feed_queue_analog; SR_API struct feed_queue_logic *feed_queue_logic_alloc( const struct sr_dev_inst *sdi, size_t sample_count, size_t unit_size); -SR_API int feed_queue_logic_submit(struct feed_queue_logic *q, - const uint8_t *data, size_t count); +SR_API int feed_queue_logic_submit_one(struct feed_queue_logic *q, + const uint8_t *data, size_t repeat_count); +SR_API int feed_queue_logic_submit_many(struct feed_queue_logic *q, + const uint8_t *data, size_t samples_count); SR_API int feed_queue_logic_flush(struct feed_queue_logic *q); SR_API int feed_queue_logic_send_trigger(struct feed_queue_logic *q); SR_API void feed_queue_logic_free(struct feed_queue_logic *q); @@ -2864,8 +2869,8 @@ SR_API int feed_queue_analog_mq_unit(struct feed_queue_analog *q, enum sr_mq mq, enum sr_mqflag mq_flag, enum sr_unit unit); SR_API int feed_queue_analog_scale_offset(struct feed_queue_analog *q, const struct sr_rational *scale, const struct sr_rational *offset); -SR_API int feed_queue_analog_submit(struct feed_queue_analog *q, - float data, size_t count); +SR_API int feed_queue_analog_submit_one(struct feed_queue_analog *q, + float data, size_t repeat_count); SR_API int feed_queue_analog_flush(struct feed_queue_analog *q); SR_API void feed_queue_analog_free(struct feed_queue_analog *q);