X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=output%2Foutput_binary.c;h=e3edf62ef3e46fbf28bdad120f94d5eeac9771d0;hb=c91404191e6b31ffe40edd8de469876a02c81d57;hp=53240eebf8a80da4e471c423f1f771b7a0b12b56;hpb=9601818842c469339038e85b3c110b66d1a31d4b;p=libsigrok.git diff --git a/output/output_binary.c b/output/output_binary.c index 53240eeb..e3edf62e 100644 --- a/output/output_binary.c +++ b/output/output_binary.c @@ -25,53 +25,29 @@ #include "config.h" -static int event(struct output *o, int event_type, char **data_out, - uint64_t *length_out) -{ - - /* Prevent compiler warnings. */ - o = o; - event_type = event_type; - data_out = data_out; - - switch (event_type) { - case DF_TRIGGER: - break; - case DF_END: - *length_out = 0; - break; - } - - return SIGROK_OK; -} - -static int data(struct output *o, char *data_in, uint64_t length_in, +static int data(struct sr_output *o, const char *data_in, uint64_t length_in, char **data_out, uint64_t *length_out) { - uint64_t outsize; char *outbuf; /* Prevent compiler warnings. */ o = o; - outsize = length_in; - outbuf = calloc(1, outsize); - if (outbuf == NULL) - return SIGROK_ERR_MALLOC; + if (!(outbuf = calloc(1, length_in))) + return SR_ERR_MALLOC; - /* TODO: Are disabled probes handled correctly? */ memcpy(outbuf, data_in, length_in); - *data_out = outbuf; - *length_out = outsize; + *length_out = length_in; - return SIGROK_OK; + return SR_OK; } -struct output_format output_binary = { +struct sr_output_format output_binary = { "binary", "Raw binary", + SR_DF_LOGIC, NULL, data, - event, + NULL, };