#include <sigrok.h>
#include "config.h"
-static int init(struct output *o)
-{
- /* Prevent compiler warnings. */
- o = o;
-
- /* Nothing so far, but we might want to add stuff here later. */
- return 0;
-}
-
-static int event(struct output *o, int event_type, char **data_out,
- uint64_t *length_out)
-{
- char *outbuf;
- int outlen = 1; /* FIXME */
-
- /* Prevent compiler warnings. */
- o = o;
- event_type = event_type;
-
- switch (event_type) {
- case DF_TRIGGER:
- break;
- case DF_END:
- outbuf = calloc(1, outlen); /* FIXME */
- if (outbuf == NULL)
- return SIGROK_ERR_MALLOC;
- *data_out = outbuf;
- *length_out = outlen;
- break;
- }
-
- return SIGROK_OK;
-}
static int data(struct output *o, 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)
+ if (!(outbuf = calloc(1, length_in)))
return SIGROK_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;
}
struct output_format output_binary = {
"binary",
"Raw binary",
- init,
+ DF_LOGIC,
+ NULL,
data,
- event,
+ NULL,
};