]> git.sesse.net Git - vlc/commitdiff
Added a input_ressource_HasVout.
authorLaurent Aimar <fenrir@videolan.org>
Sat, 24 Jan 2009 10:13:24 +0000 (11:13 +0100)
committerLaurent Aimar <fenrir@videolan.org>
Sat, 24 Jan 2009 10:27:39 +0000 (11:27 +0100)
It can only be used on detached ressource to ensure the value validity.

src/input/input_interface.h
src/input/ressource.c

index 7b2490cfc8c30bf9118bd65c215fd030f53eece6..ae963b5958e2e0c59669ce22d61e631b0b0a0d0b 100644 (file)
@@ -54,18 +54,20 @@ void input_ressource_Delete( input_ressource_t * );
 
 /**
  * This function deletes the current sout in the ressources.
- *
- * It can only be called on detached ressources.
  */
 void input_ressource_TerminateSout( input_ressource_t *p_ressource );
 
 /**
  * This function deletes the current vout in the ressources.
- *
- * It can only be called on detached ressources.
  */
 void input_ressource_TerminateVout( input_ressource_t *p_ressource );
 
+/**
+ * This function return true if there is at least one vout in the ressources.
+ *
+ * It can only be called on detached ressources.
+ */
+bool input_ressource_HasVout( input_ressource_t *p_ressource );
 
 /* input.c */
 #define input_CreateThreadExtended(a,b,c,d) __input_CreateThreadExtended(VLC_OBJECT(a),b,c,d)
index 852843b9742afa3e49bc7b2c35c0eb21342316f2..8320e9057df167ef894f986931eabf6a76385042 100644 (file)
@@ -339,6 +339,7 @@ static aout_instance_t *HoldAout( input_ressource_t *p_ressource )
 
     return p_aout;
 }
+
 /* */
 input_ressource_t *input_ressource_New( void )
 {
@@ -406,6 +407,15 @@ void input_ressource_TerminateVout( input_ressource_t *p_ressource )
 {
     input_ressource_RequestVout( p_ressource, NULL, NULL );
 }
+bool input_ressource_HasVout( input_ressource_t *p_ressource )
+{
+    vlc_mutex_lock( &p_ressource->lock );
+    assert( !p_ressource->p_input );
+    const bool b_vout = p_ressource->p_vout_free != NULL;
+    vlc_mutex_unlock( &p_ressource->lock );
+
+    return b_vout;
+}
 
 /* */
 aout_instance_t *input_ressource_RequestAout( input_ressource_t *p_ressource, aout_instance_t *p_aout )