## AgsCoreAudioClient

AgsCoreAudioClient — core audio connection

## Stability Level

Stable, unless otherwise indicated

## Functions

#define | AGS_CORE_AUDIO_CLIENT_GET_OBJ_MUTEX()
gboolean | ags_core_audio_client_test_flags ()
void | ags_core_audio_client_set_flags ()
void | ags_core_audio_client_unset_flags ()
GList * | ags_core_audio_client_find_uuid ()
GList * | ags_core_audio_client_find ()
void | ags_core_audio_client_open ()
void | ags_core_audio_client_add_device ()
void | ags_core_audio_client_remove_device ()
void | ags_core_audio_client_add_port ()
void | ags_core_audio_client_remove_port ()
void | ags_core_audio_client_activate ()
void | ags_core_audio_client_deactivate ()
AgsCoreAudioClient * | ags_core_audio_client_new ()

## Properties

char * | client-name | Read / Write
AgsCoreAudioServer * | core-audio-server | Read / Write
gpointer | device | Read / Write
gpointer | port | Read / Write

## Types and Values

enum | AgsCoreAudioClientFlags

## Object Hierarchy

        GFlags
        ╰── AgsCoreAudioClientFlags
        GObject
        ╰── AgsCoreAudioClient

## Includes

    #include <ags/audio/core-audio/ags_core_audio_client.h>

## Description

The AgsCoreAudioClient communicates with a core audio instance.

## Functions

### AGS_CORE_AUDIO_CLIENT_GET_OBJ_MUTEX()

    #define AGS_CORE_AUDIO_CLIENT_GET_OBJ_MUTEX(obj) (&(((AgsCoreAudioClient *) obj)->obj_mutex))

### ags_core_audio_client_test_flags ()

    gboolean
    ags_core_audio_client_test_flags (AgsCoreAudioClient *core_audio_client,
                                      AgsCoreAudioClientFlags flags);

Test `flags` to be set on `core_audio_client` .

#### Parameters

core_audio_client | the AgsCoreAudioClient |
flags | the flags |

#### Returns

`TRUE` if flags are set, else `FALSE`

Since: 3.0.0

### ags_core_audio_client_set_flags ()

    void
    ags_core_audio_client_set_flags (AgsCoreAudioClient *core_audio_client,
                                     AgsCoreAudioClientFlags flags);

Enable a feature of `core_audio_client` .

#### Parameters

core_audio_client | the AgsCoreAudioClient |
flags | see AgsCoreAudioClientFlags |

Since: 3.0.0

### ags_core_audio_client_unset_flags ()

    void
    ags_core_audio_client_unset_flags (AgsCoreAudioClient *core_audio_client,
                                       AgsCoreAudioClientFlags flags);

Disable a feature of `core_audio_client` .

#### Parameters

core_audio_client | the AgsCoreAudioClient |
flags | see AgsCoreAudioClientFlags |

Since: 3.0.0

### ags_core_audio_client_find_uuid ()

    GList *
    ags_core_audio_client_find_uuid (GList *core_audio_client,
                                     gchar *client_uuid);

Finds next match of `client_uuid` in `core_audio_client` .

#### Parameters

core_audio_client | the GList containing AgsCoreAudioClient. | [element-type AgsAudio.CoreAudioClient][transfer none]
client_uuid | the client uuid to find |

#### Returns

a GList or `NULL`.

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

Since: 3.0.0

### ags_core_audio_client_find ()

    GList *
    ags_core_audio_client_find (GList *core_audio_client,
                                gchar *client_name);

Finds next match of `client_name` in `core_audio_client` .

#### Parameters

core_audio_client | the GList containing AgsCoreAudioClient. | [element-type AgsAudio.CoreAudioClient][transfer none]
client_name | the client name to find |

#### Returns

the next matching GList or `NULL`.

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

Since: 3.0.0

### ags_core_audio_client_open ()

    void
    ags_core_audio_client_open (AgsCoreAudioClient *core_audio_client,
                                gchar *client_name);

Open the core audio client's connection and read uuid.

#### Parameters

core_audio_client | the AgsCoreAudioClient |
client_name | the client's name |

Since: 3.0.0

### ags_core_audio_client_add_device ()

    void
    ags_core_audio_client_add_device (AgsCoreAudioClient *core_audio_client,
                                      GObject *core_audio_device);

Add `core_audio_device` to `core_audio_client` .

#### Parameters

core_audio_client | the AgsCoreAudioClient |
core_audio_device | an AgsCoreAudioDevout or AgsCoreAudioDevin |

Since: 3.0.0

### ags_core_audio_client_remove_device ()

    void
    ags_core_audio_client_remove_device (AgsCoreAudioClient *core_audio_client,
                                         GObject *core_audio_device);

Remove `core_audio_device` from `core_audio_client` .

#### Parameters

core_audio_client | the AgsCoreAudioClient |
core_audio_device | an AgsCoreAudioDevout or AgsCoreAudioDevin |

Since: 3.0.0

### ags_core_audio_client_add_port ()

    void
    ags_core_audio_client_add_port (AgsCoreAudioClient *core_audio_client,
                                    GObject *core_audio_port);

Add `core_audio_port` to `core_audio_client` .

#### Parameters

core_audio_client | the AgsCoreAudioClient |
core_audio_port | an AgsCoreAudioPort |

Since: 3.0.0

### ags_core_audio_client_remove_port ()

    void
    ags_core_audio_client_remove_port (AgsCoreAudioClient *core_audio_client,
                                       GObject *core_audio_port);

Remove `core_audio_port` from `core_audio_client` .

#### Parameters

core_audio_client | the AgsCoreAudioClient |
core_audio_port | an AgsCoreAudioPort |

Since: 3.0.0

### ags_core_audio_client_activate ()

    void
    ags_core_audio_client_activate (AgsCoreAudioClient *core_audio_client);

Activate client.

#### Parameters

core_audio_client | the AgsCoreAudioClient |

Since: 3.0.0

### ags_core_audio_client_deactivate ()

    void
    ags_core_audio_client_deactivate (AgsCoreAudioClient *core_audio_client);

Deactivate client.

#### Parameters

core_audio_client | the AgsCoreAudioClient |

Since: 3.0.0

### ags_core_audio_client_new ()

    AgsCoreAudioClient *
    ags_core_audio_client_new (GObject *core_audio_server);

Create a new instance of AgsCoreAudioClient.

#### Parameters

core_audio_server | the assigned AgsCoreAudioServer |

#### Returns

the new AgsCoreAudioClient

Since: 3.0.0

## Types and Values

### enum AgsCoreAudioClientFlags

Enum values to control the behavior or indicate internal state of AgsCoreAudioClient by enable/disable as flags.

#### Members

AGS_CORE_AUDIO_CLIENT_ACTIVATED | the client was activated |
AGS_CORE_AUDIO_CLIENT_READY | the client is ready |

## Property Details

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

      “client-name”              char *

The core-audio client name.

Owner: AgsCoreAudioClient

Flags: Read / Write

Default value: NULL

Since: 3.0.0

### The `“core-audio-server”` property

      “core-audio-server”        AgsCoreAudioServer *

The assigned AgsCoreAudioServer.

Owner: AgsCoreAudioClient

Flags: Read / Write

Since: 3.0.0

### The `“device”` property

      “device”                   gpointer

The assigned devices.

[transfer full]

Owner: AgsCoreAudioClient

Flags: Read / Write

Since: 3.0.0

### The `“port”` property

      “port”                     gpointer

The assigned ports.

[transfer full]

Owner: AgsCoreAudioClient

Flags: Read / Write

Since: 3.0.0