A modern Music Player Daemon based on Rockbox open source high quality audio player
libadwaita audio rust zig deno mpris rockbox mpd
at master 130 lines 4.9 kB view raw
1/*************************************************************************** 2 * __________ __ ___. 3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___ 4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / 5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < 6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ 7 * \/ \/ \/ \/ \/ 8 * $Id$ 9 * 10 * Copyright (C) 2010 Thomas Martitz 11 * 12 * This program is free software; you can redistribute it and/or 13 * modify it under the terms of the GNU General Public License 14 * as published by the Free Software Foundation; either version 2 15 * of the License, or (at your option) any later version. 16 * 17 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY 18 * KIND, either express or implied. 19 * 20 ****************************************************************************/ 21 22#ifndef __PATHS_H__ 23#define __PATHS_H__ 24 25#include <stdbool.h> 26#include "autoconf.h" 27 28/* name of directory where configuration, fonts and other data 29 * files are stored */ 30#ifdef __PCTOOL__ 31#undef WPS_DIR 32#else 33 34/* ROCKBOX_DIR is now defined in autoconf.h for flexible build types */ 35#ifndef ROCKBOX_DIR 36#error ROCKBOX_DIR not defined (should be in autoconf.h) 37#endif 38#define ROCKBOX_DIR_LEN (sizeof(ROCKBOX_DIR)-1) 39#endif /* def __PCTOOL__ */ 40 41/* NOTE: target-specific hosted HOME_DIR resides in filesystem-app.c */ 42#if !defined(APPLICATION) || defined(SAMSUNG_YPR0) || defined(SAMSUNG_YPR1) || \ 43 defined(DX50) || defined(DX90) || defined(SONY_NWZ_LINUX) || \ 44 defined(HIBY_LINUX) || defined(FIIO_M3K_LINUX) || defined(CTRU) 45 46#define HOME_DIR "/" 47 48/* make sure both are the same for native builds */ 49#undef ROCKBOX_LIBRARY_PATH 50#define ROCKBOX_LIBRARY_PATH ROCKBOX_DIR 51 52#define PLUGIN_DIR ROCKBOX_DIR "/rocks" 53#define CODECS_DIR ROCKBOX_DIR "/codecs" 54 55#define RB_ROOT_VOL_HIDDEN(v) (IF_MV_VOL(v) == 0) 56#define RB_ROOT_CONTENTS_DIR "/" IF_MV("<0>") 57#define REC_BASE_DIR HOME_DIR "Recordings" 58#define PLAYLIST_CATALOG_DEFAULT_DIR HOME_DIR "Playlists" 59 60#elif defined(RG_NANO) 61#define HOME_DIR ROCKBOX_DIR 62#define PLUGIN_DIR ROCKBOX_DIR "/rocks" 63#define CODECS_DIR ROCKBOX_DIR "/codecs" 64#define REC_BASE_DIR ROCKBOX_DIR "/Recordings" 65#define PLAYLIST_CATALOG_DEFAULT_DIR ROCKBOX_DIR "/Playlists" 66#else /* APPLICATION */ 67 68#define HOME_DIR "<HOME>" /* replaced at runtime */ 69#define HAVE_SPECIAL_DIRS 70 71#define PLUGIN_DIR ROCKBOX_LIBRARY_PATH "/rockbox/rocks" 72#if (CONFIG_PLATFORM & PLATFORM_ANDROID) 73#define CODECS_DIR ROCKBOX_BINARY_PATH 74#else 75#define CODECS_DIR ROCKBOX_LIBRARY_PATH "/rockbox/codecs" 76#endif 77 78#define REC_BASE_DIR HOME_DIR "/Recordings" 79#define PLAYLIST_CATALOG_DEFAULT_DIR HOME_DIR "/Playlists" 80#endif /* !APPLICATION || SAMSUNG_YPR0 */ 81 82#define LANG_DIR ROCKBOX_DIR "/langs" 83#define PLUGIN_GAMES_DIR PLUGIN_DIR "/games" 84#define PLUGIN_APPS_DIR PLUGIN_DIR "/apps" 85#define PLUGIN_DEMOS_DIR PLUGIN_DIR "/demos" 86#define VIEWERS_DIR PLUGIN_DIR "/viewers" 87 88#if defined(APPLICATION) && \ 89 !(defined(SAMSUNG_YPR0) || defined(SAMSUNG_YPR1) || \ 90 defined(DX50) || defined(DX90) || defined(SONY_NWZ_LINUX) || defined(HIBY_LINUX) || defined(FIIO_M3K_LINUX) || defined(CTRU)) 91 92#define PLUGIN_DATA_DIR ROCKBOX_DIR "/rocks.data" 93#define PLUGIN_GAMES_DATA_DIR PLUGIN_DATA_DIR 94#define PLUGIN_APPS_DATA_DIR PLUGIN_DATA_DIR 95#define PLUGIN_DEMOS_DATA_DIR PLUGIN_DATA_DIR 96#define VIEWERS_DATA_DIR PLUGIN_DATA_DIR 97#else 98#define PLUGIN_DATA_DIR PLUGIN_DIR 99#define PLUGIN_GAMES_DATA_DIR PLUGIN_DIR "/games" 100#define PLUGIN_APPS_DATA_DIR PLUGIN_DIR "/apps" 101#define PLUGIN_DEMOS_DATA_DIR PLUGIN_DIR "/demos" 102#define VIEWERS_DATA_DIR PLUGIN_DIR "/viewers" 103#endif 104 105#define WPS_DIR ROCKBOX_DIR "/wps" 106#define SBS_DIR WPS_DIR 107#define THEME_DIR ROCKBOX_DIR "/themes" 108#define FONT_DIR ROCKBOX_DIR "/fonts" 109#define ICON_DIR ROCKBOX_DIR "/icons" 110 111#define BACKDROP_DIR ROCKBOX_DIR "/backdrops" 112#define EQS_DIR ROCKBOX_DIR "/eqs" 113 114/* need to fix this once the application gets record/radio abilities */ 115#define RECPRESETS_DIR ROCKBOX_DIR "/recpresets" 116#define FMPRESET_PATH ROCKBOX_DIR "/fmpresets" 117 118#define DIRCACHE_FILE ROCKBOX_DIR "/dircache.dat" 119#define CODEPAGE_DIR ROCKBOX_DIR "/codepages" 120 121#define VIEWERS_CONFIG ROCKBOX_DIR "/viewers.config" 122 123#define RESUMEFILE ROCKBOX_DIR "/.resume.cfg" 124#define CONFIGFILE ROCKBOX_DIR "/config.cfg" 125#define FIXEDSETTINGSFILE ROCKBOX_DIR "/fixed.cfg" 126 127#define PLAYLIST_CONTROL_FILE ROCKBOX_DIR "/.playlist_control" 128#define GLYPH_CACHE_FILE ROCKBOX_DIR "/.glyphcache" 129 130#endif /* __PATHS_H__ */