## AgsWaveLoader

AgsWaveLoader — load wave asynchronously

## Stability Level

Stable, unless otherwise indicated

## Functions

#define | AGS_WAVE_LOADER_GET_OBJ_MUTEX()
gboolean | ags_wave_loader_test_flags ()
void | ags_wave_loader_set_flags ()
void | ags_wave_loader_unset_flags ()
AgsAudio * | ags_wave_loader_get_audio ()
void | ags_wave_loader_set_audio ()
gchar * | ags_wave_loader_get_filename ()
void | ags_wave_loader_set_filename ()
AgsAudioFile * | ags_wave_loader_get_audio_file ()
void | ags_wave_loader_set_audio_file ()
void | ags_wave_loader_start ()
AgsWaveLoader * | ags_wave_loader_new ()

## Properties

AgsAudio * | audio | Read / Write
AgsAudioFile * | audio-file | Read / Write
char * | filename | Read / Write

## Types and Values

enum | AgsWaveLoaderFlags

## Object Hierarchy

        GObject
        ╰── AgsWaveLoader

## Includes

    #include <ags/plugin/ags_wave_loader.h>

## Description

The AgsWaveLoader loads wave audio data asynchronously.

## Functions

### AGS_WAVE_LOADER_GET_OBJ_MUTEX()

    #define AGS_WAVE_LOADER_GET_OBJ_MUTEX(obj) (&(((AgsWaveLoader *) obj)->obj_mutex))

### ags_wave_loader_test_flags ()

    gboolean
    ags_wave_loader_test_flags (AgsWaveLoader *wave_loader,
                                AgsWaveLoaderFlags flags);

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

#### Parameters

wave_loader | the AgsWaveLoader |
flags | the flags |

#### Returns

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

Since: 3.0.0

### ags_wave_loader_set_flags ()

    void
    ags_wave_loader_set_flags (AgsWaveLoader *wave_loader,
                               AgsWaveLoaderFlags flags);

Set flags.

#### Parameters

wave_loader | the AgsWaveLoader |
flags | the flags |

Since: 3.0.0

### ags_wave_loader_unset_flags ()

    void
    ags_wave_loader_unset_flags (AgsWaveLoader *wave_loader,
                                 AgsWaveLoaderFlags flags);

Unset flags.

#### Parameters

wave_loader | the AgsWaveLoader |
flags | the flags |

Since: 3.0.0

### ags_wave_loader_get_audio ()

    AgsAudio *
    ags_wave_loader_get_audio (AgsWaveLoader *wave_loader);

Get audio of `wave_loader` .

#### Parameters

wave_loader | the AgsWaveLoader |

#### Returns

the assigned AgsAudio.

[transfer full]

Since: 3.2.0

### ags_wave_loader_set_audio ()

    void
    ags_wave_loader_set_audio (AgsWaveLoader *wave_loader,
                               AgsAudio *audio);

Set audio of `wave_loader` .

#### Parameters

wave_loader | the AgsWaveLoader |
audio | the AgsAudio |

Since: 3.2.0

### ags_wave_loader_get_filename ()

    gchar *
    ags_wave_loader_get_filename (AgsWaveLoader *wave_loader);

Get filename of `wave_loader` .

#### Parameters

wave_loader | the AgsWaveLoader |

#### Returns

the assigned filename

Since: 3.2.0

### ags_wave_loader_set_filename ()

    void
    ags_wave_loader_set_filename (AgsWaveLoader *wave_loader,
                                  gchar *filename);

Set filename of `wave_loader` .

#### Parameters

wave_loader | the AgsWaveLoader |
filename | the filename |

Since: 3.2.0

### ags_wave_loader_get_audio_file ()

    AgsAudioFile *
    ags_wave_loader_get_audio_file (AgsWaveLoader *wave_loader);

Get audio file of `wave_loader` .

#### Parameters

wave_loader | the AgsWaveLoader |

#### Returns

the assigned AgsAudioFile.

[transfer full]

Since: 3.2.0

### ags_wave_loader_set_audio_file ()

    void
    ags_wave_loader_set_audio_file (AgsWaveLoader *wave_loader,
                                    AgsAudioFile *audio_file);

Set audio file of `wave_loader` .

#### Parameters

wave_loader | the AgsWaveLoader |
audio_file | the AgsAudioFile |

Since: 3.2.0

### ags_wave_loader_start ()

    void
    ags_wave_loader_start (AgsWaveLoader *wave_loader);

Start `wave_loader` .

#### Parameters

wave_loader | the AgsWaveLoader |

Since: 3.0.0

### ags_wave_loader_new ()

    AgsWaveLoader *
    ags_wave_loader_new (AgsAudio *audio,
                         gchar *filename,
                         gboolean do_replace);

Create a new instance of AgsWaveLoader.

#### Parameters

audio | the AgsAudio |
filename | the filename |
do_replace | if `TRUE` replace `audio` 's wave |

#### Returns

the new AgsWaveLoader

Since: 3.0.0

## Types and Values

### enum AgsWaveLoaderFlags

#### Members

AGS_WAVE_LOADER_DO_REPLACE |  |
AGS_WAVE_LOADER_HAS_COMPLETED |  |

## Property Details

### The `“audio”` property

      “audio”                    AgsAudio *

The assigned audio.

Owner: AgsWaveLoader

Flags: Read / Write

Since: 3.0.0

### The `“audio-file”` property

      “audio-file”               AgsAudioFile *

The audio file opened.

Owner: AgsWaveLoader

Flags: Read / Write

Since: 3.0.0

### The `“filename”` property

      “filename”                 char *

The filename to open.

Owner: AgsWaveLoader

Flags: Read / Write

Default value: NULL

Since: 3.0.0