]> sigrok.org Git - libsigrok.git/blobdiff - src/output/output.c
output: Added preferred file extension field
[libsigrok.git] / src / output / output.c
index a2d7c5107ef5352f349cccd34c351c1c98717549..7eaa489ee8561142f97fabc3aa964526ab47cf8c 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * This file is part of the libsigrok project.
  *
- * Copyright (C) 2010-2012 Bert Vermeulen <bert@biot.com>
+ * Copyright (C) 2014 Bert Vermeulen <bert@biot.com>
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -60,6 +60,7 @@ extern SR_PRIV struct sr_output_module output_gnuplot;
 extern SR_PRIV struct sr_output_module output_chronovu_la8;
 extern SR_PRIV struct sr_output_module output_csv;
 extern SR_PRIV struct sr_output_module output_analog;
+extern SR_PRIV struct sr_output_module output_srzip;
 extern SR_PRIV struct sr_output_module output_wav;
 /* @endcond */
 
@@ -74,6 +75,7 @@ static const struct sr_output_module *output_module_list[] = {
        &output_vcd,
        &output_chronovu_la8,
        &output_analog,
+       &output_srzip,
        &output_wav,
        NULL,
 };
@@ -133,6 +135,25 @@ SR_API const char *sr_output_description_get(const struct sr_output_module *o)
        return o->desc;
 }
 
+/**
+ * Returns the specified output module's file extensions typical for the file
+ * format, as a NULL terminated array, or returns a NULL pointer if there is
+ * no preferred extension.
+ * @note these are a suggestions only.
+ *
+ * @since 0.4.0
+ */
+SR_API const char *const *sr_output_extensions_get(
+               const struct sr_output_module *o)
+{
+       if (!o) {
+               sr_err("Invalid output module NULL!");
+               return NULL;
+       }
+
+       return o->exts;
+}
+
 /**
  * Return the output module with the specified ID, or NULL if no module
  * with that id is found.