libmpdclient  2.17
message.h
Go to the documentation of this file.
1 /* libmpdclient
2  (c) 2003-2018 The Music Player Daemon Project
3  This project's homepage is: http://www.musicpd.org
4 
5  Redistribution and use in source and binary forms, with or without
6  modification, are permitted provided that the following conditions
7  are met:
8 
9  - Redistributions of source code must retain the above copyright
10  notice, this list of conditions and the following disclaimer.
11 
12  - Redistributions in binary form must reproduce the above copyright
13  notice, this list of conditions and the following disclaimer in the
14  documentation and/or other materials provided with the distribution.
15 
16  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
17  ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
18  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
19  A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR
20  CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
21  EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
22  PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
23  PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
24  LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
25  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
26  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27 */
28 
35 #ifndef MPD_MESSAGE_H
36 #define MPD_MESSAGE_H
37 
38 #include "recv.h"
39 #include "compiler.h"
40 
41 #include <stdbool.h>
42 
43 struct mpd_pair;
47 struct mpd_message;
48 struct mpd_connection;
49 
50 #ifdef __cplusplus
51 extern "C" {
52 #endif
53 
63 mpd_malloc
64 struct mpd_message *
65 mpd_message_begin(const struct mpd_pair *pair);
66 
77 bool
78 mpd_message_feed(struct mpd_message *output, const struct mpd_pair *pair);
79 
85 void
86 mpd_message_free(struct mpd_message *message);
87 
93 mpd_pure
94 const char *
95 mpd_message_get_channel(const struct mpd_message *message);
96 
102 mpd_pure
103 const char *
104 mpd_message_get_text(const struct mpd_message *message);
105 
115 bool
116 mpd_send_subscribe(struct mpd_connection *connection, const char *channel);
117 
127 bool
128 mpd_run_subscribe(struct mpd_connection *connection, const char *channel);
129 
140 bool
141 mpd_send_unsubscribe(struct mpd_connection *connection, const char *channel);
142 
152 bool
153 mpd_run_unsubscribe(struct mpd_connection *connection, const char *channel);
154 
165 bool
166 mpd_send_send_message(struct mpd_connection *connection,
167  const char *channel, const char *text);
168 
179 bool
180 mpd_run_send_message(struct mpd_connection *connection,
181  const char *channel, const char *text);
182 
191 bool
192 mpd_send_read_messages(struct mpd_connection *connection);
193 
203 mpd_malloc
204 struct mpd_message *
205 mpd_recv_message(struct mpd_connection *connection);
206 
215 bool
216 mpd_send_channels(struct mpd_connection *connection);
217 
230 mpd_malloc
231 static inline struct mpd_pair *
233 {
234  return mpd_recv_pair_named(connection, "channel");
235 }
236 
237 #ifdef __cplusplus
238 }
239 #endif
240 
241 #endif
mpd_malloc struct mpd_message * mpd_message_begin(const struct mpd_pair *pair)
bool mpd_send_channels(struct mpd_connection *connection)
bool mpd_send_unsubscribe(struct mpd_connection *connection, const char *channel)
mpd_pure const char * mpd_message_get_text(const struct mpd_message *message)
mpd_pure const char * mpd_message_get_channel(const struct mpd_message *message)
bool mpd_send_send_message(struct mpd_connection *connection, const char *channel, const char *text)
bool mpd_run_subscribe(struct mpd_connection *connection, const char *channel)
mpd_malloc struct mpd_message * mpd_recv_message(struct mpd_connection *connection)
Compiler specific definitions.
mpd_malloc struct mpd_pair * mpd_recv_pair_named(struct mpd_connection *connection, const char *name)
bool mpd_run_send_message(struct mpd_connection *connection, const char *channel, const char *text)
static mpd_malloc struct mpd_pair * mpd_recv_channel_pair(struct mpd_connection *connection)
Definition: message.h:232
MPD client library.
bool mpd_send_subscribe(struct mpd_connection *connection, const char *channel)
bool mpd_send_read_messages(struct mpd_connection *connection)
bool mpd_run_unsubscribe(struct mpd_connection *connection, const char *channel)
bool mpd_message_feed(struct mpd_message *output, const struct mpd_pair *pair)
Definition: pair.h:41
void mpd_message_free(struct mpd_message *message)