extern struct audio_format afl[];
/** the list of supported audio file selectors */
-struct audio_file_selector dblist[] = {
+struct audio_file_selector selectors[] = {
{
.name = "random",
.init = random_selector_init,
mmd->selector_change = -1; /* no change nec., set to new num by com_chs */
if (!conf.selector_given)
goto random;
- for (i = 0; dblist[i].name; i++) {
- if (strcmp(dblist[i].name, conf.selector_arg))
+ for (i = 0; selectors[i].name; i++) {
+ if (strcmp(selectors[i].name, conf.selector_arg))
continue;
PARA_NOTICE_LOG("initializing %s audio file selector\n",
- dblist[i].name);
- ret = dblist[i].init(&dblist[i]);
+ selectors[i].name);
+ ret = selectors[i].init(&selectors[i]);
if (ret < 0) {
PARA_WARNING_LOG("%s", PARA_STRERROR(-ret));
break;
PARA_WARNING_LOG("%s", "falling back to the random selector\n");
random:
mmd->selector_num = 0;
- dblist[0].init(&dblist[0]); /* always successful */
+ selectors[0].init(&selectors[0]); /* always successful */
}
static unsigned init_network(void)
{
int ret, old = mmd->selector_num, new = mmd->selector_change;
- dblist[old].shutdown();
- ret = dblist[new].init(&dblist[new]);
+ selectors[old].shutdown();
+ ret = selectors[new].init(&selectors[new]);
mmd->selector_change = -1; /* reset */
if (ret >= 0) {
mmd->selector_num = new;
}
/* init failed */
PARA_ERROR_LOG("%s -- switching to the random selector\n", PARA_STRERROR(-ret));
- dblist[0].init(&dblist[0]);
+ selectors[0].init(&selectors[0]);
mmd->selector_num = 0;
}
&max_fileno,
&rfds, &wfds);
}
- if (dblist[mmd->selector_num].pre_select) {
- ret = dblist[mmd->selector_num].pre_select(&rfds, &wfds);
+ if (selectors[mmd->selector_num].pre_select) {
+ ret = selectors[mmd->selector_num].pre_select(&rfds, &wfds);
max_fileno = MAX(max_fileno, ret);
}
mmd_unlock();
mmd_lock();
if (mmd->selector_change >= 0)
change_selector();
- if (dblist[mmd->selector_num].post_select)
- dblist[mmd->selector_num].post_select(&rfds, &wfds);
+ if (selectors[mmd->selector_num].post_select)
+ selectors[mmd->selector_num].post_select(&rfds, &wfds);
if (ret < 0 && err == EINTR)
goto repeat;
if (ret < 0) {
case SIGTERM:
PARA_EMERG_LOG("terminating on signal %d\n", sig);
kill(0, SIGTERM);
- dblist[mmd->selector_num].shutdown();
+ selectors[mmd->selector_num].shutdown();
mutex_destroy(mmd_mutex);
shm_detach(mmd);
shm_destroy(mmd_shm_id);