Vincent Penquerc'h
98c99630ad
gststructure: clarify _get docs about the returned reference
...
https://bugzilla.gnome.org/show_bug.cgi?id=667689
2012-01-11 12:23:25 +00:00
Tim-Philipp Müller
16dcd5e958
docs: fix Since: markers for API added after 0.10.35
2011-11-08 00:32:36 +00:00
Vincent Penquerc'h
b37d06aed8
gstvalue: quicker version of intersection when we do not need the result
...
https://bugzilla.gnome.org/show_bug.cgi?id=662777
2011-11-07 15:17:19 +00:00
Vincent Penquerc'h
d9901a6288
gststructure: simplify return statement in gst_structure_can_intersect
...
https://bugzilla.gnome.org/show_bug.cgi?id=662777
2011-11-07 15:17:14 +00:00
Vincent Penquerc'h
afc80c10d1
gststructure: early out when we know a value cannot be a subset
...
If two values can be ordered, but are unequal, they are
necessarily distinct, thus one cannot be a subset of the other.
https://bugzilla.gnome.org/show_bug.cgi?id=662777
2011-11-07 15:17:04 +00:00
Vincent Penquerc'h
29c97fe780
gstvalue: quicker test for substraction emptiness
...
When we do not care about the actual resulting set,
but only whether it is empty of not, we can skip a fair bit
of GValue juggling.
Add a function that does so, since we cannot just pass NULL
to the existing API as it may be part of the API contract.
https://bugzilla.gnome.org/show_bug.cgi?id=662777
2011-11-07 15:16:52 +00:00
Vincent Penquerc'h
7090257a83
gststructure: rejig test ordering for speed
...
https://bugzilla.gnome.org/show_bug.cgi?id=662777
2011-11-07 15:16:26 +00:00
Tim-Philipp Müller
bc1a37e64f
structure: identical structures are definitely equal
2011-10-29 23:52:22 +01:00
Raimo Järvi
6637d983d3
gst: Fix compiler warnings on 64 bit mingw-w64
...
Fixes bug #660083 .
2011-09-26 12:17:30 +02:00
Piotr Fusik
14f5518f3d
docs, gst: typo fixes
...
https://bugzilla.gnome.org/show_bug.cgi?id=658449
2011-09-07 18:03:17 +01:00
Sebastian Dröge
0a80b57d74
value: Consider "1" and "{1}" as equal in gst_value_compare()
...
Previously this was only done in the is_subset() check but
having it only there brings us into definition-hell where
"1" and "{1}" are subset of each other but not equal.
2011-05-30 11:33:57 +02:00
Sebastian Dröge
f304196148
caps: Fix subset check for equivalent lists and scalar values
...
For example "{ 1 }" and "1" are not strictly equal but
both are a subset of each other. Also add a unit test
for this.
2011-05-30 07:38:40 +02:00
Sebastian Dröge
da58834884
structure: Add gst_structure_is_subset()
...
API: gst_structure_is_subset()
2011-05-27 13:47:11 +02:00
Tim-Philipp Müller
8a3721a1ca
gst: we can now use GLib 2.24 API unconditionally
2011-05-25 16:02:10 +01:00
Sebastian Dröge
b4dea3a1d3
structure: Make both parameters to gst_structure_is_equal() const
2011-05-17 09:35:54 +02:00
Sebastian Dröge
53ef31718d
structure: Update Since markers to the correct version
2011-05-17 09:33:47 +02:00
Sebastian Dröge
a08a17dfbd
structure: Add gst_structure_intersect()
...
API: gst_structure_intersect()
2011-05-17 09:33:04 +02:00
Edward Hervey
64725facb5
gststructure: Add gst_structure_can_intersect API
...
Allows checking if two structures can intersect without having to
go through GstCaps
API: gst_structure_can_intersect
https://bugzilla.gnome.org/show_bug.cgi?id=629300
2011-05-17 09:28:06 +02:00
Edward Hervey
ae46eb3a38
gstructure: New API: gst_structure_is_equal
...
Allows checking equality of GstStructure without having to create
intermediary GstCaps.
API: gst_structure_is_equal
https://bugzilla.gnome.org/show_bug.cgi?id=629300
2011-05-17 09:28:00 +02:00
Sebastian Dröge
bf6c3ea6df
gst: Add some more gobject-introspection annotations
2011-04-14 16:14:01 +02:00
Sebastian Dröge
5860734aaf
structure: Add date as a type abbreviation of GDate
...
See bug #646696 .
2011-04-05 14:37:55 +02:00
Sebastian Dröge
eba33c1de1
structure: Don't allow invalid GDates in all structures and don't allow NULL GDates in taglists
...
Some code (e.g. gstvorbistag.c) assumes non-NULL GDates in taglists and
explodes otherwise and NULL or invalid GDates don't make much sense anyway.
2011-04-04 10:18:14 +02:00
Stefan Kost
d963503b26
structure: gst_structure_empty_new() does better error checking
...
No need to check for media_type!=NULL as the function we call that actual create
the structure does a full check anyway.
2011-03-08 10:07:17 +02:00
Stefan Kost
4d9e645551
caps,structure: trim trailing whitespace
2011-03-08 10:07:03 +02:00
Mart Raudsepp
e7569342b1
docs: add missing "Since: 0.10.31" marker for gst_structure_get_date_time()
2011-01-24 14:38:15 +00:00
Tim-Philipp Müller
8a7fc1d8c9
Revert "micro-optim: if (x) is cheaper than if (x > 0) for unsigned integers"
...
This reverts commit 6aa8ca37ee
.
See http://article.gmane.org/gmane.comp.video.gstreamer.devel/32282
2010-12-26 21:21:43 +00:00
Tim-Philipp Müller
3256c708be
docs: gst: more gobject introspection annotations
...
Many of these are superfluous, added for clarity.
2010-12-07 18:37:04 +00:00
Edward Hervey
6aa8ca37ee
micro-optim: if (x) is cheaper than if (x > 0) for unsigned integers
2010-12-03 12:03:42 +01:00
Tim-Philipp Müller
608628d10d
structure: micro-optimisation for some setter functions
...
Split out functions that do the actual work, so we avoid doing
the same g_return_if_fail() checks multiple times for each call.
2010-09-16 19:40:15 +01:00
Tim-Philipp Müller
7e5a9580ef
structure: add gst_structure_{id_}take_value()
...
Add _set_value() variants that take ownership of the value passed
instead of making a copy of the value. This is useful for setting
values to things that aren't refcounted (e.g. GValueArrays or
strings or string arrays, etc.).
API: gst_structure_take_value()
API: gst_structure_id_take_value()
https://bugzilla.gnome.org/show_bug.cgi?id=629831
2010-09-16 19:39:58 +01:00
Philippe Normand
b2e6379be8
gstvalue: Add new GstInt64Range type
...
new GstInt64Range to store gint64 ranges.
API: GST_TYPE_INT64_RANGE
API: gst_value_set_int64_range
API: gst_value_get_int64_range_min
API: gst_value_get_int64_range_max
Fixes bug #627826 .
2010-09-01 11:07:37 +02:00
Thiago Santos
f2c18c6c98
gststructure: Adds datetime getter function
...
Adds gst_structure_get_date_time function
API: gst_structure_get_date_time
Fixes #594504
2010-07-26 11:57:52 -03:00
Thiago Santos
b4870282cb
gstvalue: Adds datetime functions
...
Adds a datetime functions to gstvalue
Fixes #594504
2010-07-26 11:57:50 -03:00
Sebastian Dröge
88ec06f433
structure: Use a const GstStructure * as parameter for some more gst_structure_get variants
2010-07-16 17:33:38 +02:00
Sebastian Dröge
e35fe4ef9c
structure: API: Add gst_structure_fixate_field_string()
2010-05-22 10:01:44 +02:00
Tim-Philipp Müller
24ce15bca7
structure: log what structure string we failed to parse
2010-04-14 23:53:26 +01:00
Sebastian Dröge
e305e49ef4
structure: Make structure abbreviations array one-time initialization threadsafe
2010-03-28 19:49:00 +02:00
Tim-Philipp Müller
0aa584917a
structure: add mapping for (uint) to allow deserialisation of unsigned integers
...
Unsigned ints are used in taglists, would be nice to be able to
deserialise them, esp. in connection with the taginject API.
2010-03-23 19:23:22 +00:00
Mart Raudsepp
db949f66e0
docs: fix since tag for gst_structure_id_has_field_typed()
...
gst_structure_id_has_field_typed was added in 0.10.26, not 0.10.16.
Apparent typo in commit f9e3b72f
when the API was added.
2010-03-17 11:03:15 +00:00
Tim-Philipp Müller
235910e227
gst: use #if GLIB_CHECK_VERSION instead of #ifndef GLIBMACRO
...
for better greppability at the time we bump GLib version requirements.
2010-03-17 11:03:15 +00:00
Edward Hervey
bbe26d36ba
gst: Use G_VALUE_COLLECT_INIT if available
...
This brings total call speedups between 5% and 25%.
gst_caps_set_simple_valist: +5%
gst_structure_set_valist: + 10%
gst_structure_id_set_valist: +25%
gst_tag_list_add_valist: +5%
Measured using valgrind when run over the discovery of 200 media files.
Fixes #610256
2010-03-12 10:01:47 +01:00
Benjamin Otte
a9d1a493a7
Fixes for -Wwrite-strings
...
This changes some APIs in compatible ways:
- Some functions now take "const char *" arguments, not "char *"
- Some structs now have "conts char *" members, not "char *"
The changes may cause warnings when compiling with the right warning
flags. You've been warned.
Also adds -Wwrite-strings as a warning flag in configure.ac.
https://bugzilla.gnome.org/show_bug.cgi?id=611692
2010-03-10 20:50:10 +01:00
Tim-Philipp Müller
51a462853a
structure: remove superfluous guard against NULL
...
All callers of this static function already check for NULL-ness
themselves, so no need to do it again (and if we do it, we should
probably do so before dereferencing the pointer for the first time).
2010-01-16 19:44:35 +00:00
Tim-Philipp Müller
4cdf375b1a
structure: micro-optimise some getters
...
Avoid checking the GType of the value twice (once on our side and
once in g_value_get_*()) by by-passing g_value_get() and accessing
the GValue structure directly.
2010-01-16 19:37:46 +00:00
Stefan Kost
23da3639f0
docs: fix xrefs in docs
...
Fix typos in xrefs, links to non existing functions and rework plural forms.
2009-11-25 16:59:50 +02:00
Tim-Philipp Müller
ab5f2f4f5d
Revert "structure: don't check type twice"
...
This reverts commit f864187bf5
.
Reverting this as it changes behaviour and the documentation is
ambiguous about whether the caller must check the type first or
not (call must check type vs. returns NULL if not a string). If
GLib has been compiled with G_DISABLE_CHECKS then g_value_get_string()
may return complete garbage even if the value does not contain
a string. Better play it safe, esp. since the extra check is just
an integer comparison. For fundamental types we could return values
from the GValue structure directly if we really wanted to bypass
the extra check.
2009-11-18 09:22:57 +00:00
Stefan Kost
f864187bf5
structure: don't check type twice
2009-11-18 10:12:13 +02:00
Stefan Kost
da9b082808
structure: remove some blank lines (previous gst-indent failure)
2009-11-17 09:40:12 +02:00
Stefan Kost
94f6eced23
structure: use local variable earlier
2009-11-17 09:40:12 +02:00
Stefan Kost
7bd9299f3e
structure: don't check enum types twice.
...
G_VALUE_HOLDS_ENUM(value) is defined as G_TYPE_CHECK_VALUE_TYPE (value,
G_TYPE_ENUM). Just check for the right enum-type right away.
2009-11-17 09:40:12 +02:00