]> git.sesse.net Git - vlc/blobdiff - src/libvlc.h
Hide thread ID out of VLC_COMMON_MEMBERS
[vlc] / src / libvlc.h
index 1019056c52707571ea7bc7028f268ba0b910f32c..e7a92657820ad34bb2b7a4493d1a4f74a89aee2c 100644 (file)
@@ -74,13 +74,28 @@ struct libvlc_global_data_t
 #endif
 };
 
-#define vlc_global( a ) __vlc_global( VLC_OBJECT( a ) )
-static inline libvlc_global_data_t *__vlc_global( vlc_object_t *p_this )
-{
-    return (libvlc_global_data_t *)p_this->p_libvlc_global;
-}
+libvlc_global_data_t *vlc_global (void);
 
 extern uint32_t cpu_flags;
 uint32_t CPUCapabilities( void );
 
+/* Private LibVLC data for each objects */
+struct vlc_object_internals_t
+{
+    /* Object variables */
+    variable_t *    p_vars;
+    vlc_mutex_t     var_lock;
+    int             i_vars;
+
+    /* Thread properties, if any */
+    vlc_thread_t thread_id;
+    vlc_bool_t   b_thread;
+};
+
+
+static inline vlc_object_internals_t *vlc_internals( vlc_object_t *obj )
+{
+    return obj->p_internals;
+}
+
 #endif