Index: utils/rockbox_api/generate.php =================================================================== --- utils/rockbox_api/generate.php (revision 0) +++ utils/rockbox_api/generate.php (revision 0) @@ -0,0 +1,62 @@ +#!/usr/bin/php + ) \___| < | \_\ ( <_> > < < +# Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ +# \/ \/ \/ \/ \/ +# \$Id$ +# +# Generated from $svn\x61pps/plugin.h +# +# Format: +# \\group memory and strings +# \\conditions defined(HAVE_BACKLIGHT) +# \\param fmt +# \\return +# \\description +# \\see func1 func2 [S[apps/plugin.c]] +# +# Markup: +# [W[wiki url]] +# [S[svn url]] +# [F[function]] +# [[url]] +# =code= + +MOO; + +foreach(get_newest() as $line) +{ + echo "\n".clean_func($line["func"])."\n"; + + if(strlen($line["group"]) > 0) + echo " \\group ".$line["group"]."\n"; + + if(strlen($line["cond"]) > 2) + echo " \\conditions "._simplify($line["cond"])."\n"; + + foreach(get_args($line["func"]) as $param) + { + if(strlen($param) > 0 && $param != "...") + { + $param = split_var($param); + $param = $param[1]; + echo " \\param $param\n"; + } + } + + if(get_return($line["func"]) !== false) + echo " \\return\n"; + + echo " \\description\n"; +} + +echo "\n# END\n"; +?> \ No newline at end of file Property changes on: utils/rockbox_api/generate.php ___________________________________________________________________ Name: svn:executable + * Name: svn:eol-style + native Index: utils/rockbox_api/gen_html.php =================================================================== --- utils/rockbox_api/gen_html.php (revision 0) +++ utils/rockbox_api/gen_html.php (revision 0) @@ -0,0 +1,110 @@ +#!/usr/bin/php +Plugin API - INDEX'); + +fwrite($h, "

Plugin API reference

