Andy Wingo
7c0804b15c
testsuite/caps/value_serialize.c: merge from HEAD.
...
Original commit message from CVS:
2005-02-10 Andy Wingo <wingo@pobox.com>
* testsuite/caps/value_serialize.c: merge from HEAD.
* testsuite/caps/subtract.c:
* testsuite/caps/filtercaps.c:
* testsuite/caps/enumcaps.c:
* testsuite/caps/deserialize.c:
* testsuite/caps/caps.c:
* testsuite/caps/audioscale.c: Unref caps, not free.
* testsuite/caps/caps_strings: Merged from HEAD.
* gst/elements/gstidentity.c (gst_identity_proxy_getcaps): Getcaps
implementation for identity.
* gst/gststructure.h
* gst/gststructure.c
(gst_caps_structure_fixate_field_nearest_double):
(gst_caps_structure_fixate_field_nearest_int): Moved from
gstcaps.c because we need the private IS_MUTABLE macro.
(IS_MUTABLE): New macro, determines if a
structure is mutable or not.
(gst_structure_free): Don't allow free while holding a pointer to
a parent's refcount.
(gst_structure_set_name): Check for writability.
(gst_structure_id_set_value): Same.
(gst_structure_set_value): Same.
(gst_structure_set_valist): Same.
(gst_structure_remove_field): Same.
(gst_structure_remove_all_fields): Same.
(gst_structure_map_in_place): New routine, like _foreach but
allows the function to mutate the value (via a non-const
prototype). Check for writability.
(gst_structure_foreach): Redefine to only take non-mutating
functions.
* gst/gstcaps.c (IS_WRITABLE): New macro, returns TRUE if the caps
are writable.
(gst_caps_copy): Add some docs about mutability, etc.
(_gst_caps_free): Set the parent refcount pointer on structures to
NULL before freeing them.
(gst_caps_ref): Document.
(gst_caps_make_writable): Doc.
(gst_caps_make_writable): Changed to make_writable, get_writable
sounds too much like retrieving a property.
(gst_caps_copy_1): Removed, not very useful.
(gst_caps_ref_by_count): Removed, no need to have something GLib
doesn't.
(gst_caps_copy_conditional): Ref instead of copying.
(gst_static_caps_get): Retain a reference to the returned caps, so
that the static caps will remain immutable.
(gst_caps_remove_and_get_structure): Set the parent refcount to
NULL when removing the structure.
(gst_caps_append): Fix to work with structure parent refcounts.
Check for writability.
(gst_caps_append_structure): Check for writability, work with
parent refcounts.
(gst_caps_remove_structure): Check for writability.
(gst_caps_set_simple): Check for writability.
(gst_caps_set_simple_valist): Check for writability.
(gst_caps_is_fixed_foreach): Update for non-mutating foreach.
(gst_structure_is_equal_foreach): Same.
(gst_caps_structure_intersect_field): Same.
(gst_caps_structure_subtract_field): Same. Make static.
(gst_caps_normalize_foreach): Same.
(gst_caps_structure_figure_out_union): Same.
(gst_caps_switch_structures): New static function, switches out
structures inside a caps, taking care of parent_refcount setting.
* gst/gstpad.c (gst_pad_get_allowed_caps): Remove the restriction
on only src pads, wim von masterhack claims it was bogus.
* testsuite/caps/Makefile.am
* testsuite/caps/app_fixate.c: Removed app_fixate test, things are
done a bit differently in THREADED.
2005-02-10 19:40:23 +00:00
Wim Taymans
45529cf00a
docs/design/part-events.txt: Added event doc.
...
Original commit message from CVS:
* docs/design/part-events.txt:
Added event doc.
2005-02-10 18:17:19 +00:00
Andy Wingo
6bb6549228
docs/design/part-MT-refcounting.txt (Refcounting): Some grammar/clarity fixes, and added a section on child structure...
...
Original commit message from CVS:
2005-02-10 Andy Wingo <wingo@pobox.com>
* docs/design/part-MT-refcounting.txt (Refcounting): Some
grammar/clarity fixes, and added a section on child structures of
shared refcounted objects.
2005-02-10 14:49:29 +00:00
Wim Taymans
883680f12b
docs/design/: Some docs updates.
...
Original commit message from CVS:
* docs/design/part-TODO.txt:
* docs/design/part-negotiation.txt:
* docs/design/part-states.txt:
Some docs updates.
2005-02-10 14:34:53 +00:00
Andy Wingo
b1d9edff2f
docs/design/part-MT-refcounting.txt: Fill to 80 columns.
...
Original commit message from CVS:
2005-02-10 Andy Wingo <wingo@pobox.com>
* docs/design/part-MT-refcounting.txt: Fill to 80 columns.
2005-02-10 14:13:00 +00:00
Andy Wingo
6e0dfb6f50
gst/gstcaps.*: Change from copy_on_write.
...
Original commit message from CVS:
2005-02-10 Andy Wingo <wingo@pobox.com>
* gst/gstcaps.h:
* gst/gstcaps.c (gst_caps_get_writable): Change from
copy_on_write.
2005-02-10 12:24:43 +00:00
Andy Wingo
e0b0e3dab2
docs/gst/tmpl: Commit whatever automagic updates gtkdoc is doing.
...
Original commit message from CVS:
2005-02-10 Andy Wingo <wingo@pobox.com>
* docs/gst/tmpl: Commit whatever automagic updates gtkdoc is
doing.
2005-02-10 11:55:48 +00:00
Andy Wingo
e880a5522f
whoopdee, missed the changelog
...
Original commit message from CVS:
whoopdee, missed the changelog
2005-02-10 11:52:20 +00:00
Andy Wingo
d49e5407c3
grr, and the .cvsignore
...
Original commit message from CVS:
grr, and the .cvsignore
2005-02-10 11:26:49 +00:00
Andy Wingo
4da4fd220b
whoops, really remove them
...
Original commit message from CVS:
whoops, really remove them
2005-02-10 11:25:47 +00:00
Andy Wingo
3279192621
testsuite/bytestream: Removed, getrange replaces bytestream in
...
Original commit message from CVS:
2005-02-10 Andy Wingo <wingo@pobox.com>
* testsuite/bytestream: Removed, getrange replaces bytestream in
-THREADED.
* testsuite/Makefile.am:
* configure.ac: Updated.
2005-02-10 11:23:06 +00:00
Ronald S. Bultje
b5f2f92846
gst/gstbuffer.*: Re-add gst_buffer_join ().
...
Original commit message from CVS:
* gst/gstbuffer.c: (gst_buffer_join):
* gst/gstbuffer.h:
Re-add gst_buffer_join ().
* gst/gsterror.c: (_gst_stream_errors_init):
* gst/gsterror.h:
Add 'invalid data' as an extra stream error.
2005-02-05 16:24:12 +00:00
Wim Taymans
743c2402f4
gst/: Inline refcounting.. not sure why it wasn't before.
...
Original commit message from CVS:
* gst/gstcaps.c: (gst_caps_intersect):
* gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
(gst_clock_id_compare_func), (gst_clock_id_wait),
(gst_clock_id_wait_async), (gst_clock_init),
(gst_clock_adjust_unlocked), (gst_clock_get_time):
* gst/gstinfo.c:
* gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
(gst_object_unref), (gst_object_sink), (gst_object_dispose),
(gst_object_dispatch_properties_changed), (gst_object_set_name),
(gst_object_set_parent), (gst_object_unparent),
(gst_object_check_uniqueness), (gst_object_get_path_string):
* gst/gstutils.c: (gst_element_finish_preroll),
(gst_element_get_compatible_pad_filtered),
(gst_element_link_pads_filtered), (gst_element_unlink),
(gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func):
* gst/gstutils.h:
Inline refcounting.. not sure why it wasn't before.
Added use_fixed_caps method to change default getcaps
behaviour.
2005-02-03 17:05:21 +00:00
Ronald S. Bultje
6f40edb7e1
gst/: Re-add gst_element_class_install_std_props, move to gstutils.h.
...
Original commit message from CVS:
* gst/gstelement.h:
* gst/gstutils.c: (gst_element_populate_std_props),
(gst_element_class_install_std_props):
* gst/gstutils.h:
Re-add gst_element_class_install_std_props, move to gstutils.h.
2005-02-01 17:26:44 +00:00
Wim Taymans
a476269842
Fix the md5sum by implementing tha GMainLoop.
...
Original commit message from CVS:
Fix the md5sum by implementing tha GMainLoop.
2005-01-26 14:29:05 +00:00
Wim Taymans
10e648c7d9
Removed schedulers and compat stuff.
...
Original commit message from CVS:
Removed schedulers and compat stuff.
Use iterators in bin for the various lookup functions.
Optimized the clock a bit.
Added some more docs.
Fixed scheduling in the ()-(l) case.
Fixed and added some testcases.
Removed old code.
2005-01-26 10:56:09 +00:00
Wim Taymans
cec2ab1eac
gst/elements/gstfilesrc.*: Fix filesrc push based scheduling.
...
Original commit message from CVS:
* gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
(gst_filesrc_open_file), (gst_filesrc_loop),
(gst_filesrc_activate), (filesrc_find_peek),
(gst_filesrc_type_find):
* gst/elements/gstfilesrc.h:
Fix filesrc push based scheduling.
2005-01-19 13:55:10 +00:00
Wim Taymans
0a4f48bd55
Fix task creation again.
...
Original commit message from CVS:
Fix task creation again.
2005-01-18 13:30:13 +00:00
Wim Taymans
864a9acf69
More state change fixes.
...
Original commit message from CVS:
More state change fixes.
Added/fixed some testcases.
Threadsafety fixes.
2005-01-18 10:52:08 +00:00
Wim Taymans
83156b4a9d
gst/: Patch state changes according to design document.
...
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_set_index), (gst_bin_set_clock),
(gst_bin_set_bus), (gst_bin_set_scheduler), (gst_bin_add_func),
(gst_bin_iterate_elements), (gst_bin_get_state),
(gst_bin_change_state), (gst_bin_get_by_name_recurse_up):
* gst/gstelement.c: (gst_element_add_pad),
(gst_element_remove_pad), (gst_element_get_state_func),
(gst_element_get_state), (gst_element_abort_state),
(gst_element_set_state), (gst_element_pads_activate):
* gst/gstelement.h:
Patch state changes according to design document.
2005-01-12 18:54:42 +00:00
Wim Taymans
faeeed3dba
Some more docs
...
Original commit message from CVS:
Some more docs
2005-01-12 18:51:45 +00:00
Wim Taymans
11f8f6a649
Bus cleanups.
...
Original commit message from CVS:
Bus cleanups.
Backport some HEAD changes.
Queue cleanup
2005-01-11 14:58:12 +00:00
Christian Schaller
a95e645edc
fix problem with gst-feedback
...
Original commit message from CVS:
fix problem with gst-feedback
2005-01-11 12:34:04 +00:00
Christian Schaller
e3bf13106d
various build and spec file fixes
...
Original commit message from CVS:
various build and spec file fixes
2005-01-11 12:05:02 +00:00
Wim Taymans
60beeadc26
gst/gstelement.c: Small cleanups, free the state mutex.
...
Original commit message from CVS:
* gst/gstelement.c: (gst_element_add_pad),
(gst_element_remove_pad), (gst_element_pads_activate),
(gst_element_dispose):
Small cleanups, free the state mutex.
2005-01-07 16:05:41 +00:00
Wim Taymans
74ca793b0a
Clock fixes. Added async callbacks and clock unscheduling.
...
Original commit message from CVS:
Clock fixes. Added async callbacks and clock unscheduling.
Threading fixes. Fixed race condition in GstTask and possible
deadlock in _pad_get_caps(). Made various subsystems (query,
format,..) threadsafe.
Lots of cleanups and documentation.
2005-01-06 18:17:12 +00:00
Thomas Vander Stichele
2b58a38a2b
thread's dead, baby. thread's dead.
...
Original commit message from CVS:
thread's dead, baby. thread's dead.
2005-01-06 11:39:55 +00:00
Wim Taymans
5951a9840d
gst/: Work on flushing.
...
Original commit message from CVS:
* gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
(gst_filesrc_get), (gst_filesrc_activate):
* gst/gstclock.c: (gst_clock_init), (gst_clock_dispose):
* gst/gstclock.h:
* gst/gstevent.c: (gst_event_new_discontinuous_valist),
(gst_event_new_discontinuous), (gst_event_discont_get_value),
(gst_event_new_flush):
* gst/gstevent.h:
* gst/gstpad.c: (gst_pad_set_active), (gst_pad_set_blocked_async),
(gst_pad_set_acceptcaps_function),
(gst_pad_set_fixatecaps_function), (gst_pad_unlink),
(gst_pad_link_prepare_filtered), (gst_pad_link_filtered),
(gst_pad_relink_filtered), (gst_real_pad_get_caps_unlocked),
(gst_pad_peer_get_caps), (gst_pad_fixate_caps),
(gst_pad_accept_caps), (gst_pad_peer_accept_caps),
(gst_pad_set_caps), (gst_pad_configure_sink),
(gst_pad_configure_src), (gst_pad_realize), (gst_pad_alloc_buffer),
(gst_pad_push), (gst_pad_push_event), (gst_pad_send_event):
* gst/gstpad.h:
* gst/gsttask.c: (gst_task_pause):
* gst/gsttask.h:
* gst/schedulers/threadscheduler.c:
(gst_thread_scheduler_task_class_init),
(gst_thread_scheduler_task_init),
(gst_thread_scheduler_task_start),
(gst_thread_scheduler_task_stop),
(gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
Work on flushing.
Allow tasks to be paused.
Remove some old code in GstClock
2005-01-04 12:06:57 +00:00
Wim Taymans
0f74c8b5f1
gst/gstevent.*: We'll need the end offset in discont soon.
...
Original commit message from CVS:
* gst/gstevent.c: (gst_event_new_discontinuous_valist),
(gst_event_discont_get_value):
* gst/gstevent.h:
We'll need the end offset in discont soon.
2004-12-31 18:18:45 +00:00
Wim Taymans
af728740a3
Clock updates, remove deprecated methods, simplify operations.
...
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_set_index), (gst_bin_set_clock),
(gst_bin_set_bus), (gst_bin_set_scheduler), (gst_bin_add_func),
(gst_bin_iterate_elements), (gst_bin_change_state),
(gst_bin_get_by_name_recurse_up):
* gst/gstbuffer.c: (gst_buffer_default_copy):
* gst/gstbuffer.h:
* gst/gstclock.c: (gst_clock_init), (gst_clock_get_time),
(gst_clock_set_time_adjust):
* gst/gstclock.h:
* gst/gstelement.h:
* gst/gstevent.h:
* gst/gstinfo.h:
* gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
(gst_pipeline_change_state):
* gst/gstpipeline.h:
* gst/gstsystemclock.c: (gst_system_clock_wait):
* gst/gstutils.c: (gst_element_finish_preroll),
(gst_element_get_compatible_pad_filtered),
(gst_element_link_pads_filtered), (gst_element_unlink):
* gst/registries/gstxmlregistry.c:
(gst_xml_registry_parse_element_factory),
(gst_xml_registry_end_element):
* libs/gst/dataprotocol/dataprotocol.c:
(gst_dp_header_from_buffer):
Clock updates, remove deprecated methods, simplify operations.
Fix clocking and time management in GstPipeline.
Preroll also occurs when going from playing to paused.
2004-12-31 10:44:46 +00:00
Wim Taymans
6bd0304727
gst/: Fix scheduler distribution.
...
Original commit message from CVS:
* gst/elements/gstfakesrc.c: (gst_fakesrc_loop),
(gst_fakesrc_activate):
* gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
(gst_filesrc_get), (gst_filesrc_activate):
* gst/gstbin.c: (gst_bin_set_index), (gst_bin_set_clock),
(gst_bin_set_bus), (gst_bin_set_scheduler), (gst_bin_add_func),
(gst_bin_iterate_elements), (gst_bin_change_state),
(gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up):
* gst/gstelement.c: (gst_element_add_pad),
(gst_element_pads_activate):
* gst/gstpad.c: (gst_pad_set_active), (gst_pad_set_blocked_async),
(gst_pad_set_acceptcaps_function),
(gst_pad_set_fixatecaps_function), (gst_pad_unlink),
(gst_pad_link_prepare_filtered), (gst_pad_link_filtered),
(gst_pad_relink_filtered), (gst_real_pad_get_caps_unlocked),
(gst_pad_get_caps), (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
(gst_pad_accept_caps), (gst_pad_peer_accept_caps),
(gst_pad_set_caps), (gst_pad_configure_sink),
(gst_pad_configure_src), (gst_pad_realize), (gst_pad_alloc_buffer),
(gst_pad_push), (gst_pad_push_event):
* gst/gstpad.h:
* gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
(gst_queue_bufferalloc), (gst_queue_loop),
(gst_queue_handle_src_query), (gst_queue_src_activate):
* gst/gstutils.c: (gst_element_finish_preroll),
(gst_element_get_compatible_pad_filtered),
(gst_element_link_pads_filtered), (gst_element_unlink):
* gst/parse/grammar.y:
Fix scheduler distribution.
Implement some caps functions and convenience functions.
Fix deadlock.
Implement scheduling selection.
Check pad compatibility when connecting pads.
2004-12-29 10:49:28 +00:00
Thomas Vander Stichele
1fece171ea
adding gstdata tests, cleaning up source files
...
Original commit message from CVS:
adding gstdata tests, cleaning up source files
2004-12-21 15:51:09 +00:00
Thomas Vander Stichele
8f8da12228
move common code to a lib
...
Original commit message from CVS:
move common code to a lib
2004-12-21 14:50:57 +00:00
Thomas Vander Stichele
993b529a3c
Change dataprotocol test to new check
...
Original commit message from CVS:
Change dataprotocol test to new check
2004-12-21 12:26:38 +00:00
Wim Taymans
457e99ab07
Correctly distribute clock/scheduler to elements
...
Original commit message from CVS:
* gst/elements/gstfakesink.c: (gst_fakesink_event):
* gst/elements/gstfakesrc.c: (gst_fakesrc_update_functions),
(gst_fakesrc_loop), (gst_fakesrc_activate):
* gst/elements/gstfilesrc.c: (gst_filesrc_init),
(gst_filesrc_getrange), (gst_filesrc_get), (gst_filesrc_loop):
* gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index),
(gst_bin_set_clock), (gst_bin_set_bus), (gst_bin_set_scheduler),
(gst_bin_add_func), (gst_bin_iterate_elements),
(gst_bin_change_state), (gst_bin_get_by_name_recurse_up):
* gst/gstcaps.c: (gst_caps_intersect):
* gst/gstelement.c: (gst_element_pads_activate),
(gst_element_change_state), (gst_element_create_task):
* gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
(gst_object_unref), (gst_object_sink), (gst_object_dispose),
(gst_object_dispatch_properties_changed), (gst_object_set_name),
(gst_object_set_parent), (gst_object_unparent),
(gst_object_check_uniqueness), (gst_object_get_path_string):
* gst/gstpad.c: (gst_real_pad_init), (gst_real_pad_get_property),
(gst_pad_set_active), (gst_pad_is_active),
(gst_pad_set_blocked_async), (gst_pad_set_loop_function),
(gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
(gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
(gst_pad_unlink), (gst_pad_link_prepare_filtered),
(gst_pad_link_filtered), (gst_pad_relink_filtered),
(gst_pad_get_caps), (gst_pad_set_caps), (gst_pad_configure_sink),
(gst_pad_configure_src), (gst_pad_realize),
(gst_pad_get_allowed_caps), (gst_pad_get_negotiated_caps),
(gst_pad_get_filter_caps), (gst_pad_alloc_buffer), (gst_pad_push),
(gst_pad_push_event):
* gst/gstpad.h:
* gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
(is_eos), (pipeline_bus_handler), (gst_pipeline_change_state),
(gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
* gst/gstpipeline.h:
* gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
(gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
(gst_queue_src_activate), (gst_queue_change_state):
* gst/gsttask.h:
* gst/gstutils.c: (gst_element_get_compatible_pad_filtered),
(gst_element_link_pads_filtered), (gst_element_unlink),
(gst_pad_can_link_filtered):
* gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func):
* libs/gst/Makefile.am:
* tools/gst-inspect.c: (print_pad_info):
* tools/gst-launch.c: (main):
* tools/gst-xmlinspect.c: (print_element_info):
Correctly distribute clock/scheduler to elements
Caps intersection improvement.
MT fixes.
Work on scheduling simplifications, get rid of _pull and prepare
for scheduling setup.
More work on capsnego.
2004-12-20 16:07:05 +00:00
Thomas Vander Stichele
ccb77fc69f
optimize
...
Original commit message from CVS:
optimize
2004-12-14 11:49:02 +00:00
Thomas Vander Stichele
29177515ff
add _get/_set_name_prefix() for debugging. Update docs.
...
Original commit message from CVS:
* check/gst/gstobject.c:
* docs/design/part-gstelement.txt:
* docs/design/part-gstobject.txt:
* gst/gstobject.c:
* gst/gstobject.h:
add _get/_set_name_prefix() for debugging. Update docs.
Finish unique name unit test
2004-12-14 11:47:44 +00:00
Thomas Vander Stichele
5d24ac1be7
make names only settable when unparented, so we can guarantee uniqueness inside a parent together with the _add checks
...
Original commit message from CVS:
make names only settable when unparented, so we can guarantee
uniqueness inside a parent together with the _add checks
2
2004-12-13 19:23:04 +00:00
Thomas Vander Stichele
91f1225038
up requirement
...
Original commit message from CVS:
up requirement
2004-12-13 18:11:01 +00:00
Thomas Vander Stichele
54cf91ba76
unit test for threadsafe naming
...
Original commit message from CVS:
unit test for threadsafe naming
2004-12-13 17:55:57 +00:00
Thomas Vander Stichele
a192d6d688
adding unit testing
...
Original commit message from CVS:
* Makefile.am:
* check/Makefile.am:
* check/gst/.cvsignore:
* check/gst/gstobject.c:
* configure.ac:
adding unit testing
* docs/upload.mak:
fixing double vars
* gst/Makefile.am:
disable some unused stuff
* gst/gstbus.h:
* gst/gsttypes.h:
move typedefs for gstbus
* gst/gstelement.c:
* gst/gstelement.h:
add getter/setter for bus and scheduler
add functionality to have (non-fatal) warnings as messages
* gst/gsterror.c:
* gst/gsterror.h:
* gst/gstmessage.c:
* gst/gstmessage.h:
rework API to be more general for warnings as well
* gst/gstobject.c:
fix docs
* tools/gst-launch.c:
fix macros for errors
2004-12-13 14:49:11 +00:00
Wim Taymans
767d9e4681
More MT fixes, added design document describing refcounting policies used in GStreamer and locking involved.
...
Original commit message from CVS:
* docs/design/part-MT-refcounting.txt:
* docs/design/part-conventions.txt:
* gst/gstbin.c: (gst_bin_set_index), (gst_bin_set_clock),
(gst_bin_add_func), (gst_bin_remove_func),
(gst_bin_iterate_elements), (gst_bin_change_state),
(gst_bin_dispose), (gst_bin_get_by_name_recurse_up):
* gst/gstcaps.c:
* gst/gstelement.c: (gst_element_add_pad),
(gst_element_remove_pad), (pad_compare_name),
(gst_element_get_static_pad), (gst_element_get_request_pad),
(gst_element_get_pad), (gst_element_iterate_pads),
(gst_element_class_get_pad_template_list),
(gst_element_class_get_pad_template), (gst_element_get_random_pad),
(gst_element_get_event_masks), (gst_element_send_event),
(gst_element_seek), (gst_element_get_query_types),
(gst_element_query), (gst_element_get_formats),
(gst_element_convert), (gst_element_post_message),
(gst_element_set_locked_state), (gst_element_get_state),
(gst_element_set_state), (gst_element_pads_activate),
(gst_element_dispose), (gst_element_set_manager_func),
(gst_element_get_manager):
* gst/gstelement.h:
* gst/gstiterator.c: (gst_iterator_new), (gst_list_iterator_next),
(gst_list_iterator_resync), (gst_list_iterator_free),
(gst_iterator_new_list):
* gst/gstiterator.h:
* gst/gstmessage.c: (_gst_message_copy):
* gst/gstobject.c: (gst_object_class_init), (gst_object_init),
(gst_object_ref), (gst_object_unref), (gst_object_sink),
(gst_object_replace), (gst_object_dispose),
(gst_object_dispatch_properties_changed), (gst_object_set_name),
(gst_object_set_parent), (gst_object_get_parent),
(gst_object_unparent), (gst_object_check_uniqueness),
(gst_object_get_path_string):
* gst/gstobject.h:
* gst/gstpad.c: (gst_pad_dispose), (gst_pad_set_active),
(gst_pad_is_active), (gst_pad_set_blocked_async),
(gst_pad_is_blocked), (gst_pad_unlink), (gst_pad_is_linked),
(gst_pad_link_prepare_filtered), (gst_pad_link_filtered),
(gst_pad_get_real_parent), (gst_pad_relink_filtered),
(gst_pad_get_peer), (gst_pad_realize), (gst_pad_get_allowed_caps),
(gst_pad_alloc_buffer), (gst_pad_push), (gst_pad_pull),
(gst_pad_pull_range), (gst_pad_push_event):
* gst/gstpad.h:
* gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
(is_eos), (pipeline_bus_handler):
* gst/gstutils.c: (gst_element_get_compatible_pad_filtered),
(gst_element_link_pads_filtered), (gst_element_unlink):
* gst/parse/grammar.y:
* tools/gst-compprep.c: (main):
* tools/gst-inspect.c: (print_pad_info):
* tools/gst-launch.c: (main):
* tools/gst-xmlinspect.c: (print_element_info):
More MT fixes, added design document describing refcounting
policies used in GStreamer and locking involved.
Fixed unsafe ghostpad dereffing.
Removed old unsafe methods.
2004-12-13 11:33:55 +00:00
Wim Taymans
5b1065d625
More MT fixes. Header cleanups, design doc update.
...
Original commit message from CVS:
* docs/design/part-MT-refcounting.txt:
* gst/gstbin.c: (gst_bin_set_index), (gst_bin_set_clock),
(gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
(gst_bin_remove), (gst_bin_iterate_elements),
(bin_element_is_sink), (gst_bin_get_state), (gst_bin_change_state),
(gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
(gst_bin_get_by_interface), (gst_bin_get_all_by_interface):
* gst/gstbin.h:
* gst/gstbuffer.h:
* gst/gstbus.h:
* gst/gstcaps.h:
* gst/gstclock.h:
* gst/gstdata.h:
* gst/gstelement.h:
* gst/gstevent.h:
* gst/gstmessage.h:
* gst/gststructure.h:
More MT fixes. Header cleanups, design doc update.
2004-12-09 23:28:31 +00:00
Wim Taymans
aed37ff5c3
gst/gstpad.*: More MT fixes.
...
Original commit message from CVS:
* gst/gstpad.c: (gst_pad_custom_new), (gst_pad_get_direction),
(gst_pad_set_active), (gst_pad_is_active),
(gst_pad_set_blocked_async), (gst_pad_unlink),
(gst_pad_get_real_parent), (gst_pad_relink_filtered),
(gst_pad_alloc_buffer), (handle_pad_block), (gst_pad_push),
(gst_pad_pull), (gst_pad_pull_range), (gst_pad_push_event):
* gst/gstpad.h:
More MT fixes.
2004-12-09 22:03:28 +00:00
Wim Taymans
15b0278251
gst/: More MT safety fixes following the desing doc.
...
Original commit message from CVS:
* gst/gst_private.h:
* gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index),
(gst_bin_set_clock), (gst_bin_get_clock),
(gst_bin_iterate_elements), (gst_bin_get_by_name),
(gst_bin_get_by_name_recurse_up), (gst_bin_get_by_interface),
(gst_bin_get_all_by_interface):
* gst/gstbin.h:
* gst/gstelement.c: (gst_element_add_pad),
(gst_element_remove_pad), (gst_element_request_pad),
(gst_element_post_message), (gst_element_error_full),
(gst_element_is_locked_state), (gst_element_set_locked_state),
(gst_element_create_task):
* gst/gstelement.h:
* gst/gstinfo.h:
* gst/gstiterator.h:
* gst/gstobject.c: (gst_object_init), (gst_object_ref),
(gst_object_unref), (gst_object_sink), (gst_object_dispose),
(gst_object_finalize), (gst_object_dispatch_properties_changed),
(gst_object_set_name), (gst_object_get_name),
(gst_object_set_parent), (gst_object_get_parent),
(gst_object_unparent), (gst_object_check_uniqueness),
(gst_object_save_thyself), (gst_object_restore_thyself),
(gst_object_real_restore_thyself), (gst_object_set_property),
(gst_object_get_property), (gst_object_get_path_string):
* gst/gstobject.h:
* gst/gstpad.c: (gst_pad_get_direction), (gst_pad_unlink),
(gst_pad_is_linked), (gst_pad_link_filtered),
(gst_pad_relink_filtered), (gst_pad_get_peer), (gst_pad_push),
(gst_pad_pull), (gst_pad_pull_range):
* gst/gstpad.h:
More MT safety fixes following the desing doc.
2004-12-09 21:08:13 +00:00
Wim Taymans
56ac821b40
docs/design/: Added design doc for MT-safe API implementation guidelines in GST.
...
Original commit message from CVS:
* docs/design/part-MT-refcounting.txt:
* docs/design/part-conventions.txt:
Added design doc for MT-safe API implementation
guidelines in GST.
2004-12-09 17:25:00 +00:00
Thomas Vander Stichele
65285e1acf
newly added files
...
Original commit message from CVS:
newly added files
2004-12-08 18:05:14 +00:00
Thomas Vander Stichele
3ffce00efc
commiting wim's preliminary threaded work to a branch
...
Original commit message from CVS:
commiting wim's preliminary threaded work to a branch
2004-12-08 17:40:37 +00:00
Thomas Vander Stichele
047c0a3e9b
remove patch if autopoint fails
...
Original commit message from CVS:
remove patch if autopoint fails
2004-12-08 09:18:38 +00:00
Ronald S. Bultje
1fd4bed69f
docs/gst/gstreamer-sections.txt: Document Thomas' addition, fix build, make Luis the sheriff happy.
...
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
Document Thomas' addition, fix build, make Luis the sheriff happy.
2004-12-07 23:21:32 +00:00