VLC
3.0.18
|
Go to the source code of this file.
Data Structures | |
struct | vlc_array_t |
struct | vlc_dictionary_entry_t |
struct | vlc_dictionary_t |
Macros | |
#define | TAB_INIT(count, tab) |
#define | TAB_CLEAN(count, tab) |
#define | TAB_APPEND_CAST(cast, count, tab, p) |
#define | TAB_APPEND(count, tab, p) TAB_APPEND_CAST( , count, tab, p ) |
#define | TAB_FIND(count, tab, p, idx) |
#define | TAB_ERASE(count, tab, index) |
#define | TAB_REMOVE(count, tab, p) |
#define | TAB_INSERT_CAST(cast, count, tab, p, index) |
#define | TAB_INSERT(count, tab, p, index) TAB_INSERT_CAST( , count, tab, p, index ) |
#define | BSEARCH(entries, count, elem, zetype, key, answer) |
Binary search in a sorted array. More... | |
#define | _ARRAY_ALLOC(array, newsize) |
#define | _ARRAY_GROW1(array) |
#define | ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0])) |
#define | DECL_ARRAY(type) |
#define | TYPEDEF_ARRAY(type, name) typedef DECL_ARRAY(type) name; |
#define | ARRAY_INIT(array) |
#define | ARRAY_RESET(array) |
#define | ARRAY_APPEND(array, elem) |
#define | ARRAY_INSERT(array, elem, pos) |
#define | _ARRAY_SHRINK(array) |
#define | ARRAY_REMOVE(array, pos) |
#define | ARRAY_VAL(array, pos) array.p_elems[pos] |
#define | ARRAY_BSEARCH(array, elem, zetype, key, answer) BSEARCH( (array).p_elems, (array).i_size, elem, zetype, key, answer) |
#define | FOREACH_ARRAY(item, array) |
#define | FOREACH_END() } } |
#define | vlc_array_item_at_index(ar, idx) |
Typedefs | |
typedef struct vlc_array_t | vlc_array_t |
typedef struct vlc_dictionary_entry_t | vlc_dictionary_entry_t |
typedef struct vlc_dictionary_t | vlc_dictionary_t |
Functions | |
static void * | realloc_down (void *ptr, size_t size) |
static void | vlc_array_init (vlc_array_t *p_array) |
static void | vlc_array_clear (vlc_array_t *p_array) |
static size_t | vlc_array_count (vlc_array_t *p_array) |
static ssize_t | vlc_array_index_of_item (const vlc_array_t *ar, const void *elem) |
static int | vlc_array_insert (vlc_array_t *ar, void *elem, int idx) |
static void | vlc_array_insert_or_abort (vlc_array_t *ar, void *elem, int idx) |
static int | vlc_array_append (vlc_array_t *ar, void *elem) |
static void | vlc_array_append_or_abort (vlc_array_t *ar, void *elem) |
static void | vlc_array_remove (vlc_array_t *ar, size_t idx) |
static uint64_t | DictHash (const char *psz_string, int hashsize) |
static void | vlc_dictionary_init (vlc_dictionary_t *p_dict, int i_size) |
static void | vlc_dictionary_clear (vlc_dictionary_t *p_dict, void(*pf_free)(void *p_data, void *p_obj), void *p_obj) |
static int | vlc_dictionary_has_key (const vlc_dictionary_t *p_dict, const char *psz_key) |
static void * | vlc_dictionary_value_for_key (const vlc_dictionary_t *p_dict, const char *psz_key) |
static int | vlc_dictionary_keys_count (const vlc_dictionary_t *p_dict) |
static bool | vlc_dictionary_is_empty (const vlc_dictionary_t *p_dict) |
static char ** | vlc_dictionary_all_keys (const vlc_dictionary_t *p_dict) |
static void | vlc_dictionary_insert_impl_ (vlc_dictionary_t *p_dict, const char *psz_key, void *p_value, bool rebuild) |
static void | vlc_dictionary_insert (vlc_dictionary_t *p_dict, const char *psz_key, void *p_value) |
static void | vlc_dictionary_remove_value_for_key (const vlc_dictionary_t *p_dict, const char *psz_key, void(*pf_free)(void *p_data, void *p_obj), void *p_obj) |
Variables | |
static void *const | kVLCDictionaryNotFound = NULL |
This file defines functions, structures and macros for handling arrays in vlc
#define _ARRAY_ALLOC | ( | array, | |
newsize | |||
) |
#define _ARRAY_GROW1 | ( | array | ) |
#define _ARRAY_SHRINK | ( | array | ) |
#define ARRAY_APPEND | ( | array, | |
elem | |||
) |
#define ARRAY_BSEARCH | ( | array, | |
elem, | |||
zetype, | |||
key, | |||
answer | |||
) | BSEARCH( (array).p_elems, (array).i_size, elem, zetype, key, answer) |
#define ARRAY_INIT | ( | array | ) |
#define ARRAY_INSERT | ( | array, | |
elem, | |||
pos | |||
) |
#define ARRAY_REMOVE | ( | array, | |
pos | |||
) |
#define ARRAY_RESET | ( | array | ) |
#define ARRAY_SIZE | ( | x | ) | (sizeof(x) / sizeof((x)[0])) |
#define ARRAY_VAL | ( | array, | |
pos | |||
) | array.p_elems[pos] |
#define BSEARCH | ( | entries, | |
count, | |||
elem, | |||
zetype, | |||
key, | |||
answer | |||
) |
Binary search in a sorted array.
The key must be comparable by < and >
entries | array of entries |
count | number of entries |
elem | key to check within an entry (like .id, or ->i_id) |
zetype | type of the key |
key | value of the key |
answer | index of answer within the array. -1 if not found |
#define DECL_ARRAY | ( | type | ) |
#define FOREACH_ARRAY | ( | item, | |
array | |||
) |
#define FOREACH_END | ( | ) | } } |
#define TAB_APPEND | ( | count, | |
tab, | |||
p | |||
) | TAB_APPEND_CAST( , count, tab, p ) |
#define TAB_CLEAN | ( | count, | |
tab | |||
) |
#define TAB_ERASE | ( | count, | |
tab, | |||
index | |||
) |
#define TAB_INSERT | ( | count, | |
tab, | |||
p, | |||
index | |||
) | TAB_INSERT_CAST( , count, tab, p, index ) |
#define TYPEDEF_ARRAY | ( | type, | |
name | |||
) | typedef DECL_ARRAY(type) name; |
#define vlc_array_item_at_index | ( | ar, | |
idx | |||
) |
typedef struct vlc_array_t vlc_array_t |
typedef struct vlc_dictionary_entry_t vlc_dictionary_entry_t |
typedef struct vlc_dictionary_t vlc_dictionary_t |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
Referenced by background_worker_Push(), dialog_add_locked(), mrl_FragmentSplit(), and vlc_http_cookies_store().
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
Referenced by dialog_remove_locked().
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
Referenced by BackgroundWorkerCancel(), dialog_remove_locked(), Thread(), and vlc_http_cookies_store().
|
inlinestatic |
Referenced by vlc_meta_CopyExtraNames(), and vlc_meta_Merge().
|
inlinestatic |
Referenced by playlist_fetcher_Delete(), and vlc_meta_Delete().
|
inlinestatic |
Referenced by AddAlbumCache().
|
inlinestatic |
Referenced by playlist_fetcher_New(), and vlc_meta_New().
|
inlinestatic |
Referenced by AddAlbumCache(), vlc_meta_AddExtra(), and vlc_meta_Merge().
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
Referenced by vlc_meta_GetExtraCount().
|
inlinestatic |
Referenced by vlc_meta_AddExtra(), and vlc_meta_Merge().
|
inlinestatic |
Referenced by ReadAlbumCache(), vlc_meta_AddExtra(), vlc_meta_GetExtra(), and vlc_meta_Merge().
|
static |
Referenced by vlc_meta_AddExtra().