summaryrefslogtreecommitdiff
path: root/docs/design/part-push-pull.txt
diff options
context:
space:
mode:
authorThibault Saunier <tsaunier@gnome.org>2016-12-05 18:16:34 -0300
committerThibault Saunier <tsaunier@gnome.org>2016-12-06 14:08:14 -0300
commitd1c79fc1774c80873b956bfb187ad57042deedbb (patch)
tree3f9a620c1d9acbcd516bbf5e8fa314b6dcf352c0 /docs/design/part-push-pull.txt
parentdbe3d2b328113b468e19adc2ff39acc22e151069 (diff)
docs: Remove design doc as they have been moved to gst-docs
https://bugzilla.gnome.org/show_bug.cgi?id=775667
Diffstat (limited to 'docs/design/part-push-pull.txt')
-rw-r--r--docs/design/part-push-pull.txt46
1 files changed, 0 insertions, 46 deletions
diff --git a/docs/design/part-push-pull.txt b/docs/design/part-push-pull.txt
deleted file mode 100644
index 549f8d700b..0000000000
--- a/docs/design/part-push-pull.txt
+++ /dev/null
@@ -1,46 +0,0 @@
-push-pull
----------
-
-Normally a source element will push data to the downstream element using
-the gst_pad_push() method. The downstream peer pad will receive the
-buffer in the Chain function. In the push mode, the source element is the
-driving force in the pipeline as it initiates data transport.
-
-It is also possible for an element to pull data from an upstream element.
-The downstream element does this by calling gst_pad_pull_range() on one
-of its sinkpads. In this mode, the downstream element is the driving force
-in the pipeline as it initiates data transfer.
-
-It is important that the elements are in the correct state to handle a
-push() or a pull_range() from the peer element. For push() based elements
-this means that all downstream elements should be in the correct state and
-for pull_range() based elements this means the upstream elements should
-be in the correct state.
-
-Most sinkpads implement a chain function. This is the most common case.
-sinkpads implementing a loop function will be the exception. Likewise
-srcpads implementing a getrange function will be the exception.
-
-
-state changes
-~~~~~~~~~~~~~
-
-The GstBin sets the state of all the sink elements. These are the elements
-without source pads.
-
-Setting the state on an element will first activate all the srcpads and then
-the sinkpads. For each of the sinkpads, gst_pad_check_pull_range() is
-performed. If the sinkpad supports a loopfunction and the peer pad returns TRUE
-from the GstPadCheckPullRange function, then the peer pad is activated first as
-it must be in the right state to handle a _pull_range(). Note that the
-state change of the element is not yet performed, just the activate function
-is called on the source pad. This means that elements that implement a
-getrange function must be prepared to get their activate function called
-before their state change function.
-
-Elements that have multiple sinkpads that require all of them to operate
-in the same mode (push/pull) can use the _check_pull_range() on all
-their pads and can then remove the loop functions if one of the pads does
-not support pull based mode.
-
-