## AgsPulseServer

AgsPulseServer — pulseaudio instance

## Stability Level

Stable, unless otherwise indicated

## Functions

#define | AGS_PULSE_SERVER_GET_OBJ_MUTEX()
GList * | ags_pulse_server_find_url ()
GObject * | ags_pulse_server_find_client ()
GObject * | ags_pulse_server_find_port ()
void | ags_pulse_server_add_client ()
void | ags_pulse_server_remove_client ()
void | ags_pulse_server_connect_client ()
void | ags_pulse_server_disconnect_client ()
void | ags_pulse_server_start_poll ()
AgsPulseServer * | ags_pulse_server_new ()

## Properties

AgsPulseClient * | default-pulse-client | Read / Write
GObject * | default-soundcard | Read / Write
gpointer | pulse-client | Read / Write
char * | url | Read / Write

## Object Hierarchy

        GObject
        ╰── AgsPulseServer

## Includes

    #include <ags/audio/pulse/ags_pulse_server.h>

## Description

The AgsPulseServer is an object to represent a running pulseaudio instance.

## Functions

### AGS_PULSE_SERVER_GET_OBJ_MUTEX()

    #define AGS_PULSE_SERVER_GET_OBJ_MUTEX(obj) (&(((AgsPulseServer *) obj)->obj_mutex))

### ags_pulse_server_find_url ()

    GList *
    ags_pulse_server_find_url (GList *pulse_server,
                               gchar *url);

Find AgsPulseServer by url.

#### Parameters

pulse_server | the GList containing AgsPulseServer. | [element-type AgsAudio.PulseServer][transfer none]
url | the url to find |

#### Returns

the GList containing a AgsPulseServer matching `url` or `NULL`.

[element-type AgsAudio.PulseServer][transfer none]

Since: 3.0.0

### ags_pulse_server_find_client ()

    GObject *
    ags_pulse_server_find_client (AgsPulseServer *pulse_server,
                                  gchar *client_uuid);

Find AgsPulseClient by uuid.

#### Parameters

pulse_server | the AgsPulseServer |
client_uuid | the uuid to find |

#### Returns

the AgsPulseClient found or `NULL`.

[transfer none]

Since: 3.0.0

### ags_pulse_server_find_port ()

    GObject *
    ags_pulse_server_find_port (AgsPulseServer *pulse_server,
                                gchar *port_uuid);

Find AgsPulsePort by uuid.

#### Parameters

pulse_server | the AgsPulseServer |
port_uuid | the uuid to find |

#### Returns

the AgsPulsePort found or `NULL`.

[transfer none]

Since: 3.0.0

### ags_pulse_server_add_client ()

    void
    ags_pulse_server_add_client (AgsPulseServer *pulse_server,
                                 GObject *pulse_client);

Add `pulse_client` to `pulse_server`

#### Parameters

pulse_server | the AgsPulseServer |
pulse_client | the AgsPulseClient to add |

Since: 3.0.0

### ags_pulse_server_remove_client ()

    void
    ags_pulse_server_remove_client (AgsPulseServer *pulse_server,
                                    GObject *pulse_client);

Remove `pulse_client` to `pulse_server`

#### Parameters

pulse_server | the AgsPulseServer |
pulse_client | the AgsPulseClient to remove |

Since: 3.0.0

### ags_pulse_server_connect_client ()

    void
    ags_pulse_server_connect_client (AgsPulseServer *pulse_server);

Connect all clients.

#### Parameters

pulse_server | the AgsPulseServer |

Since: 3.0.0

### ags_pulse_server_disconnect_client ()

    void
    ags_pulse_server_disconnect_client (AgsPulseServer *pulse_server);

Disconnect all clients.

#### Parameters

pulse_server | the AgsPulseServer |

Since: 3.0.0

### ags_pulse_server_start_poll ()

    void
    ags_pulse_server_start_poll (AgsPulseServer *pulse_server);

### ags_pulse_server_new ()

    AgsPulseServer *
    ags_pulse_server_new (gchar *url);

Create a new instance of AgsPulseServer.

#### Parameters

url | the URL as string |

#### Returns

the new AgsPulseServer

Since: 3.0.0

## Property Details

### The `“default-pulse-client”` property

      “default-pulse-client”     AgsPulseClient *

The default pulse client.

Owner: AgsPulseServer

Flags: Read / Write

Since: 3.0.0

### The `“default-soundcard”` property

      “default-soundcard”        GObject *

The default soundcard.

Owner: AgsPulseServer

Flags: Read / Write

Since: 3.0.0

### The `“pulse-client”` property

      “pulse-client”             gpointer

The pulse client list.

[transfer full]

Owner: AgsPulseServer

Flags: Read / Write

Since: 3.0.0

### The `“url”` property

      “url”                      char *

The assigned URL.

Owner: AgsPulseServer

Flags: Read / Write

Default value: NULL

Since: 3.0.0