libmpdclient 2.22
Functions
output.h File Reference

MPD client library. More...

#include "compiler.h"
#include <stdbool.h>
Include dependency graph for output.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

struct mpd_outputmpd_output_begin (const struct mpd_pair *pair)
 
bool mpd_output_feed (struct mpd_output *output, const struct mpd_pair *pair)
 
void mpd_output_free (struct mpd_output *output)
 
unsigned mpd_output_get_id (const struct mpd_output *output)
 
const char * mpd_output_get_name (const struct mpd_output *output)
 
const char * mpd_output_get_plugin (const struct mpd_output *output)
 
bool mpd_output_get_enabled (const struct mpd_output *output)
 
const char * mpd_output_get_attribute (const struct mpd_output *output, const char *name)
 
const struct mpd_pairmpd_output_first_attribute (struct mpd_output *output)
 
const struct mpd_pairmpd_output_next_attribute (struct mpd_output *output)
 
bool mpd_send_outputs (struct mpd_connection *connection)
 
struct mpd_outputmpd_recv_output (struct mpd_connection *connection)
 
bool mpd_send_enable_output (struct mpd_connection *connection, unsigned output_id)
 
bool mpd_run_enable_output (struct mpd_connection *connection, unsigned output_id)
 
bool mpd_send_disable_output (struct mpd_connection *connection, unsigned output_id)
 
bool mpd_run_disable_output (struct mpd_connection *connection, unsigned output_id)
 
bool mpd_send_toggle_output (struct mpd_connection *connection, unsigned output_id)
 
bool mpd_run_toggle_output (struct mpd_connection *connection, unsigned output_id)
 
bool mpd_send_output_set (struct mpd_connection *connection, unsigned output_id, const char *attribute_name, const char *attribute_value)
 
bool mpd_run_output_set (struct mpd_connection *connection, unsigned output_id, const char *attribute_name, const char *attribute_value)
 
bool mpd_send_move_output (struct mpd_connection *connection, const char *output_name)
 
bool mpd_run_move_output (struct mpd_connection *connection, const char *output_name)
 

Detailed Description

MPD client library.

Do not include this header directly. Use mpd/client.h instead.

Definition in file output.h.

Function Documentation

◆ mpd_output_begin()

struct mpd_output * mpd_output_begin ( const struct mpd_pair pair)

Begins parsing a new mpd_output.

Parameters
pairthe first pair in this output (name is "outputid")
Returns
the new mpd_output object, or NULL on error (out of memory, or wrong pair name)

◆ mpd_output_feed()

bool mpd_output_feed ( struct mpd_output output,
const struct mpd_pair pair 
)

Parses the pair, adding its information to the specified mpd_output object.

Returns
true if the pair was parsed and added to the output (or if the pair was not understood and ignored), false if this pair is the beginning of the next output

◆ mpd_output_free()

void mpd_output_free ( struct mpd_output output)

Frees a mpd_output object returned from mpd_recv_output() or mpd_output_begin().

◆ mpd_output_get_id()

unsigned mpd_output_get_id ( const struct mpd_output output)
Returns
the id of the specified mpd_output object

◆ mpd_output_get_name()

const char * mpd_output_get_name ( const struct mpd_output output)
Returns
the configured name of the specified mpd_output object

◆ mpd_output_get_plugin()

const char * mpd_output_get_plugin ( const struct mpd_output output)
Returns
the plugin of the specified mpd_output object, or NULL if none was specified by the server
Since
libmpdclient 2.14, MPD 0.21

◆ mpd_output_get_enabled()

bool mpd_output_get_enabled ( const struct mpd_output output)
Returns
true if this output is enabled

◆ mpd_output_get_attribute()

const char * mpd_output_get_attribute ( const struct mpd_output output,
const char *  name 
)

Find an attribute with the given name and return its value.

Returns
the attribute value or NULL if there is no such attributes
Since
libmpdclient 2.16, MPD 0.21

◆ mpd_output_first_attribute()

const struct mpd_pair * mpd_output_first_attribute ( struct mpd_output output)

Obtains the first attribute for this output. This rewinds the current attribute pointer to the start. Call mpd_output_next_attribute() to obtain more attributes.

Returns
a pointer to the first attribute or NULL if there are no attributes
Since
libmpdclient 2.14, MPD 0.21

◆ mpd_output_next_attribute()

