Added .S files in drivers
[kugel-rb.git] / apps / tree.h
blobc7b678eb8240ece981cdca60f1bab303b6de22c1
1 /***************************************************************************
2 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/
8 * $Id$
10 * Copyright (C) 2002 Daniel Stenberg
12 * All files in this archive are subject to the GNU General Public License.
13 * See the file COPYING in the source tree root for full license agreement.
15 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
16 * KIND, either express or implied.
18 ****************************************************************************/
19 #ifndef _TREE_H_
20 #define _TREE_H_
22 #include <stdbool.h>
24 struct entry {
25 short attr; /* FAT attributes + file type flags */
26 char *name;
29 /* using attribute not used by FAT */
30 #define TREE_ATTR_MPA 0x0100 /* mpeg audio file */
31 #define TREE_ATTR_M3U 0x0200 /* playlist */
32 #define TREE_ATTR_WPS 0x0300 /* wps config file */
33 #define TREE_ATTR_MOD 0x0400 /* firmware file */
34 #define TREE_ATTR_CFG 0x0500 /* config file */
35 #define TREE_ATTR_TXT 0x0600 /* text file */
36 #define TREE_ATTR_FONT 0x0700 /* font file */
37 #define TREE_ATTR_LNG 0x0800 /* binary lang file */
38 #define TREE_ATTR_ROCK 0x0900 /* binary rockbox plugin */
39 #define TREE_ATTR_UCL 0x0A00 /* rockbox flash image */
40 #define TREE_ATTR_CH8 0x0B00 /* chip-8 game */
41 #define TREE_ATTR_RVF 0x0C00 /* rockbox video file */
42 #define TREE_ATTR_BMARK 0x0D00 /* book mark file */
43 #define TREE_ATTR_MASK 0xFFC0 /* which bits tree.c uses (above) */
45 void tree_init(void);
46 void browse_root(void);
47 void set_current_file(char *path);
48 bool rockbox_browse(char *root, int dirfilter);
49 bool create_playlist(void);
50 void resume_directory(char *dir);
51 char *getcwd(char *buf, int size);
52 void reload_directory(void);
53 struct entry* load_and_sort_directory(char *dirname, int *dirfilter,
54 int *num_files, bool *buffer_full);
56 #endif