Corrected the associations on the UML diagrams
authorWim Taymans <wim.taymans@gmail.com>
Sun, 11 Feb 2001 22:22:47 +0000 (22:22 +0000)
committerWim Taymans <wim.taymans@gmail.com>
Sun, 11 Feb 2001 22:22:47 +0000 (22:22 +0000)
Original commit message from CVS:
Corrected the associations on the UML diagrams

docs/random/caps.dia
docs/random/wtay/caps-negociation

index 2f160e2..b511083 100644 (file)
   <layer name="Background" visible="true">
     <object type="UML - Class" version="0" id="O0">
       <attribute name="obj_pos">
-        <point val="1.65,5.6"/>
+        <point val="0.75,5.55"/>
       </attribute>
       <attribute name="obj_bb">
-        <rectangle val="1.6,5.55;13.6504,9.65"/>
+        <rectangle val="0.7,5.5;12.7504,9.6"/>
       </attribute>
       <attribute name="elem_corner">
-        <point val="1.65,5.6"/>
+        <point val="0.75,5.55"/>
       </attribute>
       <attribute name="elem_width">
         <real val="11.9504"/>
     </object>
     <object type="UML - Association" version="0" id="O2">
       <attribute name="obj_pos">
-        <point val="13.6004,9.1"/>
+        <point val="12.7004,9.05"/>
       </attribute>
       <attribute name="obj_bb">
-        <rectangle val="12.1504,7.65;17.8,11.8"/>
+        <rectangle val="11.2504,7.6;18.4892,11.8"/>
       </attribute>
       <attribute name="orth_points">
-        <point val="13.6004,9.1"/>
-        <point val="15.15,9.1"/>
-        <point val="15.15,10.35"/>
+        <point val="12.7004,9.05"/>
+        <point val="14.15,9.05"/>
+        <point val="14.15,10.35"/>
         <point val="16.35,10.35"/>
       </attribute>
       <attribute name="orth_orient">
             <string/>
           </attribute>
           <attribute name="multiplicity">
-            <string>#0#</string>
+            <string>#1#</string>
           </attribute>
           <attribute name="arrow">
             <boolean val="false"/>
             <string/>
           </attribute>
           <attribute name="multiplicity">
-            <string>#1#</string>
+            <string>#0..1#</string>
           </attribute>
           <attribute name="arrow">
             <boolean val="false"/>
             <string/>
           </attribute>
           <attribute name="multiplicity">
-            <string>#0#</string>
+            <string>#1#</string>
           </attribute>
           <attribute name="arrow">
             <boolean val="false"/>
index a445f30..8c052bd 100644 (file)
@@ -177,8 +177,6 @@ the caps can be set with the gst_pad_set_caps function, which accepts
 the following parameters:
 
    - the pad to set the caps to
-   - whether the peer pad *must* accept the caps (AUTHORITATIVE) or
-     whether if can reject the caps (TRY)
    - a GstCaps* structure
 
 example4:
@@ -187,7 +185,6 @@ example4:
 !
 !     gst_pad_set_caps (
 !       pad,
-!       GST_CAPS_NEGOTIATE_AUTHORITATIVE,
 !       gst_caps_new_with_props (
 !         "src_caps",                       /* name */
 !         "audio/raw",                      /* mime */
@@ -201,20 +198,12 @@ example4:
 !       )
 !     );
 
-the _set_caps function returns a gboolean, indicating that the
-new caps are accepted by the peer pad.
+The _set_caps method will trigger the caps negotiation with the
+peer pad (if connected). 
 
-when the negotiation type is set to TRY, and the negotiation 
-fails, the pad has to perform another _set_caps call. The last 
-call to _set_caps has to be of type AUTHORITATIVE.
 
-when the negotiation fails and the type is set to AUTHORITATIVE,
-the pads are disconnected and a signal is emitted to inform any
-interested listeners.
-
-
-6) caps negotiation
--------------------
+6) caps negotiation function
+----------------------------
 
 the negotiate function of a pad is called whenever the peer pad 
 modifies the caps using the gst_pad_set_caps function.
@@ -224,6 +213,7 @@ new caps are acceptable. When it accepts the caps, both pads will
 be set to the negotiated caps.
 
 example5:
+!
 ! this is the caps negotiation function implemented by an element on
 ! one of its sink pads.
 !
@@ -241,6 +231,45 @@ example5:
 !    return TRUE;
 !  }
 
+When the negotiate function returns FALSE (it does not accept the
+specified caps of the peer pad), 
+
+
+figure1
+!
+!
+!  element             pad                pad->peer
+!   !
+!   ! _negotiate(pad)   
+!   !------------------>!
+!                       ! gst_pad_negotiate()
+!                       !------. 
+!                       !<-----'               
+!                       ! _caps_negotiate()
+!                       !--------------------->!
+!
+!
+
+
+the element has some of its internal properties changed. It wants
+to renegotiate the caps with its peer element. The element does:
+
+  gst_pad_renegotiate (element->srcpad);
+
+this will trigger the class method of the pad and 
+
+
+
+
+7) use cases
+------------
+
+
+
+
+
+
+