X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=src%2Foutput%2Fgnuplot.c;h=8cd67b3e83b82c2d2d3356f49a61be66150487d9;hb=dc7125bb7cfe34f63695ea928dda17594dfac3d2;hp=a9feec67ba056f2f55daeed75990fca6eb1619e9;hpb=155b680da482cea2381becb73c51cfb838bff31e;p=libsigrok.git diff --git a/src/output/gnuplot.c b/src/output/gnuplot.c index a9feec67..8cd67b3e 100644 --- a/src/output/gnuplot.c +++ b/src/output/gnuplot.c @@ -44,18 +44,20 @@ static const char *gnuplot_header2 = "\ # 0\t\tSample counter (for internal gnuplot purposes)\n"; -static int init(struct sr_output *o) +static int init(struct sr_output *o, GHashTable *options) { struct context *ctx; struct sr_channel *ch; GSList *l; unsigned int i; + (void)options; + if (!o || !o->sdi) return SR_ERR_ARG; ctx = g_malloc0(sizeof(struct context)); - o->internal = ctx; + o->priv = ctx; ctx->num_enabled_channels = 0; for (l = o->sdi->channels; l; l = l->next) { ch = l->data; @@ -84,7 +86,7 @@ static int init(struct sr_output *o) return SR_OK; } -static GString *gen_header(struct sr_output *o) +static GString *gen_header(const struct sr_output *o) { struct context *ctx; struct sr_channel *ch; @@ -94,7 +96,7 @@ static GString *gen_header(struct sr_output *o) unsigned int num_channels, i; char *samplerate_s; - ctx = o->internal; + ctx = o->priv; if (ctx->samplerate == 0) { if (sr_config_get(o->sdi->driver, o->sdi, NULL, SR_CONF_SAMPLERATE, &gvar) == SR_OK) { @@ -130,7 +132,7 @@ static GString *gen_header(struct sr_output *o) return header; } -static int receive(struct sr_output *o, const struct sr_datafeed_packet *packet, +static int receive(const struct sr_output *o, const struct sr_datafeed_packet *packet, GString **out) { const struct sr_datafeed_meta *meta; @@ -142,9 +144,9 @@ static int receive(struct sr_output *o, const struct sr_datafeed_packet *packet, unsigned int curbit, p, idx, i; *out = NULL; - if (!o || !o->internal) + if (!o || !o->priv) return SR_ERR_BUG; - ctx = o->internal; + ctx = o->priv; if (packet->type == SR_DF_META) { meta = packet->payload; @@ -205,9 +207,9 @@ static int cleanup(struct sr_output *o) { struct context *ctx; - if (!o || !o->internal) + if (!o || !o->priv) return SR_ERR_BUG; - ctx = o->internal; + ctx = o->priv; g_free(ctx->channel_index); g_free(ctx->prevsample); g_free(ctx); @@ -215,9 +217,11 @@ static int cleanup(struct sr_output *o) return SR_OK; } -SR_PRIV struct sr_output_format output_gnuplot = { +SR_PRIV struct sr_output_module output_gnuplot = { .id = "gnuplot", - .description = "Gnuplot", + .name = "Gnuplot", + .desc = "Gnuplot file format", + .options = NULL, .init = init, .receive = receive, .cleanup = cleanup,