const struct mpd_pair * mpd_output_next_attribute ( struct mpd_output output)

Obtains the next attribute for this output. Call this function repeatedly until it returns NULL to get a full list of attributes.

Returns
a pointer to the next attribute or NULL if there are no more attributes
Since
libmpdclient 2.14, MPD 0.21

◆ mpd_send_outputs()

bool mpd_send_outputs ( struct mpd_connection connection)

Sends the "outputs" command to MPD: fetch information about all outputs. Call mpd_recv_output() to read the response.

Parameters
connectionA valid and connected mpd_connection.
Returns
true on success

◆ mpd_recv_output()

struct mpd_output * mpd_recv_output ( struct mpd_connection connection)

Reads the next mpd_output from the MPD response. Free the return value with mpd_output_free().

Returns
a mpd_output object on success, NULL on error or end-of-response

◆ mpd_send_enable_output()

bool mpd_send_enable_output ( struct mpd_connection connection,
unsigned  output_id 
)

Sends the "enableoutput" command to MPD.

Parameters
connectionA valid and connected mpd_connection.
output_idan identifier for the output device (see mpd_recv_output())
Returns
true on success

◆ mpd_run_enable_output()

bool mpd_run_enable_output ( struct mpd_connection connection,
unsigned  output_id 
)

Shortcut for mpd_send_enable_output() and mpd_response_finish().

Parameters
connectionA valid and connected mpd_connection.
output_idan identifier for the output device (see mpd_recv_output())
Returns
true on success

◆ mpd_send_disable_output()

bool mpd_send_disable_output ( struct mpd_connection connection,
unsigned  output_id 
)

Sends the "disableoutput" command to MPD.

Parameters
connectionA valid and connected mpd_connection.
output_idan identifier for the output device (see mpd_recv_output())
Returns
true on success

◆ mpd_run_disable_output()

bool mpd_run_disable_output ( struct mpd_connection connection,
unsigned  output_id 
)

Shortcut for mpd_send_disable_output() and mpd_response_finish().

Parameters
connectionA valid and connected mpd_connection.
output_idan identifier for the output device (see mpd_recv_output())
Returns
true on success

◆ mpd_send_toggle_output()

bool mpd_send_toggle_output ( struct mpd_connection connection,
unsigned  output_id 
)

Sends the "toggleoutput" command to MPD.

Parameters
connectiona valid and connected mpd_connection.
output_idan identifier for the output device (see mpd_recv_output())
Returns
true on success
Since
libmpdclient 2.9

◆ mpd_run_toggle_output()

bool mpd_run_toggle_output ( struct mpd_connection connection,
unsigned  output_id 
)

Shortcut for mpd_send_toggle_output() and mpd_response_finish().

Parameters
connectiona valid and connected mpd_connection.
output_idan identifier for the output device (see mpd_recv_output())
Returns
true on success
Since
libmpdclient 2.9

◆ mpd_send_output_set()

bool mpd_send_output_set ( struct mpd_connection connection,
unsigned  output_id,
const char *  attribute_name,
const char *  attribute_value 
)

Sends the "outputset" command to MPD: set a runtime attribute for the specified output_id.

Parameters
connectiona valid and connected mpd_connection
output_idan identifier for the output device (see mpd_recv_output())
attribute_namethe attribute name
attribute_valuethe attribute value
Returns
true on success
Since
libmpdclient 2.14, MPD 0.21

◆ mpd_run_output_set()

bool mpd_run_output_set ( struct mpd_connection connection,
unsigned  output_id,
const char *  attribute_name,
const char *  attribute_value 
)

Shortcut for mpd_send_output_set() and mpd_response_finish().

Since
libmpdclient 2.14, MPD 0.21

◆ mpd_send_move_output()

bool mpd_send_move_output ( struct mpd_connection connection,
const char *  output_name 
)

Move an output to the current partition.

Parameters
connectionthe connection to MPD
output_namethe name of the output to be moved
Returns
true on success
Since
libmpdclient 2.18, MPD 0.22.

◆ mpd_run_move_output()

bool mpd_run_move_output ( struct mpd_connection connection,
const char *  output_name 
)

Shortcut for mpd_send_move_output() and mpd_response_finish().

Parameters
connectionthe connection to MPD
output_namethe name of the output to be moved
Returns
true on success
Since
libmpdclient 2.18, MPD 0.22.