summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWilliam Wilgus <wilgus.william@gmail.com>2022-12-14 23:37:14 -0500
committerWilliam Wilgus <wilgus.william@gmail.com>2022-12-14 23:37:14 -0500
commit99839960a248624f69a1b6c09e8713d35628228a (patch)
tree6cfacf3a43945ce37ad14502d5d9a6f905445253
parent6b87bfadfff6c44722f8ffe5227c05c41b1b47c8 (diff)
downloadrockbox-99839960a2.tar.gz
rockbox-99839960a2.zip
abrepeat add dummy functions and remove some of the ifdefs
Change-Id: Icae7e334e87bb1974712a7a76296cf69bbdbffba
-rw-r--r--apps/abrepeat.h33
-rw-r--r--apps/gui/wps.c25
-rw-r--r--apps/playback.c3
3 files changed, 39 insertions, 22 deletions
diff --git a/apps/abrepeat.h b/apps/abrepeat.h
index f7ee65247c..4d2c4ea001 100644
--- a/apps/abrepeat.h
+++ b/apps/abrepeat.h
@@ -20,9 +20,38 @@
****************************************************************************/
#ifndef _ABREPEAT_H_
#define _ABREPEAT_H_
-
-#ifdef AB_REPEAT_ENABLE
#include <stdbool.h>
+
+#ifndef AB_REPEAT_ENABLE /* Dummy functions */
+static inline bool ab_repeat_mode_enabled(void)
+{
+ return false;
+}
+static inline bool ab_bool_dummy_marker(unsigned int song_position)
+{
+ (void) song_position;
+ return false;
+}
+static inline void ab_void_dummy_marker(unsigned int song_position)
+{
+ (void) song_position;
+}
+static inline void ab_dummy_voidfn(void){}
+
+#define ab_repeat_init ab_dummy_voidfn
+#define ab_before_A_marker ab_bool_dummy_marker
+#define ab_after_A_marker ab_bool_dummy_marker
+#define ab_jump_to_A_marker ab_dummy_voidfn
+#define ab_reset_markers ab_dummy_voidfn
+#define ab_set_A_marker ab_void_dummy_marker
+#define ab_set_B_marker ab_void_dummy_marker
+#define ab_get_A_marker ab_bool_dummy_marker
+#define ab_get_B_marker ab_bool_dummy_marker
+#define ab_end_of_track_report ab_dummy_voidfn
+#define ab_reached_B_marker ab_bool_dummy_marker
+#define ab_position_report ab_void_dummy_marker
+
+#else /*def AB_REPEAT_ENABLE*/
#include "audio.h"
#include "kernel.h" /* needed for HZ */
diff --git a/apps/gui/wps.c b/apps/gui/wps.c
index 8b74b0e02b..f8fd99930f 100644
--- a/apps/gui/wps.c
+++ b/apps/gui/wps.c
@@ -613,9 +613,9 @@ static long do_wps_exit(long action, bool bookmark)
if (bookmark)
bookmark_autobookmark(true);
audio_stop();
-#ifdef AB_REPEAT_ENABLE
+
ab_reset_markers();
-#endif
+
gwps_leave_wps(true);
#ifdef HAVE_RECORDING
if (action == ACTION_WPS_REC)
@@ -678,10 +678,9 @@ long gui_wps_show(void)
long last_left = 0, last_right = 0;
struct wps_state *state = get_wps_state();
-#ifdef AB_REPEAT_ENABLE
ab_repeat_init();
ab_reset_markers();
-#endif
+
wps_state_init();
while ( 1 )
{
@@ -904,7 +903,7 @@ long gui_wps_show(void)
/* prev / restart */
case ACTION_WPS_SKIPPREV:
last_left = current_tick;
-#ifdef AB_REPEAT_ENABLE
+
/* if we're in A/B repeat mode and the current position
is past the A marker, jump back to the A marker... */
if ( ab_repeat_mode_enabled() && ab_after_A_marker(state->id3->elapsed) )
@@ -912,9 +911,7 @@ long gui_wps_show(void)
ab_jump_to_A_marker();
break;
}
- else
- /* ...otherwise, do it normally */
-#endif
+ else /* ...otherwise, do it normally */
play_hop(-1);
break;
@@ -922,7 +919,7 @@ long gui_wps_show(void)
OR if skip length set, hop by predetermined amount. */
case ACTION_WPS_SKIPNEXT:
last_right = current_tick;
-#ifdef AB_REPEAT_ENABLE
+
/* if we're in A/B repeat mode and the current position is
before the A marker, jump to the A marker... */
if ( ab_repeat_mode_enabled() )
@@ -933,32 +930,26 @@ long gui_wps_show(void)
break;
}
}
- else
- /* ...otherwise, do it normally */
-#endif
+ else /* ...otherwise, do it normally */
play_hop(1);
break;
/* next / prev directories */
/* and set A-B markers if in a-b mode */
case ACTION_WPS_ABSETB_NEXTDIR:
-#if defined(AB_REPEAT_ENABLE)
if (ab_repeat_mode_enabled())
{
ab_set_B_marker(state->id3->elapsed);
ab_jump_to_A_marker();
}
else
-#endif
{
change_dir(1);
}
break;
case ACTION_WPS_ABSETA_PREVDIR:
-#if defined(AB_REPEAT_ENABLE)
if (ab_repeat_mode_enabled())
ab_set_A_marker(state->id3->elapsed);
else
-#endif
{
change_dir(-1);
}
@@ -1010,7 +1001,6 @@ long gui_wps_show(void)
break;
#endif /* HAVE_PITCHCONTROL */
-#ifdef AB_REPEAT_ENABLE
/* reset A&B markers */
case ACTION_WPS_ABRESET:
if (ab_repeat_mode_enabled())
@@ -1019,7 +1009,6 @@ long gui_wps_show(void)
update = true;
}
break;
-#endif /* AB_REPEAT_ENABLE */
/* stop and exit wps */
case ACTION_WPS_STOP:
diff --git a/apps/playback.c b/apps/playback.c
index 7eaa149f2c..c4d84145b2 100644
--- a/apps/playback.c
+++ b/apps/playback.c
@@ -3479,9 +3479,8 @@ static void buffer_event_finished_callback(unsigned short id, void *ev_data)
/* Update elapsed time for next PCM insert */
void audio_codec_update_elapsed(unsigned long elapsed)
{
-#ifdef AB_REPEAT_ENABLE
ab_position_report(elapsed);
-#endif
+
/* Save in codec's id3 where it is used at next pcm insert */
id3_get(CODEC_ID3)->elapsed = elapsed;
}