[vlc-devel] commit: Privatize vlc_object_t.i_object_type ( Rémi Denis-Courmont )

git version control git at videolan.org
Sat Jan 17 20:31:39 CET 2009


vlc | branch: master | Rémi Denis-Courmont <rdenis at simphalempin.com> | Sat Jan 17 21:26:09 2009 +0200| [1e1fa17174226b07fddeab7930b81e72b1764b65] | committer: Rémi Denis-Courmont 

Privatize vlc_object_t.i_object_type

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=1e1fa17174226b07fddeab7930b81e72b1764b65
---

 include/vlc_common.h            |    1 -
 src/input/decoder.c             |    2 +-
 src/input/input.c               |    7 +++----
 src/input/stream.c              |    4 ++--
 src/libvlc.h                    |    2 ++
 src/misc/objects.c              |   13 +++++++------
 src/video_output/video_output.c |    2 +-
 7 files changed, 16 insertions(+), 15 deletions(-)

diff --git a/include/vlc_common.h b/include/vlc_common.h
index 2d8e672..a231d83 100644
--- a/include/vlc_common.h
+++ b/include/vlc_common.h
@@ -509,7 +509,6 @@ typedef int ( * vlc_callback_t ) ( vlc_object_t *,      /* variable's object */
  * these members are common for all vlc objects                             \
  */                                                                         \
 /**@{*/                                                                     \
-    int   i_object_type;                                                    \
     const char *psz_object_type;                                            \
     char *psz_object_name;                                                  \
                                                                             \
diff --git a/src/input/decoder.c b/src/input/decoder.c
index a4d6f7d..8104e85 100644
--- a/src/input/decoder.c
+++ b/src/input/decoder.c
@@ -1940,7 +1940,7 @@ static void DecoderProcess( decoder_t *p_dec, block_t *p_block )
     }
 
 #ifdef ENABLE_SOUT
-    if( p_dec->i_object_type == VLC_OBJECT_PACKETIZER )
+    if( vlc_internals( p_dec )->i_object_type == VLC_OBJECT_PACKETIZER )
     {
         if( p_block )
             p_block->i_flags &= ~BLOCK_FLAG_CORE_PRIVATE_MASK;
diff --git a/src/input/input.c b/src/input/input.c
index 5a27452..379fee5 100644
--- a/src/input/input.c
+++ b/src/input/input.c
@@ -489,11 +489,10 @@ static void ObjectKillChildrens( input_thread_t *p_input, vlc_object_t *p_obj )
     int i;
 
     /* FIXME ObjectKillChildrens seems a very bad idea in fact */
-    if( p_obj->i_object_type == VLC_OBJECT_VOUT ||
-        p_obj->i_object_type == VLC_OBJECT_AOUT ||
+    i = vlc_internals( p_obj )->i_object_type;
+    if( i == VLC_OBJECT_VOUT ||i == VLC_OBJECT_AOUT ||
         p_obj == VLC_OBJECT(p_input->p->p_sout) ||
-        p_obj->i_object_type == VLC_OBJECT_DECODER ||
-        p_obj->i_object_type == VLC_OBJECT_PACKETIZER )
+        i == VLC_OBJECT_DECODER || i == VLC_OBJECT_PACKETIZER )
         return;
 
     vlc_object_kill( p_obj );
diff --git a/src/input/stream.c b/src/input/stream.c
index e2d5eec..d92c5d0 100644
--- a/src/input/stream.c
+++ b/src/input/stream.c
@@ -1674,7 +1674,7 @@ static int AReadStream( stream_t *s, void *p_read, unsigned int i_read )
     int i_total = 0;
 
     if( s->p_parent && s->p_parent->p_parent &&
-        s->p_parent->p_parent->i_object_type == VLC_OBJECT_INPUT )
+        vlc_internals( s->p_parent->p_parent )->i_object_type == VLC_OBJECT_INPUT )
         p_input = (input_thread_t *)s->p_parent->p_parent;
 
     if( !p_sys->i_list )
@@ -1744,7 +1744,7 @@ static block_t *AReadBlock( stream_t *s, bool *pb_eof )
     int i_total = 0;
 
     if( s->p_parent && s->p_parent->p_parent &&
-        s->p_parent->p_parent->i_object_type == VLC_OBJECT_INPUT )
+        vlc_internals( s->p_parent->p_parent )->i_object_type == VLC_OBJECT_INPUT )
         p_input = (input_thread_t *)s->p_parent->p_parent;
 
     if( !p_sys->i_list )
