xine-lib 1.2.13-20230125hg15249
stree.h
Go to the documentation of this file.
1/*
2 * Copyright (C) 2021 the xine project
3 * Copyright (C) 2021 Torsten Jager <t.jager@gmx.de>
4 *
5 * This file is part of xine, a free video player.
6 *
7 * xine is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation; either version 2 of the License, or
10 * (at your option) any later version.
11 *
12 * xine is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
16 *
17 * You should have received a copy of the GNU General Public License
18 * along with this program; if not, write to the Free Software
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA
20 *
21 * Xine string tree library.
22 */
23
24#ifndef HAVE_XINE_STREE_H
25#define HAVE_XINE_STREE_H
26
27#ifdef __cplusplus
28extern "C" {
29#endif
30
31#include <stdint.h>
32#include <xine/attributes.h>
33#include <xine/compat.h>
34
42
43typedef struct {
44 uint32_t next, prev;
45 uint32_t first_child, last_child, parent;
46 uint32_t num_children, level, index;
47 uint32_t key, value;
49
53
55void xine_stree_dump (const xine_stree_t *tree, const char *buf, uint32_t base) XINE_PROTECTED;
56
61uint32_t xine_stree_find (const xine_stree_t *tree, const char *buf, const char *path, uint32_t base, int case_sens) XINE_PROTECTED;
62
64
72
75
83
84#ifdef __cplusplus
85}
86#endif
87
88#endif
#define XINE_PROTECTED
Definition attributes.h:75
xine_stree_t * xine_stree_load(char *buf, xine_stree_mode_t *mode)
Definition stree.c:774
size_t xine_string_unbackslash(char *s)
Definition stree.c:90
void xine_stree_dump(const xine_stree_t *tree, const char *buf, uint32_t base)
Definition stree.c:802
uint32_t xine_stree_find(const xine_stree_t *tree, const char *buf, const char *path, uint32_t base, int case_sens)
Definition stree.c:864
xine_stree_mode_t
Definition stree.h:35
@ XINE_STREE_LAST
Definition stree.h:40
@ XINE_STREE_AUTO
Definition stree.h:36
@ XINE_STREE_JSON
Definition stree.h:38
@ XINE_STREE_URL
Definition stree.h:39
@ XINE_STREE_XML
Definition stree.h:37
void xine_stree_delete(xine_stree_t **tree)
Definition stree.c:947
size_t xine_string_unampersand(char *s)
Definition stree.c:198
size_t xine_string_unpercent(char *s)
Definition stree.c:59
Definition stree.h:43
uint32_t next
Definition stree.h:44
uint32_t index
Definition stree.h:46
uint32_t first_child
Definition stree.h:45
uint32_t key
Definition stree.h:47
enable disable number of frames of telecine pattern sync required before mode change make frames evenly spaced for film mode(24 fps)" ) PARAM_ITEM( POST_PARAM_TYPE_BOOL