]> git.sesse.net Git - vlc/blobdiff - include/vlc_arrays.h
Migrate module, module_list and obsolete_* to vlc_config_set
[vlc] / include / vlc_arrays.h
index 845df5c4f8f2cdfe30f093d57e317d22b33010c7..ed256c83cf0413a436fc56b6cecb27020829efb7 100644 (file)
@@ -2,7 +2,7 @@
  * vlc_arrays.h : Arrays and data structures handling
  *****************************************************************************
  * Copyright (C) 1999-2004 the VideoLAN team
- * $Id: vlc_playlist.h 17108 2006-10-15 15:28:34Z zorglub $
+ * $Id$
  *
  * Authors: Samuel Hocevar <sam@zoy.org>
  *          ClĂ©ment Stenac <zorglub@videolan.org>
     }                                                                       \
 }
 
+#define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0]))
 
 /* API */
 #define DECL_ARRAY(type) struct {                                           \
@@ -313,6 +314,18 @@ vlc_array_item_at_index( vlc_array_t * p_array, int i_index )
     return p_array->pp_elems[i_index];
 }
 
+static inline int
+vlc_array_index_of_item( vlc_array_t * p_array, void * item )
+{
+    int i;
+    for( i = 0; i < p_array->i_count; i++)
+    {
+        if( p_array->pp_elems[i] == item )
+            return i;
+    }
+    return -1;
+}
+
 /* Write */
 static inline void
 vlc_array_insert( vlc_array_t * p_array, void * p_elem, int i_index )