summaryrefslogtreecommitdiff
path: root/apps/radio/radio.h
diff options
context:
space:
mode:
Diffstat (limited to 'apps/radio/radio.h')
-rw-r--r--apps/radio/radio.h84
1 files changed, 84 insertions, 0 deletions
diff --git a/apps/radio/radio.h b/apps/radio/radio.h
new file mode 100644
index 0000000000..f7b0a0e80b
--- /dev/null
+++ b/apps/radio/radio.h
@@ -0,0 +1,84 @@
1/***************************************************************************
2 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/
8 * $Id$
9 *
10 * Copyright (C) 2003 Linus Nielsen Feltzing
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#ifndef RADIO_H
22#define RADIO_H
23
24#ifndef FMRADIO_H
25#include "fmradio.h"
26#endif
27#include "screen_access.h"
28#include "bmp.h"
29
30enum {
31 RADIO_SCAN_MODE = 0,
32 RADIO_PRESET_MODE,
33};
34
35#if CONFIG_TUNER
36void radio_load_presets(char *filename);
37void radio_init(void) INIT_ATTR;
38int radio_screen(void);
39void radio_start(void);
40void radio_pause(void);
41void radio_stop(void);
42bool radio_hardware_present(void);
43bool in_radio_screen(void);
44
45bool radio_scan_mode(void); /* true for scan mode, false for preset mode */
46bool radio_is_stereo(void);
47int radio_current_frequency(void);
48int radio_current_preset(void);
49int radio_preset_count(void);
50const struct fmstation *radio_get_preset(int preset);
51
52/* skin functions */
53void fms_data_load(enum screen_type screen, const char *buf, bool isfile);
54void fms_skin_init(void);
55
56/* callbacks for the radio settings */
57void set_radio_region(int region);
58void toggle_mono_mode(bool mono);
59
60#define MAX_FMPRESET_LEN 27
61
62struct fmstation
63{
64 int frequency; /* In Hz */
65 char name[MAX_FMPRESET_LEN+1];
66};
67const char* radio_get_preset_name(int preset);
68
69#ifdef HAVE_ALBUMART
70void radioart_init(bool entering_screen);
71int radio_get_art_hid(struct dim *requested_dim);
72#endif
73
74void next_station(int direction);
75
76
77enum fms_exiting {
78 FMS_EXIT,
79 FMS_ENTER
80};
81
82#endif /* CONFIG_TUNER */
83
84#endif /* RADIO_H */