/** \file afs.h Exported symbols of the audio file selector. */
#include <regex.h>
-#include "osl.h"
#include "hash.h"
/** Audio file selector data stored in the audio file table. */
HASH_TYPE *hash;
};
-void make_empty_status_items(char *buf);
-
-/** At most that many bytes will be passed from afs to para_server. */
-#define VERBOSE_LS_OUTPUT_SIZE 4096
-
/** Data about the current audio file, passed from afs to server. */
struct audio_file_data {
- /** Same info as ls -lv -p current audio_file. */
- char verbose_ls_output[VERBOSE_LS_OUTPUT_SIZE];
/** The open file descriptor to the current audio file. */
int fd;
/** Vss needs this for streaming. */
int audio_file_loop(void *private_data, osl_rbtree_loop_func *func);
void aft_check_callback(int fd, __a_unused const struct osl_object *query);
-/* mood */
-int change_current_mood(char *mood_name);
-void close_current_mood(void);
-int reload_current_mood(void);
-void mood_check_callback(int fd, __a_unused const struct osl_object *query);
-
-
/* playlist */
int playlist_open(char *name);
void playlist_close(void);
/** A blob table has that many columns. */
NUM_BLOB_COLUMNS
};
-
-/** Define an osl table description for a blob table. */
-#define DEFINE_BLOB_TABLE_DESC(table_name) \
- struct osl_table_description table_name ## _table_desc = { \
- .name = #table_name, \
- .num_columns = NUM_BLOB_COLUMNS, \
- .flags = OSL_LARGE_TABLE, \
- .column_descriptions = blob_cols \
- };
-
-/** Define a pointer to an osl blob table with a canonical name. */
-#define DEFINE_BLOB_TABLE_PTR(table_name) struct osl_table *table_name ## _table;
-
-/** Define a blob table. */
-#define INIT_BLOB_TABLE(table_name) \
- DEFINE_BLOB_TABLE_DESC(table_name); \
- DEFINE_BLOB_TABLE_PTR(table_name);
-