mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-01-21 22:58:16 +00:00
5b82274f17
Added two properties to the plugin: * ignored-event-types: A list of event types to be ignored when logging events * logged-event-types: A list of event types to be logged when logging events This commits also moves the "ignored-event-fields" property to using a proper GstValueList for the list of event fields to be taken into account, instead of the home grown separated by comas list of string, making the API more uniform. This also adds a simple helper method: `gst_validate_utils_get_strv`
79 lines
3.3 KiB
C
79 lines
3.3 KiB
C
/* GStreamer
|
|
*
|
|
* Copyright (C) 2013 Thibault Saunier <thibault.saunier@collabora.com>
|
|
*
|
|
* gst-validate-utils.h - Some utility functions
|
|
*
|
|
* This library is free software; you can redistribute it and/or
|
|
* modify it under the terms of the GNU Library General Public
|
|
* License as published by the Free Software Foundation; either
|
|
* version 2.1 of the License, or (at your option) any later version.
|
|
*
|
|
* This library is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
* Library General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU Library General Public
|
|
* License along with this library; if not, write to the
|
|
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
|
* Boston, MA 02111-1307, USA.
|
|
*/
|
|
|
|
#ifndef EXPRESSION_PARSER_H
|
|
#define EXPRESSION_PARSER_H
|
|
|
|
#include<setjmp.h>
|
|
#include<stdlib.h>
|
|
#include<glib.h>
|
|
#include<gio/gio.h>
|
|
#include <gst/gst.h>
|
|
#include "gst-validate-scenario.h"
|
|
#include "gst-validate-reporter.h"
|
|
|
|
typedef int (*GstValidateParseVariableFunc) (const gchar *name,
|
|
double *value, gpointer user_data);
|
|
|
|
GST_VALIDATE_API
|
|
gdouble gst_validate_utils_parse_expression (const gchar *expr,
|
|
GstValidateParseVariableFunc variable_func,
|
|
gpointer user_data,
|
|
gchar **error);
|
|
GST_VALIDATE_API
|
|
guint gst_validate_utils_flags_from_str (GType type, const gchar * str_flags);
|
|
GST_VALIDATE_API
|
|
gboolean gst_validate_utils_enum_from_str (GType type,
|
|
const gchar * str_enum,
|
|
guint * enum_value);
|
|
GST_VALIDATE_API
|
|
gchar ** gst_validate_utils_get_strv (GstStructure *str, const gchar *fieldname);
|
|
|
|
GST_VALIDATE_API
|
|
GList * gst_validate_utils_structs_parse_from_filename (const gchar * scenario_file,
|
|
gchar **file_path);
|
|
GST_VALIDATE_API
|
|
GList * gst_validate_structs_parse_from_gfile (GFile * scenario_file);
|
|
|
|
GST_VALIDATE_API
|
|
gboolean gst_validate_element_has_klass (GstElement * element, const gchar * klass);
|
|
GST_VALIDATE_API
|
|
gboolean gst_validate_utils_get_clocktime (GstStructure *structure, const gchar * name,
|
|
GstClockTime * retval);
|
|
|
|
GST_VALIDATE_API
|
|
GstValidateActionReturn gst_validate_object_set_property (GstValidateReporter * reporter,
|
|
GObject * object,
|
|
const gchar * property,
|
|
const GValue * value,
|
|
gboolean optional);
|
|
|
|
GST_VALIDATE_API
|
|
void gst_validate_spin_on_fault_signals (void);
|
|
|
|
GST_VALIDATE_API
|
|
gboolean gst_validate_element_matches_target (GstElement * element, GstStructure * s);
|
|
gchar * gst_validate_replace_variables_in_string (GstStructure * local_vars, const gchar * in_string);
|
|
void gst_validate_structure_resolve_variables (GstStructure *structure, GstStructure *local_variables);
|
|
void gst_validate_set_globals (GstStructure *structure);
|
|
|
|
#endif
|