00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00041 #ifndef MPD_DB_H
00042 #define MPD_DB_H
00043
00044 #include <mpd/connection.h>
00045 #include <mpd/tag.h>
00046 #include <mpd/compiler.h>
00047
00048 #include <stdbool.h>
00049
00055 enum mpd_operator {
00061 MPD_OPERATOR_DEFAULT,
00062 };
00063
00064 #ifdef __cplusplus
00065 extern "C" {
00066 #endif
00067
00078 bool
00079 mpd_search_db_songs(struct mpd_connection *connection, bool exact);
00080
00090 bool
00091 mpd_search_add_db_songs(struct mpd_connection *connection, bool exact);
00092
00103 bool
00104 mpd_search_queue_songs(struct mpd_connection *connection, bool exact);
00105
00116 bool
00117 mpd_search_db_tags(struct mpd_connection *connection, enum mpd_tag_type type);
00118
00128 bool mpd_count_db_songs(struct mpd_connection *connection);
00129
00138 bool
00139 mpd_search_add_base_constraint(struct mpd_connection *connection,
00140 enum mpd_operator oper,
00141 const char *value);
00142
00151 bool
00152 mpd_search_add_uri_constraint(struct mpd_connection *connection,
00153 enum mpd_operator oper,
00154 const char *value);
00155
00165 bool
00166 mpd_search_add_tag_constraint(struct mpd_connection *connection,
00167 enum mpd_operator oper,
00168 enum mpd_tag_type type,
00169 const char *value);
00170
00179 bool
00180 mpd_search_add_any_tag_constraint(struct mpd_connection *connection,
00181 enum mpd_operator oper,
00182 const char *value);
00183
00191 bool
00192 mpd_search_commit(struct mpd_connection *connection);
00193
00201 void
00202 mpd_search_cancel(struct mpd_connection *connection);
00203
00213 mpd_malloc
00214 struct mpd_pair *
00215 mpd_recv_pair_tag(struct mpd_connection *connection, enum mpd_tag_type type);
00216
00217 #ifdef __cplusplus
00218 }
00219 #endif
00220
00221 #endif