diff --git a/src/libvlc.h b/src/libvlc.h
index 84f080c..f76fd74 100644
--- a/src/libvlc.h
+++ b/src/libvlc.h
@@ -146,6 +146,8 @@ VLC_EXPORT(char **, module_GetModulesNamesForCapability,
  */
 typedef struct vlc_object_internals_t
 {
+    int             i_object_type; /* Object type, deprecated */
+
     /* Object variables */
     variable_t *    p_vars;
     vlc_mutex_t     var_lock;
diff --git a/src/misc/objects.c b/src/misc/objects.c
index 0751d3f..d72f8d8 100644
--- a/src/misc/objects.c
+++ b/src/misc/objects.c
@@ -129,7 +129,7 @@ void *__vlc_custom_create( vlc_object_t *p_this, size_t i_size,
     assert (i_size >= sizeof (vlc_object_t));
     p_new = (vlc_object_t *)(p_priv + 1);
 
-    p_new->i_object_type = i_type;
+    p_priv->i_object_type = i_type;
     p_new->psz_object_type = psz_type;
     p_new->psz_object_name = NULL;
 
@@ -504,7 +504,8 @@ void * __vlc_object_find( vlc_object_t *p_this, int i_type, int i_mode )
     vlc_object_t *p_found;
 
     /* If we are of the requested type ourselves, don't look further */
-    if( !(i_mode & FIND_STRICT) && p_this->i_object_type == i_type )
+    if( !(i_mode & FIND_STRICT)
+     && vlc_internals (p_this)->i_object_type == i_type )
     {
         vlc_object_hold( p_this );
         return p_this;
@@ -1025,7 +1026,7 @@ static vlc_object_t * FindObject( vlc_object_t *p_this, int i_type, int i_mode )
         p_tmp = p_this->p_parent;
         if( p_tmp )
         {
-            if( p_tmp->i_object_type == i_type )
+            if( vlc_internals( p_tmp )->i_object_type == i_type )
             {
                 vlc_object_hold( p_tmp );
                 return p_tmp;
@@ -1041,7 +1042,7 @@ static vlc_object_t * FindObject( vlc_object_t *p_this, int i_type, int i_mode )
         for( i = vlc_internals( p_this )->i_children; i--; )
         {
             p_tmp = vlc_internals( p_this )->pp_children[i];
-            if( p_tmp->i_object_type == i_type )
+            if( vlc_internals( p_tmp )->i_object_type == i_type )
             {
                 vlc_object_hold( p_tmp );
                 return p_tmp;
@@ -1288,7 +1289,7 @@ static int CountChildren( vlc_object_t *p_this, int i_type )
     {
         p_tmp = vlc_internals( p_this )->pp_children[i];
 
-        if( p_tmp->i_object_type == i_type )
+        if( vlc_internals( p_tmp )->i_object_type == i_type )
         {
             i_count++;
         }
@@ -1307,7 +1308,7 @@ static void ListChildren( vlc_list_t *p_list, vlc_object_t *p_this, int i_type )
     {
         p_tmp = vlc_internals( p_this )->pp_children[i];
 
-        if( p_tmp->i_object_type == i_type )
+        if( vlc_internals( p_tmp )->i_object_type == i_type )
             ListReplace( p_list, p_tmp, p_list->i_count++ );
 
         ListChildren( p_list, p_tmp, i_type );
diff --git a/src/video_output/video_output.c b/src/video_output/video_output.c
index 463f35a..8ec40d9 100644
--- a/src/video_output/video_output.c
+++ b/src/video_output/video_output.c
@@ -420,7 +420,7 @@ vout_thread_t * __vout_Create( vlc_object_t *p_parent, video_format_t *p_fmt )
 
     /* If the parent is not a VOUT object, that means we are at the start of
      * the video output pipe */
-    if( p_parent->i_object_type != VLC_OBJECT_VOUT )
+    if( vlc_internals( p_parent )->i_object_type != VLC_OBJECT_VOUT )
     {
         /* Look for the default filter configuration */
         p_vout->p->psz_filter_chain =




More information about the vlc-devel mailing list