Skip to content

Commit

Permalink
refactor: rename playmode to play_mode
Browse files Browse the repository at this point in the history
We also use loop_mode instead of loopmode.

Also 'play mode' looks better in the documentation than 'playmode',
so use two words in the code as well.
  • Loading branch information
mmitch committed Feb 23, 2025
1 parent f86bb56 commit 0339ab1
Show file tree
Hide file tree
Showing 3 changed files with 55 additions and 55 deletions.
64 changes: 32 additions & 32 deletions cfgparser.c
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ struct player_cfg cfg = {
.fadeout = 3,
.filter_type = CFG_FILTER_DMG,
.loop_mode = LOOP_OFF,
.playmode = PLAYMODE_LINEAR,
.play_mode = PLAY_MODE_LINEAR,
.rate = 44100,
.refresh_delay = 33, // ms
.requested_endian = PLUGOUT_ENDIAN_AUTOSELECT,
Expand All @@ -51,7 +51,7 @@ static void cfg_bool_as_int(void* const ptr);
static void cfg_endian(void* const ptr);
static void cfg_long(void* const ptr);
static void cfg_loop_mode(void* const ptr);
static void cfg_playmode(void* const ptr);
static void cfg_play_mode(void* const ptr);
static void cfg_string(void* const ptr);

/* configuration directives */
Expand All @@ -62,7 +62,7 @@ static const struct cfg_option options[] = {
{ "loop", &cfg.loop_mode, cfg_bool_as_int },
{ "loop_mode", &cfg.loop_mode, cfg_loop_mode },
{ "output_plugin", &cfg.sound_name, cfg_string },
{ "play_mode", &cfg.playmode, cfg_playmode },
{ "play_mode", &cfg.play_mode, cfg_play_mode },
{ "rate", &cfg.rate, cfg_long },
{ "refresh_delay", &cfg.refresh_delay, cfg_long },
{ "silence_timeout", &cfg.silence_timeout, cfg_long },
Expand Down Expand Up @@ -99,15 +99,15 @@ static const struct loop_mode_map loop_mode_map[] = {
{ NULL, -1 }
};

struct playmode_map {
struct play_mode_map {
const char *keyword;
enum playmode playmode;
enum play_mode play_mode;
};

static const struct playmode_map playmode_map[] = {
{ "linear", PLAYMODE_LINEAR },
{ "random", PLAYMODE_RANDOM },
{ "shuffle", PLAYMODE_SHUFFLE },
static const struct play_mode_map play_mode_map[] = {
{ "linear", PLAY_MODE_LINEAR },
{ "random", PLAY_MODE_RANDOM },
{ "shuffle", PLAY_MODE_SHUFFLE },
{ NULL, -1 }
};

Expand Down Expand Up @@ -208,21 +208,21 @@ static void cfg_loop_mode(void* const ptr)
s, filename, cfg_line_orig, cfg_char_orig);

Check failure

Code scanning / CodeQL

Wrong type of arguments to formatting function High

This format specifier for type 'long' does not match the argument type 'int'.
}

static void cfg_playmode(void* const ptr)
static void cfg_play_mode(void* const ptr)
{
char *s;
enum playmode *playmode = ptr;
const struct playmode_map *entry;
enum play_mode *play_mode = ptr;
const struct play_mode_map *entry;

// remember this because cfg_string() already reads the nextchar()
long cfg_line_orig = cfg_line;
int cfg_char_orig = cfg_char;

cfg_string(&s);

for (entry = playmode_map; entry->keyword; entry++) {
for (entry = play_mode_map; entry->keyword; entry++) {
if (strncmp(s, entry->keyword, sizeof(s)-1) == 0) {
*playmode = entry->playmode;
*play_mode = entry->play_mode;
return;
}
}
Expand Down Expand Up @@ -404,7 +404,7 @@ struct player_cfg initial_cfg;
#define ASSERT_CFG_EQUAL(actual, expected) do { \
ASSERT_STRUCT_EQUAL("%ld", fadeout, actual, expected); \
ASSERT_STRUCT_EQUAL("%d", loop_mode, actual, expected); \
ASSERT_STRUCT_EQUAL("%d", playmode, actual, expected); \
ASSERT_STRUCT_EQUAL("%d", play_mode, actual, expected); \
ASSERT_STRUCT_EQUAL("%ld", rate, actual, expected); \
ASSERT_STRUCT_EQUAL("%ld", refresh_delay, actual, expected); \
ASSERT_STRUCT_EQUAL("%d", requested_endian, actual, expected); \
Expand Down Expand Up @@ -507,7 +507,7 @@ test void test_parse_complete_configuration() {
// then
ASSERT_EQUAL("fadeout %ld", cfg.fadeout, 0L);
ASSERT_EQUAL("loop_mode %d", cfg.loop_mode, LOOP_RANGE);
ASSERT_EQUAL("play_mode %d", cfg.playmode, PLAYMODE_SHUFFLE);
ASSERT_EQUAL("play_mode %d", cfg.play_mode, PLAY_MODE_SHUFFLE);
ASSERT_EQUAL("rate %ld", cfg.rate, 12345L);
ASSERT_EQUAL("refresh_delay %ld", cfg.refresh_delay, 987L);
ASSERT_EQUAL("requested_endian %d", cfg.requested_endian, PLUGOUT_ENDIAN_LITTLE);
Expand Down Expand Up @@ -733,57 +733,57 @@ test void test_invalid_endian() { // old setting is kept, warning in stderr
}
TEST(test_invalid_endian);

test void test_playmode_linear() {
test void test_play_mode_linear() {
// given
write_test_gbsplayrc("play_mode=linear");
cfg.playmode = PLAYMODE_RANDOM;
cfg.play_mode = PLAY_MODE_RANDOM;

// when
cfg_parse(TEST_GBSPLAYRC);

// then
ASSERT_EQUAL("playmode %d", cfg.playmode, PLAYMODE_LINEAR);
ASSERT_EQUAL("play_mode %d", cfg.play_mode, PLAY_MODE_LINEAR);
}
TEST(test_playmode_linear);
TEST(test_play_mode_linear);

test void test_playmode_random() {
test void test_play_mode_random() {
// given
write_test_gbsplayrc("play_mode=random");
cfg.playmode = PLAYMODE_SHUFFLE;
cfg.play_mode = PLAY_MODE_SHUFFLE;

// when
cfg_parse(TEST_GBSPLAYRC);

// then
ASSERT_EQUAL("playmode %d", cfg.playmode, PLAYMODE_RANDOM);
ASSERT_EQUAL("play_mode %d", cfg.play_mode, PLAY_MODE_RANDOM);
}
TEST(test_playmode_random);
TEST(test_play_mode_random);

test void test_playmode_shuffle() {
test void test_play_mode_shuffle() {
// given
write_test_gbsplayrc("play_mode=shuffle");
cfg.playmode = PLAYMODE_LINEAR;
cfg.play_mode = PLAY_MODE_LINEAR;

// when
cfg_parse(TEST_GBSPLAYRC);

// then
ASSERT_EQUAL("playmode %d", cfg.playmode, PLAYMODE_SHUFFLE);
ASSERT_EQUAL("play_mode %d", cfg.play_mode, PLAY_MODE_SHUFFLE);
}
TEST(test_playmode_shuffle);
TEST(test_play_mode_shuffle);

test void test_invalid_playmode() { // old setting is kept, warning in stderr
test void test_invalid_play_mode() { // old setting is kept, warning in stderr
// given
write_test_gbsplayrc("play_mode=INVALID");
cfg.playmode = PLAYMODE_SHUFFLE;
cfg.play_mode = PLAY_MODE_SHUFFLE;

// when
cfg_parse(TEST_GBSPLAYRC);

// then
ASSERT_EQUAL("playmode %d", cfg.playmode, PLAYMODE_SHUFFLE);
ASSERT_EQUAL("play_mode %d", cfg.play_mode, PLAY_MODE_SHUFFLE);
}
TEST(test_invalid_playmode);
TEST(test_invalid_play_mode);

TEST(delete_test_gbsplayrc); // cleanup
TEST_EOF;
Expand Down
10 changes: 5 additions & 5 deletions cfgparser.h
Original file line number Diff line number Diff line change
Expand Up @@ -16,17 +16,17 @@
#define CFG_FILTER_DMG "dmg"
#define CFG_FILTER_CGB "cgb"

enum playmode {
PLAYMODE_LINEAR = 1,
PLAYMODE_RANDOM = 2,
PLAYMODE_SHUFFLE = 3,
enum play_mode {
PLAY_MODE_LINEAR = 1,
PLAY_MODE_RANDOM = 2,
PLAY_MODE_SHUFFLE = 3,
};

struct player_cfg {
long fadeout;
char *filter_type;
enum gbs_loop_mode loop_mode;
enum playmode playmode;
enum play_mode play_mode;
long rate;
long refresh_delay;
enum plugout_endian requested_endian;
Expand Down
36 changes: 18 additions & 18 deletions player.c
Original file line number Diff line number Diff line change
Expand Up @@ -123,13 +123,13 @@ static long get_next_subsong(struct gbs *gbs)
const struct gbs_status *status = gbs_get_status(gbs);
long next = -1;

switch (cfg.playmode) {
switch (cfg.play_mode) {

case PLAYMODE_RANDOM:
case PLAY_MODE_RANDOM:
next = rand_long(status->songs);
break;

case PLAYMODE_SHUFFLE:
case PLAY_MODE_SHUFFLE:
subsong_playlist_idx++;
if (subsong_playlist_idx == status->songs) {
free(subsong_playlist);
Expand All @@ -140,7 +140,7 @@ static long get_next_subsong(struct gbs *gbs)
next = subsong_playlist[subsong_playlist_idx];
break;

case PLAYMODE_LINEAR:
case PLAY_MODE_LINEAR:
next = status->subsong + 1;
break;
}
Expand All @@ -154,13 +154,13 @@ static long get_prev_subsong(struct gbs *gbs)
const struct gbs_status *status = gbs_get_status(gbs);
long prev = -1;

switch (cfg.playmode) {
switch (cfg.play_mode) {

case PLAYMODE_RANDOM:
case PLAY_MODE_RANDOM:
prev = rand_long(status->songs);
break;

case PLAYMODE_SHUFFLE:
case PLAY_MODE_SHUFFLE:
subsong_playlist_idx--;
if (subsong_playlist_idx == -1) {
free(subsong_playlist);
Expand All @@ -171,7 +171,7 @@ static long get_prev_subsong(struct gbs *gbs)
prev = subsong_playlist[subsong_playlist_idx];
break;

case PLAYMODE_LINEAR:
case PLAY_MODE_LINEAR:
prev = status->subsong - 1;
break;
}
Expand Down Expand Up @@ -209,21 +209,21 @@ void play_prev_subsong(struct gbs *gbs)
play_subsong(gbs, prev);
}

static long setup_playmode(struct gbs *gbs)
/* initializes the chosen playmode (set start subsong etc.) */
static long setup_play_mode(struct gbs *gbs)
/* initializes the chosen play mode (set start subsong etc.) */
{
const struct gbs_status *status = gbs_get_status(gbs);
long subsong = status->subsong;

switch (cfg.playmode) {
switch (cfg.play_mode) {

case PLAYMODE_RANDOM:
case PLAY_MODE_RANDOM:
if (subsong == -1) {
subsong = get_next_subsong(gbs);
}
break;

case PLAYMODE_SHUFFLE:
case PLAY_MODE_SHUFFLE:
subsong_playlist = setup_playlist(status->songs);
subsong_playlist_idx = 0;
if (subsong == -1) {
Expand All @@ -239,7 +239,7 @@ static long setup_playmode(struct gbs *gbs)
}
break;

case PLAYMODE_LINEAR:
case PLAY_MODE_LINEAR:
if (subsong == -1) {
subsong = status->defaultsong - 1;
}
Expand All @@ -263,7 +263,7 @@ long nextsubsong_cb(struct gbs *gbs, void *priv)
return false;
}
subsong = subsong_start;
setup_playmode(gbs);
setup_play_mode(gbs);
}

play_subsong(gbs, subsong);
Expand Down Expand Up @@ -466,10 +466,10 @@ static void parseopts(int *argc, char ***argv)
version();
break;
case 'z':
cfg.playmode = PLAYMODE_SHUFFLE;
cfg.play_mode = PLAY_MODE_SHUFFLE;
break;
case 'Z':
cfg.playmode = PLAYMODE_RANDOM;
cfg.play_mode = PLAY_MODE_RANDOM;
break;
}
}
Expand Down Expand Up @@ -612,7 +612,7 @@ struct gbs *common_init(int argc, char **argv)
gbs_configure_channels(gbs, mute_channel[0], mute_channel[1], mute_channel[2], mute_channel[3]);

gbs_set_nextsubsong_cb(gbs, nextsubsong_cb, NULL);
initial_subsong = setup_playmode(gbs);
initial_subsong = setup_play_mode(gbs);
play_subsong(gbs, initial_subsong);
if (cfg.verbosity>0) {
gbs_internal_api.print_info(gbs, 0);
Expand Down

0 comments on commit 0339ab1

Please sign in to comment.