mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-24 01:00:37 +00:00
docs: Add an little explanation about the class hierarchie rework
This commit is contained in:
parent
a43f567807
commit
736df5abfd
1 changed files with 103 additions and 0 deletions
103
docs/random/rework_class_hierarchie.html
Normal file
103
docs/random/rework_class_hierarchie.html
Normal file
|
@ -0,0 +1,103 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8" >
|
||||
<title> Rework the GStreamer Editing Services class hierarchy </title>
|
||||
<xmp theme="cerulean" style="display:none;">
|
||||
|
||||
Reasoning:
|
||||
----------
|
||||
|
||||
All the time (position) related concepts are shared between GESTimelineObject and GESTrackObject
|
||||
and currently are repeated at the 2 levels.
|
||||
Moreover, if we want to add the concept of Group we end up with something quite similare to the current
|
||||
GESTimelineObject but that contains GESTimelineObject-s instead of GESTrackObject-s so we could share
|
||||
those informations creating a new class aiming at containing the objects that have that
|
||||
notion of timing.
|
||||
|
||||
At the same time, we want to clarify namings. First we should remove the word Object in class names,
|
||||
we have been told various times that it sounds just "wrong" for people as Objects are instances and there
|
||||
we are talking about Classes.
|
||||
|
||||
Class Hierarchy:
|
||||
-------------
|
||||
|
||||
<pre><code>
|
||||
<table>
|
||||
<tr>
|
||||
<td>
|
||||
|
||||
Before:
|
||||
-------
|
||||
|
||||
GESTimelineObject
|
||||
GESTimelineSource
|
||||
GESCustomTimelineSource
|
||||
GESTimelineTestSource
|
||||
GESTimelineFileSource
|
||||
GESTimelineTitleSource
|
||||
GESTimelineOperation
|
||||
GESTimelineOverlay
|
||||
GESTimelineTextOverlay
|
||||
GESTimelineTransition
|
||||
GESTimelineTransition
|
||||
GESTimelineEffect
|
||||
GESTimelineParseLaunchEffect
|
||||
GESTimelineLayer
|
||||
GESSimpleTimelineLayer
|
||||
GESTrackObject
|
||||
GESTrackSource
|
||||
GESTrackAudioTestSource
|
||||
GESTrackFileSource
|
||||
GESTrackImageSource
|
||||
GESTrackTitleSource
|
||||
GESTrackVideoTestSource
|
||||
GESTrackOperation
|
||||
GESTrackTransition
|
||||
GESTrackAudioTransition
|
||||
GESTrackVideoTransition
|
||||
GESTrackEffect
|
||||
GESTrackParseLaunchEffect
|
||||
GESTrackTextOverlay
|
||||
</td>
|
||||
<td>
|
||||
|
||||
After:
|
||||
-------
|
||||
|
||||
GESTimelineElement
|
||||
GESContainer
|
||||
GESClip
|
||||
GESSourceClip
|
||||
GESCustomSourceClip
|
||||
GESTestClip
|
||||
GESUriClip
|
||||
GESTitleClip
|
||||
GESOperationClip
|
||||
GESOverlayClip
|
||||
GESTextOverlayClip
|
||||
GESBaseTransitionClip
|
||||
GESTransitionClip
|
||||
GESBaseEffectClip
|
||||
GESEffectClip
|
||||
GESClipGroup
|
||||
GESTrackElement
|
||||
GESSource
|
||||
GESAudioTestSource
|
||||
GESUriSource
|
||||
GESImageSource
|
||||
GESTitleSource
|
||||
GESVideoTestSource
|
||||
GESOperation
|
||||
GESTransition
|
||||
GESAudioTransition
|
||||
GESVideoTransition
|
||||
GESBaseEffect
|
||||
GESEffect
|
||||
GESTextOverlay
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</code></pre>
|
||||
</xmp>
|
||||
<script src="http://strapdownjs.com/v/0.1/strapdown.js"></script>
|
||||
</html>
|
Loading…
Reference in a new issue