capabilities.h File Reference

MPD client library. More...

`#include "recv.h"`
`#include "compiler.h"`
`#include "tag.h"`
`#include <stdbool.h>`

Go to the source code of this file.

## Functions

bool | mpd_send_allowed_commands (struct mpd_connection *connection)
bool | mpd_send_disallowed_commands (struct mpd_connection *connection)
static struct mpd_pair * | mpd_recv_command_pair (struct mpd_connection *connection)
bool | mpd_send_list_url_schemes (struct mpd_connection *connection)
static struct mpd_pair * | mpd_recv_url_scheme_pair (struct mpd_connection *connection)
bool | mpd_send_list_tag_types (struct mpd_connection *connection)
static struct mpd_pair * | mpd_recv_tag_type_pair (struct mpd_connection *connection)
bool | mpd_send_disable_tag_types (struct mpd_connection *connection, const enum mpd_tag_type *types, unsigned n)
bool | mpd_run_disable_tag_types (struct mpd_connection *connection, const enum mpd_tag_type *types, unsigned n)
bool | mpd_send_enable_tag_types (struct mpd_connection *connection, const enum mpd_tag_type *types, unsigned n)
bool | mpd_run_enable_tag_types (struct mpd_connection *connection, const enum mpd_tag_type *types, unsigned n)
bool | mpd_send_clear_tag_types (struct mpd_connection *connection)
bool | mpd_run_clear_tag_types (struct mpd_connection *connection)
bool | mpd_send_all_tag_types (struct mpd_connection *connection)
bool | mpd_run_all_tag_types (struct mpd_connection *connection)

## Detailed Description

MPD client library.

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

Definition in file capabilities.h.

## Function Documentation

## mpd_send_allowed_commands()

bool mpd_send_allowed_commands | ( | struct mpd_connection * | connection | ) |

Requests a list of supported and allowed commands. Use mpd_recv_command_pair() to obtain the list of "command" pairs.

Parameters

  connection | the connection to MPD

Returns
  true on success, false on error

## mpd_send_disallowed_commands()

bool mpd_send_disallowed_commands | ( | struct mpd_connection * | connection | ) |

Requests a list of supported commands which are not allowed for this connection. Use mpd_recv_command_pair() to obtain the list of "command" pairs.

Parameters

  connection | the connection to MPD

Returns
  true on success, false on error

## mpd_recv_command_pair()

struct mpd_pair * mpd_recv_command_pair | ( | struct mpd_connection * | connection | ) |

inline static

Receives the next supported command. Call this in a loop after mpd_send_allowed_commands() or mpd_send_disallowed_commands().

Free the return value with mpd_return_pair().

Parameters

  connection | a mpd_connection

Returns
  a "command" pair, or NULL on error or if the end of the response is reached

Definition at line 58 of file capabilities.h.

## mpd_send_list_url_schemes()

bool mpd_send_list_url_schemes | ( | struct mpd_connection * | connection | ) |

Requests a list of supported URL handlers in the form "scheme://", example: "http://". Use mpd_recv_url_scheme_pair() to obtain the list of "handler" pairs.

Parameters

  connection | the connection to MPD

Returns
  true on success, false on error

## mpd_recv_url_scheme_pair()

struct mpd_pair * mpd_recv_url_scheme_pair | ( | struct mpd_connection * | connection | ) |

inline static

Receives one line of the mpd_send_url_schemes() response.

Free the return value with mpd_return_pair().

Parameters

  connection | a mpd_connection

Returns
  a "handler" pair, or NULL on error or if the end of the response is reached

Definition at line 85 of file capabilities.h.

## mpd_send_list_tag_types()

bool mpd_send_list_tag_types | ( | struct mpd_connection * | connection | ) |

Requests a list of supported tag types. Use mpd_recv_tag_type_pair() to obtain the list of "tagtype" pairs.

Parameters

  connection | the connection to MPD

Returns
  true on success, false on error

## mpd_recv_tag_type_pair()

struct mpd_pair * mpd_recv_tag_type_pair | ( | struct mpd_connection * | connection | ) |

inline static

Receives the next tag type name. Call this in a loop after mpd_send_list_tag_types().

Free the return value with mpd_return_pair().

Parameters

  connection | a mpd_connection

Returns
  a "tagtype" pair, or NULL on error or if the end of the response is reached

Definition at line 112 of file capabilities.h.

## mpd_send_disable_tag_types()

bool mpd_send_disable_tag_types | ( | struct mpd_connection * | connection,
|  | const enum mpd_tag_type * | types,
|  | unsigned | n )

Remove one or more tags from the list of tag types the client is interested in. These will be omitted from responses to this client.

Parameters

  connection | the connection to MPD
  types | an array of tag types to disable
  n | the number of tag types in the array

Returns
  true on success, false on error

Since
  libmpdclient 2.12, MPD 0.21

## mpd_run_disable_tag_types()

bool mpd_run_disable_tag_types | ( | struct mpd_connection * | connection,
|  | const enum mpd_tag_type * | types,
|  | unsigned | n )

Shortcut for mpd_send_disable_tag_types() and mpd_response_finish().

Since
  libmpdclient 2.12, MPD 0.21

## mpd_send_enable_tag_types()

bool mpd_send_enable_tag_types | ( | struct mpd_connection * | connection,
|  | const enum mpd_tag_type * | types,
|  | unsigned | n )

Re-enable one or more tags from the list of tag types for this client. These will no longer be hidden from responses to this client.

Parameters

  connection | the connection to MPD
  types | an array of tag types to enable
  n | the number of tag types in the array

Returns
  true on success, false on error

Since
  libmpdclient 2.12, MPD 0.21

## mpd_run_enable_tag_types()

bool mpd_run_enable_tag_types | ( | struct mpd_connection * | connection,
|  | const enum mpd_tag_type * | types,
|  | unsigned | n )

Shortcut for mpd_send_enable_tag_types() and mpd_response_finish().

Since
  libmpdclient 2.12, MPD 0.21

## mpd_send_clear_tag_types()

bool mpd_send_clear_tag_types | ( | struct mpd_connection * | connection | ) |

Clear the list of tag types this client is interested in. This means that MPD will not send any tags to this client.

Parameters

  connection | the connection to MPD

Returns
  true on success, false on error

Since
  libmpdclient 2.12, MPD 0.21

## mpd_run_clear_tag_types()

bool mpd_run_clear_tag_types | ( | struct mpd_connection * | connection | ) |

Shortcut for mpd_send_clear_tag_types() and mpd_response_finish().

Since
  libmpdclient 2.12, MPD 0.21

## mpd_send_all_tag_types()

bool mpd_send_all_tag_types | ( | struct mpd_connection * | connection | ) |

Add all tags to the list of tag types this client is interested in. This means that MPD will send all tags to this client.

Parameters

  connection | the connection to MPD

Returns
  true on success, false on error

Since
  libmpdclient 2.19, MPD 0.21

## mpd_run_all_tag_types()

bool mpd_run_all_tag_types | ( | struct mpd_connection * | connection | ) |

Shortcut for mpd_send_all_tag_types() and mpd_response_finish().

Since
  libmpdclient 2.19, MPD 0.21