summaryrefslogtreecommitdiff
path: root/apps/plugin.h
diff options
context:
space:
mode:
Diffstat (limited to 'apps/plugin.h')
-rw-r--r--apps/plugin.h33
1 files changed, 18 insertions, 15 deletions
diff --git a/apps/plugin.h b/apps/plugin.h
index e35909f409..984555fdf2 100644
--- a/apps/plugin.h
+++ b/apps/plugin.h
@@ -157,12 +157,12 @@ int plugin_open(const char *plugin, const char *parameter);
157#define PLUGIN_MAGIC 0x526F634B /* RocK */ 157#define PLUGIN_MAGIC 0x526F634B /* RocK */
158 158
159/* increase this every time the api struct changes */ 159/* increase this every time the api struct changes */
160#define PLUGIN_API_VERSION 251 160#define PLUGIN_API_VERSION 252
161 161
162/* update this to latest version if a change to the api struct breaks 162/* update this to latest version if a change to the api struct breaks
163 backwards compatibility (and please take the opportunity to sort in any 163 backwards compatibility (and please take the opportunity to sort in any
164 new function which are "waiting" at the end of the function table) */ 164 new function which are "waiting" at the end of the function table) */
165#define PLUGIN_MIN_API_VERSION 245 165#define PLUGIN_MIN_API_VERSION 252
166 166
167/* 239 Marks the removal of ARCHOS HWCODEC and CHARCELL */ 167/* 239 Marks the removal of ARCHOS HWCODEC and CHARCELL */
168 168
@@ -406,6 +406,7 @@ struct plugin_api {
406 int (*action_get_touchscreen_press_in_vp)(short *x1, short *y1, struct viewport *vp); 406 int (*action_get_touchscreen_press_in_vp)(short *x1, short *y1, struct viewport *vp);
407#endif 407#endif
408 bool (*action_userabort)(int timeout); 408 bool (*action_userabort)(int timeout);
409 int (*core_set_keyremap)(struct button_mapping* core_keymap, int count);
409 410
410 /* button */ 411 /* button */
411 long (*button_get)(bool block); 412 long (*button_get)(bool block);
@@ -492,6 +493,10 @@ struct plugin_api {
492 void (*set_current_file)(const char* path); 493 void (*set_current_file)(const char* path);
493 void (*set_dirfilter)(int l_dirfilter); 494 void (*set_dirfilter)(int l_dirfilter);
494 495
496 void (*onplay_show_playlist_menu)(const char* path, void (*playlist_insert_cb));
497 bool (*browse_id3)(struct mp3entry *id3,
498 int playlist_display_index, int playlist_amount);
499
495 /* talking */ 500 /* talking */
496 int (*talk_id)(int32_t id, bool enqueue); 501 int (*talk_id)(int32_t id, bool enqueue);
497 int (*talk_file)(const char *root, const char *dir, const char *file, 502 int (*talk_file)(const char *root, const char *dir, const char *file,
@@ -588,6 +593,7 @@ struct plugin_api {
588 intptr_t (*queue_send)(struct event_queue *q, long id, 593 intptr_t (*queue_send)(struct event_queue *q, long id,
589 intptr_t data); 594 intptr_t data);
590 void (*queue_reply)(struct event_queue *q, intptr_t retval); 595 void (*queue_reply)(struct event_queue *q, intptr_t retval);
596 void (*queue_remove_from_head)(struct event_queue *q, long id);
591 597
592#ifdef RB_PROFILE 598#ifdef RB_PROFILE
593 void (*profile_thread)(void); 599 void (*profile_thread)(void);
@@ -790,7 +796,10 @@ struct plugin_api {
790 int (*playlist_insert_directory)(struct playlist_info* playlist, 796 int (*playlist_insert_directory)(struct playlist_info* playlist,
791 const char *dirname, int position, bool queue, 797 const char *dirname, int position, bool queue,
792 bool recurse); 798 bool recurse);
799 int (*playlist_insert_playlist)(struct playlist_info* playlist,
800 const char *filename, int position, bool queue);
793 int (*playlist_shuffle)(int random_seed, int start_index); 801 int (*playlist_shuffle)(int random_seed, int start_index);
802 bool (*warn_on_pl_erase)(void);
794 void (*audio_play)(unsigned long elapsed, unsigned long offset); 803 void (*audio_play)(unsigned long elapsed, unsigned long offset);
795 void (*audio_stop)(void); 804 void (*audio_stop)(void);
796 void (*audio_pause)(void); 805 void (*audio_pause)(void);
@@ -850,6 +859,7 @@ struct plugin_api {
850 bool (*battery_level_safe)(void); 859 bool (*battery_level_safe)(void);
851 int (*battery_time)(void); 860 int (*battery_time)(void);
852 int (*battery_voltage)(void); 861 int (*battery_voltage)(void);
862 int (*battery_current)(void);
853#if CONFIG_CHARGING 863#if CONFIG_CHARGING
854 bool (*charger_inserted)(void); 864 bool (*charger_inserted)(void);
855# if CONFIG_CHARGING >= CHARGING_MONITOR 865# if CONFIG_CHARGING >= CHARGING_MONITOR
@@ -928,23 +938,16 @@ struct plugin_api {
928 void (*plugin_release_audio_buffer)(void); 938 void (*plugin_release_audio_buffer)(void);
929 void (*plugin_tsr)(bool (*exit_callback)(bool reenter)); 939 void (*plugin_tsr)(bool (*exit_callback)(bool reenter));
930 char* (*plugin_get_current_filename)(void); 940 char* (*plugin_get_current_filename)(void);
931 /* new stuff at the end, sort into place next time
932 the API gets incompatible */
933 bool (*warn_on_pl_erase)(void);
934 int (*playlist_insert_playlist)(struct playlist_info* playlist,
935 const char *filename, int position, bool queue);
936 int (*battery_current)(void);
937 void (*onplay_show_playlist_menu)(const char* path, void (*playlist_insert_cb));
938 void (*queue_remove_from_head)(struct event_queue *q, long id);
939 int (*core_set_keyremap)(struct button_mapping* core_keymap, int count);
940 size_t (*plugin_reserve_buffer)(size_t buffer_size); 941 size_t (*plugin_reserve_buffer)(size_t buffer_size);
942 /* reboot and poweroff */
943 void (*sys_poweroff)(void);
944 void (*sys_reboot)(void);
945 /* pathfuncs */
941#ifdef HAVE_MULTIVOLUME 946#ifdef HAVE_MULTIVOLUME
942 int (*path_strip_volume)(const char *name, const char **nameptr, bool greedy); 947 int (*path_strip_volume)(const char *name, const char **nameptr, bool greedy);
943#endif 948#endif
944 void (*sys_poweroff)(void); 949 /* new stuff at the end, sort into place next time
945 void (*sys_reboot)(void); 950 the API gets incompatible */
946 bool (*browse_id3)(struct mp3entry *id3,
947 int playlist_display_index, int playlist_amount);
948}; 951};
949 952
950/* plugin header */ 953/* plugin header */