"); +fwrite($h, ""); + +fclose($h); + +$menu = '"; + +foreach($inh as $group_name => $group) +{ + $h = fopen("output/".get_group($group_name).".html", "w"); + + fwrite($h, 'Plugin API - '.ucwords($group_name).''); + fwrite($h, ''); + fwrite($h, '
'); + fwrite($h, ''); + + fwrite($h, "

".ucwords($group_name)."

"); + fwrite($h, ''); + foreach($group as $func_name => $func) + { + fwrite($h, ''); + + fwrite($h, "

$func_name

"); + + if(strlen($func["description"][0]) > 0) + fwrite($h, do_markup($func["description"][0])."

"); + + if(isset($func["param"])) + { + $params = ""; + foreach($func["param"] as $param) + { + $param = trim($param); + $p1 = substr($param, 0, strpos($param, " ")); + $p2 = substr($param, strpos($param, " ")); + if(strlen($p1) > 0 && strlen($p2) > 0) + $params .= '
'.$p1.'
'.do_markup($p2).'
'; + } + + if(strlen($params) > 0) + { + fwrite($h, 'Parameters:
'); + fwrite($h, $params); + fwrite($h, "
"); + } + } + + if(isset($func["return"]) && strlen($func["return"][0]) > 0) + fwrite($h, 'Returns: '.do_markup($func["return"][0]).'

'); + + if(isset($func["conditions"])) + fwrite($h, 'Conditions: '.$func["conditions"][0].'

'); + + if(isset($func["see"])) + fwrite($h, 'Also see '.do_see_markup(explode(" ", trim($func["see"][0]))).'

'); + + fwrite($h, 'To top
'); + } + fwrite($h, "
"); + + fwrite($h, "
"); + + fclose($h); +} + +copy("layout.css", "output/layout.css"); +?> \ No newline at end of file Property changes on: utils/rockbox_api/gen_html.php ___________________________________________________________________ Name: svn:executable + * Name: svn:eol-style + native Index: utils/rockbox_api/layout.css =================================================================== --- utils/rockbox_api/layout.css (revision 0) +++ utils/rockbox_api/layout.css (revision 0) @@ -0,0 +1,103 @@ +body +{ + font-family: Verdana; +} + +li +{ + font-size: 10px; +} + +code +{ + color: #00A; +} + +.see, .see a +{ + color: #559; +} + +.group +{ + font-size: 12px; +} + +.group h3 +{ + font-size: 14px; +} + +h2 +{ + color: #D11; +} + +a +{ + color: blue; +} + +a:hover +{ + color: red; +} + +.top +{ + font-size: 10px; + color: green; +} + +.extra +{ + font-weight: bold; + color: #992; +} + +dl +{ + border-left: 1px solid #CCC; + padding-left: 10px; +} + +dt, dd +{ + font-style: normal; +} + +dt +{ + clear:left; + display:block; + float:left; + font-weight:bold; + width:12em; +} + +hr +{ + border: 1px solid #CCCCCC; + margin: 1em 0; +} + +#content +{ + margin-left: 14em; + margin-right: 1em; + padding: 0; +} + +#menu +{ + position: fixed; + top: 0px; + left: 0px; + width: 14em; + padding: 0; +} + +#menu ul +{ + padding-left: 1em; +} \ No newline at end of file Property changes on: utils/rockbox_api/layout.css ___________________________________________________________________ Name: svn:eol-style + native Index: utils/rockbox_api/update.php =================================================================== --- utils/rockbox_api/update.php (revision 0) +++ utils/rockbox_api/update.php (revision 0) @@ -0,0 +1,118 @@ +#!/usr/bin/php + $rootel) +{ + foreach($rootel as $name => $el) + $input[$name] = $el; + unset($input[$rootname]); +} + +$new = get_newest(); + +foreach($new as $name => $el) +{ + unset($new[$name]); + $name = clean_func($el["func"]); + + $new[$name] = array( + "group" => array($el["group"]), + "description" => array("") + ); + + if(strlen($el["cond"]) > 2) + $new[$name]["conditions"][0] = $el["cond"]; + + $args = get_args($el["func"]); + if(count($args) > 0) + { + foreach($args as $n => $arg) + { + $tmp = split_var($arg); + $args[$n] = $tmp[1]; + } + $new[$name]["param"] = $args; + } + + if(get_return($el["func"]) !== false) + $new[$name]["return"][0] = ""; +} + + +$merged = array_merge($new, $input); + +uksort($merged, "func_sort"); + +echo '# Auto generated documentation by Rockbox plugin API generator v2'."\n"; +echo '# Made by Maurus Cuelenaere'."\n"; +echo << ) \___| < | \_\ ( <_> > < < +# Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ +# \/ \/ \/ \/ \/ +# \$Id$ +# +# Generated from $svn\x61pps/plugin.h +# +# Format: +# \\group memory and strings +# \\conditions defined(HAVE_BACKLIGHT) +# \\param fmt +# \\return +# \\description +# \\see func1 func2 [S[apps/plugin.c]] +# +# Markup: +# [W[wiki url]] +# [S[svn url]] +# [F[function]] +# [[url]] +# =code= + +MOO; + +foreach($merged as $func => $line) +{ + echo "\n".clean_func($func)."\n"; + + if(strlen($line["group"]) > 0) + echo " \\group ".trim($line["group"][0])."\n"; + + if(strlen($line["conditions"]) > 2) + echo " \\conditions ".trim(_simplify($line["conditions"][0]))."\n"; + + if(isset($line["param"])) + { + foreach($line["param"] as $param) + { + if($param != "...") + echo " \\param ".trim($param)."\n"; + } + } + + if(isset($line["return"])) + { + if(trim($line["return"]) == "") + echo " \\return\n"; + else + echo " \\return ".trim($line["return"][0])."\n"; + } + + if(trim($line["description"]) == "") + echo " \\description\n"; + else + echo " \\description ".trim($line["description"][0])."\n"; + + if(isset($line["see"])) + echo " \\see ".trim($line["see"][0])."\n"; +} + +echo "\n# END\n"; +?> \ No newline at end of file Property changes on: utils/rockbox_api/update.php ___________________________________________________________________ Name: svn:executable + * Name: svn:eol-style + native Index: utils/rockbox_api/README =================================================================== --- utils/rockbox_api/README (revision 0) +++ utils/rockbox_api/README (revision 0) @@ -0,0 +1,29 @@ +============================== +generate.php +============================== + + php generate.php > output.txt + +-------------- + Generates output.txt of apps/plugin.h + +============================== +update.php +============================== + + php update.php input_file.txt > output.txt + +-------------- + Updates input_file.txt with newer values of apps/plugin.h + +============================== +gen_html.php +============================== + + php gen_html.php input_file.txt + +-------------- + Generates HTML output of input_file.txt in output/*.html + + Known issues: + * [F[function]] doesn't work with functions outside of the current .html \ No newline at end of file Property changes on: utils/rockbox_api/README ___________________________________________________________________ Name: svn:eol-style + native Index: utils/rockbox_api/functions.php =================================================================== --- utils/rockbox_api/functions.php (revision 0) +++ utils/rockbox_api/functions.php (revision 0) @@ -0,0 +1,336 @@ + $line) + { + if(trim($line) == "struct plugin_api {") + { + $text = explode("\n", $text); + $text = array_slice($text, $line_nr+1); + break; + } + } + + foreach($text as $line_nr => $line) + { + if(trim($line) == "};") + { + $text = array_slice($text, 0, $line_nr-1); + break; + } + } + /* Locating done */ + + /* Clean up stuff a bit .. */ + for($i=0; $i $tmp, "cond" => "(".implode(") && (", $conditions).")", "group" => $group); + } + } + + uksort($ret, "func_sort"); + + return $ret; +} + +function parse_documentation($data) +{ + $data = explode("\n", $data); + + $ret = array(); + $cur_func = ""; + foreach($data as $line) + { + if(substr($line, 0, 1) == "#") + continue; + else if(substr($line, 0, 4) == " ") + { + $tmp = trim($line); + if(strpos($tmp, " ") !== false) + $tmp = array(substr($tmp, 1, strpos($tmp, " ")-1), substr($tmp, strpos($tmp, " ")) ); + else + $tmp = array(substr($tmp, 1), ""); + + $ret[$cur_func][$tmp[0]][] = $tmp[1]; + } + else if(strlen($line) == 0) + continue; + else + $cur_func = substr($line, 0); + } + + $_ret = array(); + foreach($ret as $func => $el) + { + if(isset($el["group"])) + $group = trim($el["group"][0]); + else + $group = "misc"; + + $_ret[$group][$func] = $el; + } + + return $_ret; +} + +function get_func($func) +{ + $func = preg_replace('/^((unsigned|const|struct|enum) [^ ]*|[a-z0-9 \*_]*) [\*]?/i', '', $func); + if(strpos($func, "PREFIX") !== false) + $func = substr($func, 0, strrpos($func, "(")); + else if(strpos($func, "(") !== false) + $func = substr($func, 0, strpos($func, "(")); + + return $func; +} + +function get_args($func) +{ + /* Check if this _is_ a function */ + if(strpos($func, "(") === false) + return array(); + + /* Get rid of return value */ + $func = preg_replace('/^((unsigned|const|struct|enum) [^ ]*|[a-z0-9 \*_]*) [\*]?/i', '', $func); + + /* Get rid of function name */ + if(strpos($func, "(") !== false) + $func = substr($func, strpos($func, "(")); + + /* Get rid of ATTRIBUTE_PRINTF */ + if(strpos($func, "ATTRIBUTE_PRINTF") !== false) + $func = substr($func, 0, strpos($func, "ATTRIBUTE_PRINTF")); + + $level = 0; + $args = array(); + $buffer = ""; + for($i=0; $i 1) + $buffer .= "("; + break; + case ")": + $level--; + if($level > 0) + { + $buffer .= ")"; + break; + } + case ",": + if($level <= 1) + { + if(strpos($buffer, "(,") !== false) + { + $tmp = array(); + preg_match_all('/[^ ]*, [^)]*\)/', $buffer, $tmp); + $tmp = $tmp[0]; + foreach($tmp as $el) + { + if(strlen($el) > 0) + $args[] = trim($el); + } + $tmp = preg_replace('/[^ ]*, [^)]*\)/', '', $buffer); + $args[] = trim($tmp); + } + else + $args[] = trim($buffer); + $buffer = ""; + } + else + $buffer .= ","; + break; + default: + $buffer .= $func{$i}; + break; + } + } + + /* Filter out void */ + for($i=0; $i\1', $data); + $data = ereg_replace('\[W\[([^#\[]*)([^\[]*)\]\]', '\1', $data); + $data = ereg_replace('\[S\[([^\[]*)\]\]', '\1', $data); + $data = ereg_replace('\[F\[([^\[]*)\]\]', '\1', $data); + $data = ereg_replace('\[\[([^#\[]*)([^\[]*)\]\]', '\1', $data); + $data = nl2br($data); + + return $data; +} +?> Property changes on: utils/rockbox_api/functions.php ___________________________________________________________________ Name: svn:executable + * Name: svn:eol-style + native Index: docs/plugin.DOCUMENTATION =================================================================== --- docs/plugin.DOCUMENTATION (revision 0) +++ docs/plugin.DOCUMENTATION (revision 0) @@ -0,0 +1,2554 @@ +# Auto generated documentation by Rockbox plugin API generator v2 +# Made by Maurus Cuelenaere +# __________ __ ___. +# Open \______ \ ____ ____ | | _\_ |__ _______ ___ +# Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / +# Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < +# Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ +# \/ \/ \/ \/ \/ +# $Id$ +# +# Generated from http://svn.rockbox.org/viewvc.cgi/trunk/apps/plugin.h +# +# Format: +# \group memory and strings +# \conditions defined(HAVE_BACKLIGHT) +# \param fmt +# \return +# \description +# \see func1 func2 [S[apps/plugin.c]] +# +# Markup: +# [W[wiki url]] +# [S[svn url]] +# [F[function]] +# [[url]] +# =code= + +char *strcasestr (const char* phaystack, const char* pneedle) + \group strings and memory + \param phaystack + \param pneedle + \return + \description + +bool action_userabort(int timeout) + \group action handling + \param timeout + \return + \description + +size_t align_buffer(void **start, size_t size, size_t align) + \group kernel/ system + \conditions (CONFIG_CODEC == SWCODEC) + \param start + \param size + \param align + \return + \description + +const char *appsversion + \return version of the plugin API + \description + +void ata_sleep(void) + \group file + \description + +void ata_spin(void) + \group file + \description + +void ata_spindown(int seconds) + \group file + \param seconds + \description + +int atoi(const char *str) + \group strings and memory + \param str + \return + \description + +struct mp3entry* audio_current_track(void) + \group playback control + \return the mp3entry struct of the currently playing track + \description + \see [S[firmware/export/id3.h]] + +void audio_ff_rewind(long newtime) + \group playback control + \param newtime + \description + +void audio_flush_and_reload_tracks(void) + \group playback control + \description + +int audio_get_file_pos(void) + \group playback control + \return + \description + +bool audio_has_changed_track(void) + \group playback control + \return + \description + +void audio_next(void) + \group playback control + \description + +struct mp3entry* audio_next_track(void) + \group playback control + \return the mp3entry struct of the upcoming track + \description + \see [S[firmware/export/id3.h]] + +void audio_pause(void) + \group playback control + \description + +void audio_prev(void) + \group playback control + \description + +void audio_resume(void) + \group playback control + \description + +void audio_set_input_source(int source, unsigned flags) + \group sound + \conditions (CONFIG_CODEC == SWCODEC) && (INPUT_SRC_CAPS != 0) + \param source + \param flags + \description + +void audio_set_output_source(int monitor) + \group sound + \conditions (CONFIG_CODEC == SWCODEC) && (INPUT_SRC_CAPS != 0) + \param monitor + \description + +void audio_set_recording_gain(int left, int right, int type) + \group sound + \conditions (CONFIG_CODEC == SWCODEC) && (defined(HAVE_RECORDING)) + \param left + \param right + \param type + \description + +int audio_status(void) + \group playback control + \return + \description + +void audio_stop(void) + \group playback control + \description + +void backlight_off(void) + \group backlight + \description + +void backlight_on(void) + \group backlight + \description + +void backlight_set_brightness(int val) + \group backlight + \conditions (defined(HAVE_BACKLIGHT_BRIGHTNESS)) + \param val + \description + +void backlight_set_timeout(int index) + \group backlight + \param index + \description + +void backlight_set_timeout_plugged(int index) + \conditions (CONFIG_CHARGING) + \param index + \description + +int battery_level(void) + \group power + \return + \description + +bool battery_level_safe(void) + \group power + \return + \description + +int battery_time(void) + \group power + \return + \description + +unsigned int battery_voltage(void) + \group power + \conditions (!defined(SIMULATOR)) + \return + \description + +unsigned short *bidi_l2v( const unsigned char *str, int orientation ) + \conditions !defined(HAVE_LCD_CHARCELLS) + \param str + \param orientation + \return + \description + +void bitswap(unsigned char *data, int length) + \group sound + \conditions (!defined(SIMULATOR)) && (CONFIG_CODEC != SWCODEC) + \param data + \param length + \description + +int bufadvance(int handle_id, off_t offset) + \group buffering API + \conditions ((CONFIG_CODEC == SWCODEC)) + \param handle_id + \param offset + \return + \description + +int bufalloc(const void *src, size_t size, enum data_type type) + \group buffering API + \conditions ((CONFIG_CODEC == SWCODEC)) + \param src + \param size + \param type + \return + \description + +bool bufclose(int handle_id) + \group buffering API + \conditions ((CONFIG_CODEC == SWCODEC)) + \param handle_id + \return + \description + +ssize_t bufcuttail(int handle_id, size_t size) + \group buffering API + \conditions ((CONFIG_CODEC == SWCODEC)) + \param handle_id + \param size + \return + \description + +ssize_t bufgetdata(int handle_id, size_t size, void **data) + \group buffering API + \conditions ((CONFIG_CODEC == SWCODEC)) + \param handle_id + \param size + \param data + \return + \description + +ssize_t bufgettail(int handle_id, size_t size, void **data) + \group buffering API + \conditions ((CONFIG_CODEC == SWCODEC)) + \param handle_id + \param size + \param data + \return + \description + +int bufopen(const char *file, size_t offset, enum data_type type) + \group buffering API + \conditions ((CONFIG_CODEC == SWCODEC)) + \param file + \param offset + \param type + \return + \description + +ssize_t bufread(int handle_id, size_t size, void *dest) + \group buffering API + \conditions ((CONFIG_CODEC == SWCODEC)) + \param handle_id + \param size + \param dest + \return + \description + +int bufseek(int handle_id, size_t newpos) + \group buffering API + \conditions ((CONFIG_CODEC == SWCODEC)) + \param handle_id + \param newpos + \return + \description + +ssize_t buf_get_offset(int handle_id, void *ptr) + \conditions ((CONFIG_CODEC == SWCODEC)) + \param handle_id + \param ptr + \return + \description + +ssize_t buf_handle_offset(int handle_id) + \conditions ((CONFIG_CODEC == SWCODEC)) + \param handle_id + \return + \description + +void buf_request_buffer_handle(int handle_id) + \conditions ((CONFIG_CODEC == SWCODEC)) + \param handle_id + \description + +void buf_set_base_handle(int handle_id) + \conditions ((CONFIG_CODEC == SWCODEC)) + \param handle_id + \description + +size_t buf_used(void) + \conditions ((CONFIG_CODEC == SWCODEC)) + \return + \description + +void buttonlight_off(void) + \group button + \conditions (defined(HAVE_BUTTON_LIGHT)) + \description + +void buttonlight_on(void) + \group button + \conditions (defined(HAVE_BUTTON_LIGHT)) + \description + +void buttonlight_set_brightness(int val) + \group button + \conditions (defined(HAVE_BUTTON_LIGHT)) && (defined(HAVE_BUTTONLIGHT_BRIGHTNESS)) + \param val + \description + +void buttonlight_set_timeout(int value) + \group button + \conditions (defined(HAVE_BUTTON_LIGHT)) + \param value + \description + +void button_clear_queue(void) + \group button + \description + +long button_get(bool block) + \group button + \param block + \return + \description + +intptr_t button_get_data(void) + \group button + \conditions (defined(HAVE_BUTTON_DATA)) + \return + \description + +long button_get_w_tmo(int ticks) + \group button + \param ticks + \return + \description + +bool button_hold(void) + \group button + \conditions (defined(HAS_BUTTON_HOLD)) + \return + \description + +struct event_queue *button_queue + \conditions !defined(HAVE_LCD_CHARCELLS) )) && (defined(HAVE_LCD_ENABLE + \return + \description + +int button_queue_count(void) + \group button + \return + \description + +int button_status(void) + \group button + \return + \description + +void cancel_cpu_boost(void) + \conditions (defined(HAVE_SCHEDULER_BOOSTCTRL)) + \description Unboosts the CPU for the current thread + +const unsigned char *font_get_bits( struct font *pf, unsigned short char_code ) + \conditions !defined(HAVE_LCD_CHARCELLS) + \param pf + \param char_code + \return + \description + +const unsigned char* utf8decode(const unsigned char *utf8, unsigned short *ucs) + \group unicode stuff + \param utf8 + \param ucs + \return + \description + +const unsigned char *_ctype_ + \group strings and memory + \return + \description + +bool charger_inserted(void) + \group power + \conditions (CONFIG_CHARGING) + \return + \description + +bool charging_state(void) + \group power + \conditions (CONFIG_CHARGING) && (CONFIG_CHARGING == CHARGING_MONITOR) + \return + \description + +int closedir(DIR* dir) + \group dir + \param dir + \return + \description + +int codec_load_file(const char* codec, struct codec_api *api) + \group misc + \conditions (CONFIG_CODEC == SWCODEC) + \param codec + \param api + \return + \description + +int count_mp3_frames(int fd, int startpos, int filesize, void (*progressfunc)(int)) + \group misc + \param fd + \param startpos + \param filesize + \param progressfunc + \return + \description + +void cpu_boost(bool on_off) + \conditions (!defined(SIMULATOR)) && (defined(HAVE_ADJUSTABLE_CPU_FREQ)) && !defined(CPU_BOOST_LOGGING) + \param on_off + \description Boosts the CPU if =on_off= is true, otherwise it unboosts the CPU + +void cpu_boost_(bool on_off,char*location,int line) + \conditions (!defined(SIMULATOR)) && (defined(HAVE_ADJUSTABLE_CPU_FREQ)) && (defined(CPU_BOOST_LOGGING)) + \param on_off + \param charlocation + \param line + \description + +long *cpu_frequency + \conditions (!defined(SIMULATOR)) + \return the current cpu frequency + \description + +char *create_numbered_filename(char *buffer, const char *path, const char *prefix, const char *suffix, int numberlen IF_CNFN_NUM_(, int *num)) + \group file + \param buffer + \param path + \param prefix + \param suffix + \param num + \param numberlen + \return + \description + +struct thread_entry* create_thread(void (*function)(void), void* stack, size_t stack_size, unsigned flags, const char *name IF_PRIO(, int priority) IF_COP(, unsigned int core)) + \group kernel/ system + \param function + \param stack + \param stack_size + \param flags + \param priority + \param core + \param name + \return + \description + +int create_xing_header(int fd, long startpos, long filesize, unsigned char *buf, unsigned long num_frames, unsigned long rec_time, unsigned long header_template, void (*progressfunc)(int), bool generate_toc) + \group misc + \param fd + \param startpos + \param filesize + \param buf + \param num_frames + \param rec_time + \param header_template + \param progressfunc + \param generate_toc + \return + \description + +volatile long* current_tick + \group kernel/ system + \return + \description + +void debugf(const char *fmt, ...) ATTRIBUTE_PRINTF(1, 2) + \group misc + \conditions (defined(DEBUG) || defined(SIMULATOR)) + \param fmt + \description Prints =fmt= in a printf-like fashion to STDERR + +long default_event_handler(long event) + \group kernel/ system + \param event + \return + \description + +long default_event_handler_ex(long event, void (*callback)(void *), void *parameter) + \group kernel/ system + \param event + \param callback + \param parameter + \return + \description + +bool detect_flashed_ramimage(void) + \group Routines for the iriver_flash -plugin. + \conditions (defined(IRIVER_H100_SERIES)) + \return + \description + +bool detect_flashed_romimage(void) + \group Routines for the iriver_flash -plugin. + \conditions (defined(IRIVER_H100_SERIES)) + \return + \description + +bool detect_original_firmware(void) + \group Routines for the iriver_flash -plugin. + \conditions (defined(IRIVER_H100_SERIES)) + \return + \description + +bool dir_exists(const char *path) + \group dir + \param path + \return + \description + +int do_menu(const struct menu_item_ex *menu, int *start_selected, struct viewport parent[NB_SCREENS], bool hide_bars) + \group menu + \param menu + \param start_selected + \param parent[NB_SCREENS] + \param hide_bars + \return + \description + +intptr_t dsp_configure(struct dsp_config *dsp, int setting, intptr_t value) + \group sound + \conditions (CONFIG_CODEC == SWCODEC) + \param dsp + \param setting + \param value + \return + \description + +void dsp_dither_enable(bool enable) + \group sound + \conditions (CONFIG_CODEC == SWCODEC) + \param enable + \description + +int dsp_process(struct dsp_config *dsp, char *dest, const char *src[], int count) + \group sound + \conditions (CONFIG_CODEC == SWCODEC) + \param dsp + \param dest + \param src[] + \param count + \return + \description + +void dsp_set_crossfeed(bool enable) + \group sound + \conditions (CONFIG_CODEC == SWCODEC) + \param enable + \description + +void dsp_set_eq(bool enable) + \group sound + \conditions (CONFIG_CODEC == SWCODEC) + \param enable + \description + +void event_init(struct event *e, unsigned int flags) + \conditions (defined(HAVE_EVENT_OBJECTS)) + \param e + \param flags + \description + +void event_set_state(struct event *e, unsigned int state) + \conditions (defined(HAVE_EVENT_OBJECTS)) + \param e + \param state + \description + +void event_wait(struct event *e, unsigned int for_state) + \conditions (defined(HAVE_EVENT_OBJECTS)) + \param e + \param for_state + \description + +int fdprintf(int fd, const char *fmt, ...) ATTRIBUTE_PRINTF(2, 3) + \group file + \param fd + \param fmt + \return + \description + +bool file_exists(const char *file) + \group file + \param file + \return + \description + +bool find_albumart(const struct mp3entry *id3, char *buf, int buflen) + \conditions (defined(HAVE_ALBUMART)) + \param id3 + \param buf + \param buflen + \return + \description + +unsigned long find_next_frame(int fd, long *offset, long max_offset, unsigned long last_header) + \group misc + \param fd + \param offset + \param max_offset + \param last_header + \return + \description + +void flush_icache(void) + \conditions (defined(CACHE_FUNCTIONS_AS_CALL)) + \description + +struct font* font_get(int font) + \conditions !defined(HAVE_LCD_CHARCELLS) + \param font + \return the font structure for =font= + \description + \see [S[firmware/export/font.h]] + +int font_getstringsize(const unsigned char *str, int *w, int *h, int fontnumber) + \conditions !defined(HAVE_LCD_CHARCELLS) + \param str + \param w + \param h + \param fontnumber + \return + \description + +int font_get_width(struct font* pf, unsigned short char_code) + \conditions !defined(HAVE_LCD_CHARCELLS) + \param pf + \param char_code + \return + \description + +struct font* font_load(const char *path) + \conditions !defined(HAVE_LCD_CHARCELLS) + \param path + \return + \description Load font =path= and returns a struct font pointer for it + \see [S[firmware/export/font.h]] + +int get_action(int context, int timeout) + \group action handling + \param context + \param timeout + \return + \description + +const char *get_codec_filename(int cod_spec) + \group misc + \conditions (CONFIG_CODEC == SWCODEC) + \param cod_spec + \return + \description + +int get_custom_action(int context,int timeout, const struct button_mapping* (*get_context_map)(int)) + \group action handling + \param context + \param timeout + \param get_context_map + \return + \description + +bool get_metadata(struct mp3entry* id3, int fd, const char* trackname) + \group misc + \conditions (CONFIG_CODEC == SWCODEC) + \param id3 + \param fd + \param trackname + \return + \description + +struct tm* get_time(void) + \group misc + \return + \description + +struct user_settings* global_settings + \group misc + \return the global_settings struct + \description + \see [S[apps/settings.h]] + +struct system_status *global_status + \group misc + \return the global_status struct + \description + \see [S[apps/settings.h]] + +void gui_scrollbar_draw(struct screen * screen, int x, int y, int width, int height, int items, int min_shown, int max_shown, unsigned flags) + \conditions !defined(HAVE_LCD_CHARCELLS) + \param screen + \param x + \param y + \param width + \param height + \param items + \param min_shown + \param max_shown + \param flags + \description + +void gui_synclist_add_item(struct gui_synclist * lists) + \group list + \param lists + \description + +void gui_synclist_del_item(struct gui_synclist * lists) + \group list + \param lists + \description + +bool gui_synclist_do_button(struct gui_synclist * lists, unsigned *action, enum list_wrap wrap) + \group list + \param lists + \param action + \param wrap + \return + \description + +void gui_synclist_draw(struct gui_synclist * lists) + \group list + \param lists + \description + +int gui_synclist_get_nb_items(struct gui_synclist * lists) + \group list + \param lists + \return + \description + +int gui_synclist_get_sel_pos(struct gui_synclist * lists) + \group list + \param lists + \return + \description + +void gui_synclist_init(struct gui_synclist * lists, list_get_name callback_get_item_name, void * data, bool scroll_all,int selected_size, struct viewport parent[NB_SCREENS]) + \group list + \param lists + \param callback_get_item_name + \param data + \param scroll_all + \param selected_size + \param parent[NB_SCREENS] + \description + +void gui_synclist_limit_scroll(struct gui_synclist * lists, bool scroll) + \group list + \param lists + \param scroll + \description + +void gui_synclist_select_item(struct gui_synclist * lists, int item_number) + \group list + \param lists + \param item_number + \description + +void gui_synclist_set_icon_callback(struct gui_synclist * lists, list_get_icon icon_callback) + \group list + \param lists + \param icon_callback + \description + +void gui_synclist_set_nb_items(struct gui_synclist * lists, int nb_items) + \group list + \param lists + \param nb_items + \description + +void gui_synclist_set_title(struct gui_synclist *lists, char* title, int icon) + \group list + \param lists + \param title + \param icon + \description + +void gui_syncstatusbar_draw(struct gui_syncstatusbar * bars, bool force_redraw) + \group scroll bar + \param bars + \param force_redraw refreshes =bars= if true + \description Draws an initialized statusbar =bars= on the screen and refreshs it if =force_redraw= is true. + \see [S[apps/gui/statusbar.h]] + +enum yesno_res gui_syncyesno_run(const struct text_message * main_message, const struct text_message * yes_message, const struct text_message * no_message) + \group list + \param main_message + \param yes_message + \param no_message + \return + \description + +void i2c_begin(void) + \group MAS communication + \conditions (!defined(SIMULATOR) && (CONFIG_CODEC != SWCODEC)) && ((CONFIG_CODEC == MAS3587F) || (CONFIG_CODEC == MAS3539F)) + \description + +void i2c_end(void) + \group MAS communication + \conditions (!defined(SIMULATOR) && (CONFIG_CODEC != SWCODEC)) && ((CONFIG_CODEC == MAS3587F) || (CONFIG_CODEC == MAS3539F)) + \description + +int i2c_write(int address, const unsigned char* buf, int count ) + \group MAS communication + \conditions (!defined(SIMULATOR) && (CONFIG_CODEC != SWCODEC)) && ((CONFIG_CODEC == MAS3587F) || (CONFIG_CODEC == MAS3539F)) + \param address + \param buf + \param count + \return + \description + +void invalidate_icache(void) + \conditions (defined(CACHE_FUNCTIONS_AS_CALL)) + \description + +unsigned char* iso_decode(const unsigned char *iso, unsigned char *utf8, int cp, int count) + \group unicode stuff + \param iso + \param utf8 + \param cp + \param count + \return + \description + +bool is_backlight_on(bool ignore_always_off) + \param ignore_always_off + \return + \description + +int kbd_input(char* buffer, int buflen) + \group misc + \param buffer + \param buflen + \return + \description + +void lcd_bitmap(const fb_data *src, int x, int y, int width, int height) + \group lcd + \conditions !defined(HAVE_LCD_CHARCELLS) && (LCD_DEPTH > 1) + \param src + \param x + \param y + \param width + \param height + \description + +void lcd_bitmap_part(const fb_data *src, int src_x, int src_y, int stride, int x, int y, int width, int height) + \group lcd + \conditions !defined(HAVE_LCD_CHARCELLS) && (LCD_DEPTH > 1) + \param src + \param src_x + \param src_y + \param stride + \param x + \param y + \param width + \param height + \description + +void lcd_bitmap_transparent(const fb_data *src, int x, int y, int width, int height) + \group lcd + \conditions !defined(HAVE_LCD_CHARCELLS) && (LCD_DEPTH == 16) + \param src + \param x + \param y + \param width + \param height + \description + +void lcd_bitmap_transparent_part(const fb_data *src, int src_x, int src_y, int stride, int x, int y, int width, int height) + \group lcd + \conditions !defined(HAVE_LCD_CHARCELLS) && (LCD_DEPTH == 16) + \param src + \param src_x + \param src_y + \param stride + \param x + \param y + \param width + \param height + \description + +void lcd_blit_grey_phase(unsigned char *values, unsigned char *phases, int bx, int by, int bwidth, int bheight, int stride) + \group lcd + \conditions !defined(HAVE_LCD_CHARCELLS) )) && ((LCD_DEPTH < 4) && !defined(SIMULATOR + \param values + \param phases + \param bx + \param by + \param bwidth + \param bheight + \param stride + \description + +void lcd_blit_mono(const unsigned char *data, int x, int by, int width, int bheight, int stride) + \group lcd + \conditions !defined(HAVE_LCD_CHARCELLS) )) && ((LCD_DEPTH < 4) && !defined(SIMULATOR + \param data + \param x + \param by + \param width + \param bheight + \param stride + \description + +void lcd_blit_yuv(unsigned char * const src[3], int src_x, int src_y, int stride, int x, int y, int width, int height) + \group lcd + \conditions !defined(HAVE_LCD_CHARCELLS) && (LCD_DEPTH == 16) + \param src[3] + \param src_x + \param src_y + \param stride + \param x + \param y + \param width + \param height + \description + +void lcd_clear_display(void) + \group lcd + \description Clears the LCD and the framebuffer + +void lcd_define_pattern(unsigned long ucs, const char *pattern) + \group lcd + \conditions (defined(HAVE_LCD_CHARCELLS)) + \param ucs + \param pattern + \description + +void lcd_double_height(bool on) + \group lcd + \conditions (defined(HAVE_LCD_CHARCELLS)) + \param on + \description + +void lcd_drawline(int x1, int y1, int x2, int y2) + \group lcd + \conditions !defined(HAVE_LCD_CHARCELLS) + \param x1 X top coordinate + \param y1 Y top coordinate + \param x2 X bottom coordinate + \param y2 Y bottom coordinate + \description Draws a line at (=x1=, =y1=) -> (=x2=, =y2=) within current drawing mode + +void lcd_drawpixel(int x, int y) + \group lcd + \conditions !defined(HAVE_LCD_CHARCELLS) + \param x + \param y + \description Draws a pixel at (=x=, =y=) within current drawing mode + +void lcd_drawrect(int x, int y, int width, int height) + \group lcd + \conditions !defined(HAVE_LCD_CHARCELLS) + \param x + \param y + \param width + \param height + \description Draws a rectangle at (=x=, =y=) -> (=x= + =width=, =y= + =height=) within current drawing mode + +void lcd_fillrect(int x, int y, int width, int height) + \group lcd + \conditions !defined(HAVE_LCD_CHARCELLS) + \param x + \param y + \param width + \param height + \description Draws a filled rectangle at (=x=, =y=) -> (=x= + =width=, =y= + =height=) within current drawing mode + +fb_data* lcd_framebuffer + \group lcd + \conditions !defined(HAVE_LCD_CHARCELLS) + \return + \description Pointer to the framebuffer + \see [S[firmware/export/lcd.h]] + +int lcd_getstringsize(const unsigned char *str, int *w, int *h) + \group lcd + \param str String + \param w Width + \param h Height + \return Success or not + \description Stores the width and height of the string in =w= and =h= + +fb_data* lcd_get_backdrop(void) + \group lcd + \conditions !defined(HAVE_LCD_CHARCELLS) && (LCD_DEPTH > 1) + \return Pointer to framebuffer data + \description Gets the current backdrop + \see lcd_framebuffer + +unsigned lcd_get_background(void) + \group lcd + \conditions !defined(HAVE_LCD_CHARCELLS) && (LCD_DEPTH > 1) + \return + \description + +int lcd_get_drawmode(void) + \group lcd + \conditions !defined(HAVE_LCD_CHARCELLS) + \return current LCD drawing mode + \description + +unsigned lcd_get_foreground(void) + \group lcd + \conditions !defined(HAVE_LCD_CHARCELLS) && (LCD_DEPTH > 1) + \return + \description + +unsigned long lcd_get_locked_pattern(void) + \group lcd + \conditions (defined(HAVE_LCD_CHARCELLS)) + \return + \description + +void lcd_hline(int x1, int x2, int y) + \group lcd + \conditions !defined(HAVE_LCD_CHARCELLS) + \param x1 X start coordinate + \param x2 X end coordinate + \param y Y coordinate + \description Draws a horizontal line at (=x1=, =y=) -> (=x2=, =y=) within current drawing mode + +void lcd_icon(int icon, bool enable) + \group lcd + \conditions (defined(HAVE_LCD_CHARCELLS)) + \param icon + \param enable + \description + +void lcd_mono_bitmap(const unsigned char *src, int x, int y, int width, int height) + \group lcd + \conditions !defined(HAVE_LCD_CHARCELLS) + \param src + \param x + \param y + \param width + \param height + \description + +void lcd_mono_bitmap_part(const unsigned char *src, int src_x, int src_y, int stride, int x, int y, int width, int height) + \group lcd + \conditions !defined(HAVE_LCD_CHARCELLS) + \param src + \param src_x + \param src_y + \param stride + \param x + \param y + \param width + \param height + \description + +void lcd_putc(int x, int y, unsigned long ucs) + \group lcd + \conditions (defined(HAVE_LCD_CHARCELLS)) + \param x + \param y + \param ucs + \description + +void lcd_puts(int x, int y, const unsigned char *string) + \group lcd + \param x Column X + \param y Row Y + \param string + \description Puts string on the LCD at column =x= and row =y= + +void lcd_putsxy(int x, int y, const unsigned char *string) + \group lcd + \param x X coordinate + \param y Y coordinate + \param string + \description Puts string on the LCD at position (=x=, =y=) + +void lcd_puts_scroll(int x, int y, const unsigned char* string) + \group lcd + \param x Column X + \param y Row Y + \param string + \description Puts scrolling string on the LCD at column =x= and row =y= + +void lcd_puts_scroll_style(int x, int y, const unsigned char* string, int style) + \group lcd + \conditions !defined(HAVE_LCD_CHARCELLS) + \param x + \param y + \param string + \param style + \description + +void lcd_puts_style(int x, int y, const unsigned char *str, int style) + \group lcd + \conditions !defined(HAVE_LCD_CHARCELLS) + \param x + \param y + \param str + \param style + \description + +void lcd_put_cursor(int x, int y, unsigned long ucs) + \group lcd + \conditions (defined(HAVE_LCD_CHARCELLS)) + \param x + \param y + \param ucs + \description + +void lcd_remote_bitmap(const fb_remote_data *src, int x, int y, int width, int height) + \conditions (defined(HAVE_REMOTE_LCD) && (LCD_REMOTE_DEPTH > 1)) + \param src + \param x + \param y + \param width + \param height + \description + +void lcd_remote_bitmap_part(const fb_remote_data *src, int src_x, int src_y, int stride, int x, int y, int width, int height) + \conditions (defined(HAVE_REMOTE_LCD) && (LCD_REMOTE_DEPTH > 1)) + \param src + \param src_x + \param src_y + \param stride + \param x + \param y + \param width + \param height + \description + +void lcd_remote_clear_display(void) + \group remote lcd + \conditions (defined(HAVE_REMOTE_LCD)) + \description + +void lcd_remote_drawline(int x1, int y1, int x2, int y2) + \group remote lcd + \conditions (defined(HAVE_REMOTE_LCD)) + \param x1 + \param y1 + \param x2 + \param y2 + \description + +void lcd_remote_drawpixel(int x, int y) + \group remote lcd + \conditions (defined(HAVE_REMOTE_LCD)) + \param x + \param y + \description + +void lcd_remote_drawrect(int x, int y, int nx, int ny) + \group remote lcd + \conditions (defined(HAVE_REMOTE_LCD)) + \param x + \param y + \param nx + \param ny + \description + +void lcd_remote_fillrect(int x, int y, int nx, int ny) + \group remote lcd + \conditions (defined(HAVE_REMOTE_LCD)) + \param x + \param y + \param nx + \param ny + \description + +fb_remote_data* lcd_remote_framebuffer + \group remote lcd + \conditions (defined(HAVE_REMOTE_LCD)) + \return + \description + +int lcd_remote_getstringsize(const unsigned char *str, int *w, int *h) + \group remote lcd + \conditions (defined(HAVE_REMOTE_LCD)) + \param str + \param w + \param h + \return + \description + +unsigned lcd_remote_get_background(void) + \conditions (defined(HAVE_REMOTE_LCD) && (LCD_REMOTE_DEPTH > 1)) + \return + \description + +int lcd_remote_get_drawmode(void) + \group remote lcd + \conditions (defined(HAVE_REMOTE_LCD)) + \return + \description + +unsigned lcd_remote_get_foreground(void) + \conditions (defined(HAVE_REMOTE_LCD) && (LCD_REMOTE_DEPTH > 1)) + \return + \description + +void lcd_remote_hline(int x1, int x2, int y) + \group remote lcd + \conditions (defined(HAVE_REMOTE_LCD)) + \param x1 + \param x2 + \param y + \description + +void lcd_remote_mono_bitmap(const unsigned char *src, int x, int y, int width, int height) + \group remote lcd + \conditions (defined(HAVE_REMOTE_LCD)) + \param src + \param x + \param y + \param width + \param height + \description + +void lcd_remote_mono_bitmap_part(const unsigned char *src, int src_x, int src_y, int stride, int x, int y, int width, int height) + \group remote lcd + \conditions (defined(HAVE_REMOTE_LCD)) + \param src + \param src_x + \param src_y + \param stride + \param x + \param y + \param width + \param height + \description + +void lcd_remote_puts(int x, int y, const unsigned char *string) + \group remote lcd + \conditions (defined(HAVE_REMOTE_LCD)) + \param x + \param y + \param string + \description + +void lcd_remote_putsxy(int x, int y, const unsigned char *string) + \group remote lcd + \conditions (defined(HAVE_REMOTE_LCD)) + \param x + \param y + \param string + \description + +void lcd_remote_puts_scroll(int x, int y, const unsigned char* string) + \group remote lcd + \conditions (defined(HAVE_REMOTE_LCD)) + \param x + \param y + \param string + \description + +void lcd_remote_puts_scroll_style(int x, int y, const unsigned char* string, int style) + \group remote lcd + \conditions (defined(HAVE_REMOTE_LCD)) + \param x + \param y + \param string + \param style + \description + +void lcd_remote_puts_style(int x, int y, const unsigned char *str, int style) + \group remote lcd + \conditions (defined(HAVE_REMOTE_LCD)) + \param x + \param y + \param str + \param style + \description + +void lcd_remote_setfont(int font) + \group remote lcd + \conditions (defined(HAVE_REMOTE_LCD)) + \param font + \description + +void lcd_remote_set_background(unsigned background) + \conditions (defined(HAVE_REMOTE_LCD) && (LCD_REMOTE_DEPTH > 1)) + \param background + \description + +void lcd_remote_set_contrast(int x) + \group remote lcd + \conditions (defined(HAVE_REMOTE_LCD)) + \param x + \description + +void lcd_remote_set_drawmode(int mode) + \group remote lcd + \conditions (defined(HAVE_REMOTE_LCD)) + \param mode + \description + +void lcd_remote_set_foreground(unsigned foreground) + \conditions (defined(HAVE_REMOTE_LCD) && (LCD_REMOTE_DEPTH > 1)) + \param foreground + \description + +void lcd_remote_stop_scroll(void) + \group remote lcd + \conditions (defined(HAVE_REMOTE_LCD)) + \description + +void lcd_remote_update(void) + \group remote lcd + \conditions (defined(HAVE_REMOTE_LCD)) + \description + +void lcd_remote_update_rect(int x, int y, int width, int height) + \group remote lcd + \conditions (defined(HAVE_REMOTE_LCD)) + \param x + \param y + \param width + \param height + \description + +void lcd_remote_vline(int x, int y1, int y2) + \group remote lcd + \conditions (defined(HAVE_REMOTE_LCD)) + \param x + \param y1 + \param y2 + \description + +void lcd_remove_cursor(void) + \group lcd + \conditions (defined(HAVE_LCD_CHARCELLS)) + \description + +void lcd_setfont(int font) + \group lcd + \conditions !defined(HAVE_LCD_CHARCELLS) + \param font + \description + +void lcd_set_backdrop(fb_data* backdrop) + \group lcd + \conditions !defined(HAVE_LCD_CHARCELLS) && (LCD_DEPTH > 1) + \param backdrop Pointer to backdrop image + \description Set the backdrop to =backdrop= + \see lcd_framebuffer + +void lcd_set_background(unsigned foreground) + \group lcd + \conditions !defined(HAVE_LCD_CHARCELLS) && (LCD_DEPTH > 1) + \param foreground + \description + +void lcd_set_contrast(int x) + \group lcd + \param x + \description Sets LCD contrast to value =x= + +void lcd_set_drawmode(int mode) + \group lcd + \conditions !defined(HAVE_LCD_CHARCELLS) + \param mode + \description + +void lcd_set_enable_hook(void (*enable_hook)(void)) + \conditions !defined(HAVE_LCD_CHARCELLS) )) && (defined(HAVE_LCD_ENABLE + \param enable_hook + \description + +void lcd_set_foreground(unsigned foreground) + \group lcd + \conditions !defined(HAVE_LCD_CHARCELLS) && (LCD_DEPTH > 1) + \param foreground + \description + +void lcd_set_invert_display(bool yesno) + \group lcd + \conditions !defined(HAVE_LCD_CHARCELLS) )) && (defined(HAVE_LCD_INVERT + \param yesno + \description + +void lcd_stop_scroll(void) + \group lcd + \description + +void lcd_unlock_pattern(unsigned long ucs) + \group lcd + \conditions (defined(HAVE_LCD_CHARCELLS)) + \param ucs + \description + +void lcd_update(void) + \group lcd + \description Pushes LCD framebuffer changes to the LCD + +void lcd_update_rect(int x, int y, int width, int height) + \group lcd + \conditions !defined(HAVE_LCD_CHARCELLS) + \param x + \param y + \param width + \param height + \description Pushes LCD framebuffer changes to the LCD within rectangle (=x=, =y=) -> (=x= + =width=, =y= + =height=) + +void lcd_vline(int x, int y1, int y2) + \group lcd + \conditions !defined(HAVE_LCD_CHARCELLS) + \param x X coordinate + \param y1 Y start coordinate + \param y2 Y end coordinate + \description Draws a vertical line at (=x=, =y1=) -> (=x=, =y2=) within current drawing mode + +void lcd_yuv_set_options(unsigned options) + \group lcd + \conditions !defined(HAVE_LCD_CHARCELLS) )) && (LCD_DEPTH == 16) && (defined(TOSHIBA_GIGABEAT_F) || defined(SANSA_E200) || defined(SANSA_C200) || defined(IRIVER_H10) || defined(COWON_D2 + \param options + \description + +void led(bool on) + \param on + \description + +void logf(const char *fmt, ...) ATTRIBUTE_PRINTF(1, 2) + \group misc + \conditions (defined(ROCKBOX_HAS_LOGF)) + \param fmt + \description + +const unsigned long *audio_master_sampr_list + \group sound + \conditions (CONFIG_CODEC == SWCODEC) + \return + \description + +const unsigned long *hw_freq_sampr + \group sound + \conditions (CONFIG_CODEC == SWCODEC) + \return + \description + +const unsigned long *rec_freq_sampr + \group sound + \conditions (CONFIG_CODEC == SWCODEC) && (defined(HAVE_RECORDING)) + \return + \description + +int mas_codec_readreg(int reg) + \group MAS communication + \conditions (!defined(SIMULATOR) && (CONFIG_CODEC != SWCODEC)) && ((CONFIG_CODEC == MAS3587F) || (CONFIG_CODEC == MAS3539F)) + \param reg + \return + \description + +int mas_codec_writereg(int reg, unsigned int val) + \group MAS communication + \conditions (!defined(SIMULATOR) && (CONFIG_CODEC != SWCODEC)) && ((CONFIG_CODEC == MAS3587F) || (CONFIG_CODEC == MAS3539F)) + \param reg + \param val + \return + \description + +int mas_readmem(int bank, int addr, unsigned long* dest, int len) + \group MAS communication + \conditions (!defined(SIMULATOR) && (CONFIG_CODEC != SWCODEC)) + \param bank + \param addr + \param dest + \param len + \return + \description + +int mas_readreg(int reg) + \group MAS communication + \conditions (!defined(SIMULATOR) && (CONFIG_CODEC != SWCODEC)) + \param reg + \return + \description + +int mas_writemem(int bank, int addr, const unsigned long* src, int len) + \group MAS communication + \conditions (!defined(SIMULATOR) && (CONFIG_CODEC != SWCODEC)) + \param bank + \param addr + \param src + \param len + \return + \description + +int mas_writereg(int reg, unsigned int val) + \group MAS communication + \conditions (!defined(SIMULATOR) && (CONFIG_CODEC != SWCODEC)) + \param reg + \param val + \return + \description + +void *memchr(const void *s1, int c, size_t n) + \group strings and memory + \param s1 + \param c + \param n + \return + \description + +int memcmp(const void *s1, const void *s2, size_t n) + \group strings and memory + \param s1 + \param s2 + \param n + \return + \description + +void* memcpy(void *out, const void *in, size_t n) + \group strings and memory + \param out + \param in + \param n + \return + \description + +void* memmove(void *out, const void *in, size_t n) + \group strings and memory + \param out + \param in + \param n + \return + \description + +void* memset(void *dst, int c, size_t length) + \group strings and memory + \param dst + \param c + \param length + \return + \description + +int mkdir(const char *name) + \group dir + \param name + \return + \description + +time_t mktime(struct tm *t) + \group misc + \conditions (CONFIG_RTC) + \param t + \return + \description + +bool mp3info(struct mp3entry *entry, const char *filename) + \group misc + \param entry + \param filename + \return + \description + +bool mp3_is_playing(void) + \group sound + \conditions (!defined(SIMULATOR)) + \return + \description + +void mp3_play_data(const unsigned char* start, int size, void (*get_more)(unsigned char** start, size_t* size)) + \group sound + \conditions (!defined(SIMULATOR)) + \param start + \param size + \param get_more + \description + +void mp3_play_pause(bool play) + \group sound + \conditions (!defined(SIMULATOR)) + \param play + \description + +void mp3_play_stop(void) + \group sound + \conditions (!defined(SIMULATOR)) + \description + +unsigned long mpeg_get_last_header(void) + \group playback control + \conditions (!defined(SIMULATOR) && (CONFIG_CODEC != SWCODEC)) + \return + \description + +void mutex_init(struct mutex *m) + \group kernel/ system + \conditions (CONFIG_CODEC == SWCODEC) + \param m + \description + +void mutex_lock(struct mutex *m) + \group kernel/ system + \conditions (CONFIG_CODEC == SWCODEC) + \param m + \description + +void mutex_unlock(struct mutex *m) + \group kernel/ system + \conditions (CONFIG_CODEC == SWCODEC) + \param m + \description + +DIR* opendir(const char* name) + \group dir + \param name + \return + \description + +bool option_screen(const struct settings_list *setting, struct viewport parent[NB_SCREENS], bool use_temp_var, unsigned char* option_title) + \group options + \param setting + \param parent[NB_SCREENS] + \param use_temp_var + \param option_title + \return + \description + +void pcm_apply_settings(void) + \group sound + \conditions (CONFIG_CODEC == SWCODEC) + \description + +void pcm_calculate_peaks(int *left, int *right) + \group sound + \conditions (CONFIG_CODEC == SWCODEC) + \param left + \param right + \description + +void pcm_calculate_rec_peaks(int *left, int *right) + \group sound + \conditions (CONFIG_CODEC == SWCODEC) && (defined(HAVE_RECORDING)) + \param left + \param right + \description + +void pcm_close_recording(void) + \group sound + \conditions (CONFIG_CODEC == SWCODEC) && (defined(HAVE_RECORDING)) + \description + +size_t pcm_get_bytes_waiting(void) + \group sound + \conditions (CONFIG_CODEC == SWCODEC) + \return + \description + +void pcm_init_recording(void) + \group sound + \conditions (CONFIG_CODEC == SWCODEC) && (defined(HAVE_RECORDING)) + \description + +bool pcm_is_paused(void) + \group sound + \conditions (CONFIG_CODEC == SWCODEC) + \return true if playback is paused, else false + \description + +bool pcm_is_playing(void) + \group sound + \conditions (CONFIG_CODEC == SWCODEC) + \return true unless playback is paused + \description + +void pcm_play_data(pcm_more_callback_type get_more, unsigned char* start, size_t size) + \group sound + \conditions (CONFIG_CODEC == SWCODEC) + \param get_more + \param start + \param size + \description + +void pcm_play_lock(void) + \group sound + \conditions (CONFIG_CODEC == SWCODEC) + \description + +void pcm_play_pause(bool play) + \group sound + \conditions (CONFIG_CODEC == SWCODEC) + \param play + \description Pauses or unpauses the playback depending on the truth value of =play= + +void pcm_play_stop(void) + \group sound + \conditions (CONFIG_CODEC == SWCODEC) + \description Stops the playback and empties the audio buffer unlike [F[pcm_play_pause]] + +void pcm_play_unlock(void) + \group sound + \conditions (CONFIG_CODEC == SWCODEC) + \description + +void pcm_record_data(pcm_more_callback_type2 more_ready, void *start, size_t size) + \group sound + \conditions (CONFIG_CODEC == SWCODEC) && (defined(HAVE_RECORDING)) + \param more_ready + \param start + \param size + \description + +void pcm_record_more(void *start, size_t size) + \group sound + \conditions (CONFIG_CODEC == SWCODEC) && (defined(HAVE_RECORDING)) + \param start + \param size + \description + +void pcm_set_frequency(unsigned int frequency) + \group sound + \conditions (CONFIG_CODEC == SWCODEC) + \param frequency + \description + +void pcm_stop_recording(void) + \group sound + \conditions (CONFIG_CODEC == SWCODEC) && (defined(HAVE_RECORDING)) + \description + +bool peak_meter_get_use_dbfs(void) + \conditions ((CONFIG_CODEC == MAS3587F) || (CONFIG_CODEC == MAS3539F)) + \return + \description + +unsigned short peak_meter_scale_value(unsigned short val, int meterwidth) + \conditions ((CONFIG_CODEC == MAS3587F) || (CONFIG_CODEC == MAS3539F)) + \param val + \param meterwidth + \return + \description + +void peak_meter_set_use_dbfs(bool use) + \conditions ((CONFIG_CODEC == MAS3587F) || (CONFIG_CODEC == MAS3539F)) + \param use + \description + +int playlist_amount(void) + \group playback control + \return + \description + +int playlist_resume(void) + \group playback control + \return + \description + +int playlist_start(int start_index, int offset) + \group playback control + \param start_index + \param offset + \return + \description + +void* plugin_get_audio_buffer(size_t *buffer_size) + \group misc + \param buffer_size + \return + \description Steals =buffer_size= bytes from the available RAM, reducing the available buffer for audio buffering + +void* plugin_get_buffer(size_t *buffer_size) + \group misc + \param buffer_size + \return + \description + +char* plugin_get_current_filename(void) + \group misc + \return + \description + +void plugin_iram_init(char *iramstart, char *iramcopy, size_t iram_size, char *iedata, size_t iedata_size) + \group misc + \conditions (defined(PLUGIN_USE_IRAM)) + \param iramstart + \param iramcopy + \param iram_size + \param iedata + \param iedata_size + \description + +void plugin_tsr(bool (*exit_callback)(bool reenter)) + \group misc + \param exit_callback + \description + +void PREFIX(audio_play)(long offset) + \group playback control + \param audio_play + \param offset + \description + +int PREFIX(close)(int fd) + \group file + \param close + \param fd + \return + \description + +int PREFIX(creat)(const char *pathname) + \group file + \param creat + \param pathname + \return + \description + +off_t PREFIX(filesize)(int fd) + \group file + \param filesize + \param fd + \return + \description + +int PREFIX(ftruncate)(int fd, off_t length) + \group file + \param ftruncate + \param fd + \param length + \return + \description + +off_t PREFIX(lseek)(int fd, off_t offset, int whence) + \group file + \param lseek + \param fd + \param offset + \param whence + \return + \description + +int PREFIX(open)(const char* pathname, int flags) + \group file + \param open + \param pathname + \param flags + \return + \description + +ssize_t PREFIX(read)(int fd, void* buf, size_t count) + \group file + \param read + \param fd + \param buf + \param count + \return + \description + +int PREFIX(remove)(const char* pathname) + \group file + \param remove + \param pathname + \return + \description + +int PREFIX(rename)(const char* path, const char* newname) + \group file + \param rename + \param path + \param newname + \return + \description + +void PREFIX(sleep)(int ticks) + \group kernel/ system + \param sleep + \param ticks + \description + +ssize_t PREFIX(write)(int fd, const void* buf, size_t count) + \group file + \param write + \param fd + \param buf + \param count + \return + \description + +void profile_func_enter(void *this_fn, void *call_site) + \conditions (defined(RB_PROFILE)) + \param this_fn + \param call_site + \description + +void profile_func_exit(void *this_fn, void *call_site) + \conditions (defined(RB_PROFILE)) + \param this_fn + \param call_site + \description + +void profile_thread(void) + \conditions (defined(RB_PROFILE)) + \description + +void profstop(void) + \conditions (defined(RB_PROFILE)) + \description + +void qsort(void *base, size_t nmemb, size_t size, int(*compar)(const void *, const void *)) + \group misc + \param base + \param nmemb + \param size + \param compar + \description + +void queue_delete(struct event_queue *q) + \param q + \description + +bool queue_empty(const struct event_queue *q) + \conditions (CONFIG_CODEC == SWCODEC) + \param q + \return + \description + +void queue_enable_queue_send(struct event_queue *q, struct queue_sender_list *send, struct thread_entry *owner) + \conditions (CONFIG_CODEC == SWCODEC) + \param q + \param send + \param owner + \description + +void queue_init(struct event_queue *q, bool register_queue) + \param q + \param register_queue + \description + +void queue_post(struct event_queue *q, long id, intptr_t data) + \param q + \param id + \param data + \description + +void queue_reply(struct event_queue *q, intptr_t retval) + \conditions (CONFIG_CODEC == SWCODEC) + \param q + \param retval + \description + +intptr_t queue_send(struct event_queue *q, long id, intptr_t data) + \conditions (CONFIG_CODEC == SWCODEC) + \param q + \param id + \param data + \return + \description + +void queue_wait(struct event_queue *q, struct queue_event *ev) + \conditions (CONFIG_CODEC == SWCODEC) + \param q + \param ev + \description + +void queue_wait_w_tmo(struct event_queue *q, struct queue_event *ev, int ticks) + \param q + \param ev + \param ticks + \description + +int rand(void) + \group misc + \return + \description + +struct dirent* readdir(DIR* dir) + \group dir + \param dir + \return + \description + +int read_bmp_file(const char* filename, struct bitmap *bm, int maxsize, int format) + \conditions (defined(HAVE_LCD_BITMAP)) + \param filename + \param bm + \param maxsize + \param format + \return + \description + +int read_line(int fd, char* buffer, int buffer_size) + \group file + \param fd + \param buffer + \param buffer_size + \return + \description + +void register_ata_idle_func(ata_idle_notify function) + \group file + \conditions (USING_ATA_CALLBACK) + \param function + \description + +void reload_directory(void) + \group file + \description + +void remote_backlight_off(void) + \conditions (defined(HAVE_REMOTE_LCD)) + \description + +void remote_backlight_on(void) + \conditions (defined(HAVE_REMOTE_LCD)) + \description + +void remote_backlight_set_timeout(int index) + \conditions (defined(HAVE_REMOTE_LCD)) + \param index + \description + +void remote_backlight_set_timeout_plugged(int index) + \conditions (defined(HAVE_REMOTE_LCD)) && (CONFIG_CHARGING) + \param index + \description + +void reset_poweroff_timer(void) + \description + +int rmdir(const char *name) + \group dir + \param name + \return + \description + +struct screen* screens[NB_SCREENS] + \return + \description + +void screen_clear_area(struct screen * display, int xstart, int ystart, int width, int height) + \conditions !defined(HAVE_LCD_CHARCELLS) + \param display + \param xstart + \param ystart + \param width + \param height + \description + +void screen_dump_set_hook(void (*hook)(int fh)) + \conditions (defined(HAVE_LCD_BITMAP)) + \param hook + \description + +bool search_albumart_files(const struct mp3entry *id3, const char *size_string, char *buf, int buflen) + \conditions (defined(HAVE_ALBUMART)) + \param id3 + \param size_string + \param buf Pointer to output + \param buflen Max length for =buf= + \return true if an album art was found + \description Searches the the album art file for the given =id3= struct, appending the =size_string= to the search pattern (cover.bmp). It writes the complete path into =buf=, but not more bytes than =buflen=. + +void semaphore_init(struct semaphore *s, int max, int start) + \conditions (defined(HAVE_SEMAPHORE_OBJECTS)) + \param s + \param max + \param start + \description + +void semaphore_release(struct semaphore *s) + \conditions (defined(HAVE_SEMAPHORE_OBJECTS)) + \param s + \description + +void semaphore_wait(struct semaphore *s) + \conditions (defined(HAVE_SEMAPHORE_OBJECTS)) + \param s + \description + +const struct settings_list* find_setting(const void* variable, int *id) + \group options + \param variable + \param id + \return + \description + +bool settings_parseline(char* line, char** name, char** value) + \group file + \param line + \param name + \param value + \return + \description + +bool set_bool(const char* string, const bool* variable ) + \group options + \param string + \param variable + \return + \description + +bool set_bool_options(const char* string, const bool* variable, const char* yes_str, int yes_voice, const char* no_str, int no_voice, void (*function)(bool)) + \group options + \param string + \param variable + \param yes_str + \param yes_voice + \param no_str + \param no_voice + \param function + \return + \description + +bool set_color(struct screen *display, char *title, unsigned *color, unsigned banned_color) + \conditions (defined(HAVE_LCD_COLOR)) + \param display + \param title + \param color + \param banned_color + \return + \description + +void set_current_file(char* path) + \param path + \description + +void set_dirfilter(int l_dirfilter) + \param l_dirfilter + \description + +bool set_int(const unsigned char* string, const char* unit, int voice_unit, const int* variable, void (*function)(int), int step, int min, int max, void (*formatter)(char*, size_t, int, const char*) ) + \group options + \param string + \param unit + \param voice_unit + \param variable + \param function + \param step + \param min + \param max + \param formatter + \return + \description + +bool set_option(const char* string, const void* variable, enum optiontype type, const struct opt_items* options, int numoptions, void (*function)(int)) + \group options + \param string + \param variable + \param type + \param options + \param numoptions + \param function + \return + \description + +int set_time(const struct tm *tm) + \group misc + \param tm + \return + \description + +int show_logo(void) + \return + \description + +void simplelist_info_init(struct simplelist_info *info, char* title, int count, void* data) + \group list + \param info + \param title + \param count + \param data + \description + +bool simplelist_show_list(struct simplelist_info *info) + \group list + \param info + \return + \description + +void sim_lcd_ex_init(int shades, unsigned long (*getpixel)(int, int)) + \group special simulator hooks + \conditions (defined(SIMULATOR)) && (defined(HAVE_LCD_BITMAP) && LCD_DEPTH < 8) + \param shades + \param getpixel + \description + +void sim_lcd_ex_update_rect(int x, int y, int width, int height) + \group special simulator hooks + \conditions (defined(SIMULATOR)) && (defined(HAVE_LCD_BITMAP) && LCD_DEPTH < 8) + \param x + \param y + \param width + \param height + \description + +int snprintf(char *buf, size_t size, const char *fmt, ...) ATTRIBUTE_PRINTF(3, 4) + \group strings and memory + \param buf + \param size + \param fmt + \return + \description + +int sound_default(int setting) + \group sound + \param setting + \return + \description + +int sound_max(int setting) + \group sound + \param setting + \return + \description + +int sound_min(int setting) + \group sound + \param setting + \return + \description + +void sound_set(int setting, int value) + \group sound + \param setting + \param value + \description + +void sound_set_pitch(int pitch) + \group playback control + \conditions ((CONFIG_CODEC == MAS3587F) || (CONFIG_CODEC == MAS3539F) || (CONFIG_CODEC == SWCODEC)) + \param pitch + \description + +const char * sound_unit(int setting) + \group sound + \param setting + \return + \description + +int sound_val2phys(int setting, int value) + \group sound + \param setting + \param value + \return + \description + +void splash(int ticks, const char *str) + \param ticks + \param str + \description + +void splashf(int ticks, const char *fmt, ...) ATTRIBUTE_PRINTF(2, 3) + \param ticks + \param fmt + \description + +void srand(unsigned int seed) + \group misc + \param seed + \description + +struct gui_syncstatusbar *statusbars + \group scroll bar + \return + \description + +int strcasecmp(const char *, const char *) + \group strings and memory + \param + \param + \return + \description + +char *strcat(char *s1, const char *s2) + \group strings and memory + \param s1 + \param s2 + \return =s1= concatenated with =s2= + \description Appends =s2= to =s1=, replacing the NULL terminating character of =s1= and returns it + +char *strchr(const char *s, int c) + \group strings and memory + \param s + \param c + \return + \description + +int strcmp(const char *, const char *) + \group strings and memory + \param + \param + \return + \description + +char* strcpy(char *dst, const char *src) + \group strings and memory + \param dst + \param src + \return + \description + +size_t strlen(const char *str) + \group strings and memory + \param str + \return + \description + +int strncasecmp(const char *s1, const char *s2, size_t n) + \group strings and memory + \param s1 + \param s2 + \param n + \return + \description + +int strncmp(const char *, const char *, size_t) + \group strings and memory + \param + \param + \param size_t + \return + \description + +char* strncpy(char *dst, const char *src, size_t length) + \group strings and memory + \param dst + \param src + \param length + \return + \description + +char * strrchr(const char *s, int c) + \group strings and memory + \param s + \param c + \return + \description + +char* strtok_r(char *ptr, const char *sep, char **end) + \group strings and memory + \param ptr + \param sep + \param end + \return + \description + +int system_memory_guard(int newmode) + \conditions (!defined(SIMULATOR)) + \param newmode + \return + \description + +bool tagcache_get_next(struct tagcache_search *tcs) + \conditions (defined(HAVE_TAGCACHE)) + \param tcs + \return + \description + +long tagcache_get_numeric(const struct tagcache_search *tcs, int tag) + \conditions (defined(HAVE_TAGCACHE)) + \param tcs + \param tag + \return + \description + +bool tagcache_retrieve(struct tagcache_search *tcs, int idxid, int tag, char *buf, long size) + \conditions (defined(HAVE_TAGCACHE)) + \param tcs + \param idxid + \param tag + \param buf + \param size + \return + \description + +bool tagcache_search(struct tagcache_search *tcs, int tag) + \conditions (defined(HAVE_TAGCACHE)) + \param tcs + \param tag + \return + \description + +bool tagcache_search_add_filter(struct tagcache_search *tcs, int tag, int seek) + \conditions (defined(HAVE_TAGCACHE)) + \param tcs + \param tag + \param seek + \return + \description + +void tagcache_search_finish(struct tagcache_search *tcs) + \conditions (defined(HAVE_TAGCACHE)) + \param tcs + \description + +void tagcache_search_set_uniqbuf(struct tagcache_search *tcs, void *buffer, long length) + \conditions (defined(HAVE_TAGCACHE)) + \param tcs + \param buffer + \param length + \description + +void talk_disable(bool disable) + \group misc + \param disable + \description + +struct thread_entry* threads + \group kernel/ system + \return + \description + +void thread_exit(void) + \group kernel/ system + \description + +void thread_thaw(struct thread_entry *thread) + \param thread + \description + +void thread_wait(struct thread_entry *thread) + \group kernel/ system + \param thread + \description + +bool timer_register(int reg_prio, void (*unregister_callback)(void), long cycles, int int_prio, void (*timer_callback)(void) IF_COP(, int core)) + \param reg_prio + \param unregister_callback + \param cycles + \param int_prio + \param core + \param timer_callback + \return + \description + +bool timer_set_period(long count) + \param count + \return + \description + +void timer_unregister(void) + \description + +void touchscreen_set_mode(enum touchscreen_mode) + \group button + \conditions (defined(HAVE_TOUCHSCREEN)) + \param touchscreen_mode + \description + +struct tree_context* tree_get_context(void) + \return + \description + +void trigger_cpu_boost(void) + \conditions (defined(HAVE_SCHEDULER_BOOSTCTRL)) + \description Boosts the CPU for the current thread + +void unregister_ata_idle_func(ata_idle_notify function, bool run) + \group file + \conditions (USING_ATA_CALLBACK) + \param function + \param run + \description + +void usb_acknowledge(long id) + \param id + \description + +bool usb_powered(void) + \group power + \conditions (defined(HAVE_USB_POWER)) + \return + \description + +unsigned char* utf8encode(unsigned long ucs, unsigned char *utf8) + \group unicode stuff + \param ucs + \param utf8 + \return + \description + +unsigned long utf8length(const unsigned char *utf8) + \group unicode stuff + \param utf8 + \return + \description + +int utf8seek(const unsigned char* utf8, int offset) + \group unicode stuff + \param utf8 + \param offset + \return + \description + +unsigned char* utf16BEdecode(const unsigned char *utf16, unsigned char *utf8, int count) + \group unicode stuff + \param utf16 + \param utf8 + \param count + \return + \description + +unsigned char* utf16LEdecode(const unsigned char *utf16, unsigned char *utf8, int count) + \group unicode stuff + \param utf16 + \param utf8 + \param count + \return + \description + +void viewport_set_defaults(struct viewport *vp, enum screen_type screen) + \param vp + \param screen + \description + +int vsnprintf(char *buf, int size, const char *fmt, va_list ap) + \group strings and memory + \param buf + \param size + \param fmt + \param ap + \return + \description + +void wheel_send_events(bool send) + \conditions (defined(HAVE_WHEEL_POSITION)) + \param send + \description + +int wheel_status(void) + \conditions (defined(HAVE_WHEEL_POSITION)) + \return + \description + +void yield(void) + \group kernel/ system + \description + +# END Property changes on: docs/plugin.DOCUMENTATION ___________________________________________________________________ Name: svn:eol-style + native