]> sigrok.org Git - libsigrok.git/blobdiff - src/output/output.c
output: Added preferred file extension field
[libsigrok.git] / src / output / output.c
index 0029748bb7398510fc6abdc061ea37732ecf546c..7eaa489ee8561142f97fabc3aa964526ab47cf8c 100644 (file)
@@ -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.