X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=db.h;h=80c0de8936a5f2bab30183d49e9ccdbada26d127;hp=328f7de8cd748814c67542f431c8ca83b782141e;hb=48a247f640255dec0ce0e0d0ce8742d6223a14c2;hpb=f6dc51ad7914b60fe71a4fc53460925bdc513a9d diff --git a/db.h b/db.h index 328f7de8..80c0de89 100644 --- a/db.h +++ b/db.h @@ -16,10 +16,11 @@ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA. */ -/** \file db.h data structures common to all database tools */ +/** \file db.h data structures common to all audio file selectors */ #include + int find_audio_files(const char *dirname, int (*f)(const char *, const char *)); /** @@ -32,7 +33,7 @@ int find_audio_files(const char *dirname, int (*f)(const char *, const char *)); * * */ -struct dbtool { +struct audio_file_selector { /** * name name of this database tool */ @@ -48,13 +49,13 @@ const char *name; * again via the cdt command). * * If \a init() returns success (non-negative return value), it must have - * initialized in all non-optional function pointers of the given dbtool + * initialized in all non-optional function pointers of the given selector * struct. Moreover, \a cmd_list must point to a NULL-terminated array which * holds the list of all commands that are supported by this database tool. */ -int (*init)(struct dbtool *self); +int (*init)(struct audio_file_selector *self); /** - * list of commands supported by this dbtool + * list of commands supported by this selector */ struct server_command *cmd_list; /** @@ -95,7 +96,7 @@ void (*shutdown)(void); * add file descriptors to fd_sets * * The pre_select function of the activated database tool gets called just - * before para_server enters its main select loop. The dbtool may add its own + * before para_server enters its main select loop. The selector may add its own * file descriptors to the \a rfds or the \a wfds set. * * If a file descriptor was added, \a max_fileno must be increased by @@ -112,8 +113,12 @@ int (*pre_select)(fd_set *rfds, fd_set *wfds); * which are ready for reading/writing. */ void (*post_select)(fd_set *rfds, fd_set *wfds); +/** + * each selector has its private data pointer */ +void *private_data; }; -int mysql_dbtool_init(struct dbtool*); -int dopey_dbtool_init(struct dbtool*); +int mysql_selector_init(struct audio_file_selector*); +int plm_selector_init(struct audio_file_selector*); +int random_selector_init(struct audio_file_selector*);