AgsRecycling

AgsRecycling — recycling container of audio signals

Functions

Properties

gpointer audio-signal Read / Write
guint buffer-size Read / Write
AgsChannel * channel Read / Write
guint format Read / Write
GObject * input-soundcard Read / Write
int input-soundcard-channel Read / Write
AgsRecycling * next Read / Write
GObject * output-soundcard Read / Write
int output-soundcard-channel Read / Write
AgsRecycling * parent Read / Write
AgsRecycling * prev Read / Write
guint samplerate Read / Write

Signals

Types and Values

Object Hierarchy

    GObject
    ╰── AgsRecycling

Implemented Interfaces

AgsRecycling implements AgsConnectable.

Includes

#include <ags/audio/ags_recycling.h>

Description

AgsRecycling forms the nested tree of AgsChannel. Every channel owning audio signal contains therefor an AgsRecycling.

Functions

AGS_RECYCLING_GET_OBJ_MUTEX()

#define AGS_RECYCLING_GET_OBJ_MUTEX(obj) (&(((AgsRecycling *) obj)->obj_mutex))

ags_recycling_get_obj_mutex ()

GRecMutex *
ags_recycling_get_obj_mutex (AgsRecycling *recycling);

Get object mutex.

Parameters

recycling

the AgsRecycling

 

Returns

the GRecMutex to lock recycling

Since: 3.1.0


ags_recycling_test_flags ()

gboolean
ags_recycling_test_flags (AgsRecycling *recycling,
                          guint flags);

Test flags to be set on recycling .

Parameters

recycling

the AgsRecycling

 

flags

the flags

 

Returns

TRUE if flags are set, else FALSE

Since: 3.0.0


ags_recycling_set_flags ()

void
ags_recycling_set_flags (AgsRecycling *recycling,
                         guint flags);

Enable a feature of recycling .

Parameters

recycling

the AgsRecycling

 

flags

see AgsRecyclingFlags

 

Since: 3.0.0


ags_recycling_unset_flags ()

void
ags_recycling_unset_flags (AgsRecycling *recycling,
                           guint flags);

Disable a feature of recycling .

Parameters

recycling

the AgsRecycling

 

flags

see AgsRecyclingFlags

 

Since: 3.0.0


ags_recycling_get_channel ()

GObject *
ags_recycling_get_channel (AgsRecycling *recycling);

Get channel.

Parameters

recycling

the AgsRecycling

 

Returns

the AgsChannel.

[transfer full]

Since: 3.1.0


ags_recycling_set_channel ()

void
ags_recycling_set_channel (AgsRecycling *recycling,
                           GObject *channel);

Set channel.

Parameters

recycling

the AgsRecycling

 

channel

the AgsChannel

 

Since: 3.1.0


ags_recycling_next ()

AgsRecycling *
ags_recycling_next (AgsRecycling *recycling);

Iterate recycling .

Parameters

recycling

the AgsRecycling

 

Returns

the next of AgsRecycling if available, otherwise NULL.

[transfer full]

Since: 3.0.0


ags_recycling_prev ()

AgsRecycling *
ags_recycling_prev (AgsRecycling *recycling);

Iterate recycling .

Parameters

recycling

the AgsRecycling

 

Returns

the prev of AgsRecycling if available, otherwise NULL.

[transfer full]

Since: 3.0.0


ags_recycling_get_output_soundcard ()

GObject *
ags_recycling_get_output_soundcard (AgsRecycling *recycling);

Get the output soundcard object of recycling .

Parameters

recycling

the AgsRecycling

 

Returns

the output soundcard.

[transfer full]

Since: 3.1.0


ags_recycling_set_output_soundcard ()

void
ags_recycling_set_output_soundcard (AgsRecycling *recycling,
                                    GObject *output_soundcard);

Set the output soundcard object of recycling .

Parameters

recycling

the AgsRecycling

 

output_soundcard

the GObject implementing AgsSoundcard

 

Since: 3.0.0


ags_recycling_get_input_soundcard ()

GObject *
ags_recycling_get_input_soundcard (AgsRecycling *recycling);

Get the input soundcard object of recycling .

Parameters

recycling

the AgsRecycling

 

Returns

the input soundcard.

[transfer full]

Since: 3.1.0


ags_recycling_set_input_soundcard ()

void
ags_recycling_set_input_soundcard (AgsRecycling *recycling,
                                   GObject *input_soundcard);

Set the input soundcard object of recycling .

Parameters

recycling

an AgsRecycling

 

input_soundcard

the GObject implementing AgsSoundcard

 

Since: 3.0.0


ags_recycling_get_samplerate ()

guint
ags_recycling_get_samplerate (AgsRecycling *recycling);

Gets samplerate.

Parameters

recycling

the AgsRecycling

 

Returns

the samplerate

Since: 3.1.0


ags_recycling_set_samplerate ()

void
ags_recycling_set_samplerate (AgsRecycling *recycling,
                              guint samplerate);

Sets samplerate.

Parameters

recycling

the AgsRecycling

 

samplerate

the samplerate

 

Since: 3.0.0


ags_recycling_get_buffer_size ()

guint
ags_recycling_get_buffer_size (AgsRecycling *recycling);

Gets buffer size.

Parameters

recycling

the AgsRecycling

 

Returns

the buffer size

Since: 3.1.0


ags_recycling_set_buffer_size ()

void
ags_recycling_set_buffer_size (AgsRecycling *recycling,
                               guint buffer_size);

Set buffer size.

Parameters

recycling

the AgsRecycling

 

buffer_size

the buffer size

 

Since: 3.0.0


ags_recycling_get_format ()

guint
ags_recycling_get_format (AgsRecycling *recycling);

Gets format.

Parameters

recycling

the AgsRecycling

 

Returns

the format

Since: 3.1.0


ags_recycling_set_format ()

void
ags_recycling_set_format (AgsRecycling *recycling,
                          guint format);

Set format.

Parameters

recycling

the AgsRecycling

 

format

the format

 

Since: 3.0.0


ags_recycling_get_audio_signal ()

GList *
ags_recycling_get_audio_signal (AgsRecycling *recycling);

Get recall id.

Parameters

recycling

the AgsRecycling

 

Returns

the GList containig AgsAudioSignal.

[element-type AgsAudio.AudioSignal][transfer full]

Since: 3.1.0


ags_recycling_set_audio_signal ()

void
ags_recycling_set_audio_signal (AgsRecycling *recycling,
                                GList *audio_signal);

Set recall id by replacing existing.

Parameters

recycling

the AgsRecycling

 

audio_signal

the GList containing AgsAudioSignal.

[element-type AgsAudio.AudioSignal][transfer full]

Since: 3.1.0


ags_recycling_add_audio_signal ()

void
ags_recycling_add_audio_signal (AgsRecycling *recycling,
                                AgsAudioSignal *audio_signal);

Add audio_signal to recycling .

Parameters

recycling

the AgsRecycling

 

audio_signal

the AgsAudioSignal to add

 

Since: 3.0.0


ags_recycling_remove_audio_signal ()

void
ags_recycling_remove_audio_signal (AgsRecycling *recycling,
                                   AgsAudioSignal *audio_signal);

Remove audio_signal of recycling .

Parameters

recycling

the AgsRecycling

 

audio_signal

the AgsAudioSignal to remove

 

Since: 3.0.0


ags_recycling_data_request ()

void
ags_recycling_data_request (AgsRecycling *recycling,
                            AgsAudioSignal *audio_signal);

Request data of audio_signal .

Parameters

recycling

the AgsRecycling

 

audio_signal

the AgsAudioSignal

 

Since: 3.0.0


ags_recycling_position ()

gint
ags_recycling_position (AgsRecycling *start_region,
                        AgsRecycling *end_region,
                        AgsRecycling *recycling);

Retrieve position of recycling.

Parameters

start_region

boundary start

 

end_region

boundary end

 

recycling

matching recycling

 

Returns

position within boundary.

Since: 3.0.0


ags_recycling_find_next_channel ()

AgsRecycling *
ags_recycling_find_next_channel (AgsRecycling *start_region,
                                 AgsRecycling *end_region,
                                 GObject *prev_channel);

Retrieve next recycling with different channel.

Parameters

start_region

boundary start

 

end_region

boundary end

 

prev_channel

previous channel

 

Returns

Matching recycling.

[transfer full]

Since: 3.0.0


ags_recycling_is_active ()

gboolean
ags_recycling_is_active (AgsRecycling *start_region,
                         AgsRecycling *end_region,
                         GObject *recall_id);

Check if is active.

Parameters

start_region

boundary start

 

end_region

boundary end

 

recall_id

the AgsRecallID

 

Returns

TRUE if related audio signal to recall id is available, otherwise FALSE

Since: 3.0.0


ags_recycling_create_audio_signal_with_defaults ()

void
ags_recycling_create_audio_signal_with_defaults
                               (AgsRecycling *recycling,
                                AgsAudioSignal *audio_signal,
                                gdouble delay,
                                guint attack);

Create audio signal with defaults.

Parameters

recycling

the AgsRecycling

 

audio_signal

the AgsAudioSignal to apply defaults

 

delay

the delay

 

attack

the attack

 

Since: 3.0.0


ags_recycling_create_audio_signal_with_frame_count ()

void
ags_recycling_create_audio_signal_with_frame_count
                               (AgsRecycling *recycling,
                                AgsAudioSignal *audio_signal,
                                guint frame_count,
                                gdouble delay,
                                guint attack);

Create audio signal with frame count.

Parameters

recycling

the AgsRecycling

 

audio_signal

the AgsAudioSignal to apply defaults

 

frame_count

the audio data size

 

delay

the delay

 

attack

the attack

 

Since: 3.0.0


ags_recycling_new ()

AgsRecycling *
ags_recycling_new (GObject *output_soundcard);

Creates a AgsRecycling, with defaults of soundcard .

Parameters

output_soundcard

the GObject implementing AgsSoundcard

 

Returns

a new AgsRecycling

Since: 3.0.0


AGS_IS_RECYCLING()

#define AGS_IS_RECYCLING(obj)             (G_TYPE_CHECK_INSTANCE_TYPE ((obj), AGS_TYPE_RECYCLING))

AGS_IS_RECYCLING_CLASS()

#define AGS_IS_RECYCLING_CLASS(class)     (G_TYPE_CHECK_CLASS_TYPE ((class), AGS_TYPE_RECYCLING))

AGS_RECYCLING()

#define AGS_RECYCLING(obj)                (G_TYPE_CHECK_INSTANCE_CAST((obj), AGS_TYPE_RECYCLING, AgsRecycling))

AGS_RECYCLING_CLASS()

#define AGS_RECYCLING_CLASS(class)        (G_TYPE_CHECK_CLASS_CAST((class), AGS_TYPE_RECYCLING, AgsRecyclingClass))

AGS_RECYCLING_GET_CLASS()

#define AGS_RECYCLING_GET_CLASS(obj)      (G_TYPE_INSTANCE_GET_CLASS ((obj), AGS_TYPE_RECYCLING, AgsRecyclingClass))

ags_recycling_get_type ()

GType
ags_recycling_get_type (void);

Types and Values

enum AgsRecyclingFlags

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

Members

AGS_RECYCLING_ADDED_TO_REGISTRY

the recycling was added to registry, see AgsConnectable::add_to_registry()

 

AGS_RECYCLING_CONNECTED

indicates the port was connected by calling AgsConnectable::connect()

 

AGS_RECYCLING_MUTED

recycling is muted

 

AGS_TYPE_RECYCLING

#define AGS_TYPE_RECYCLING                (ags_recycling_get_type())

struct AgsRecycling

struct AgsRecycling;

struct AgsRecyclingClass

struct AgsRecyclingClass {
  GObjectClass gobject;

  void (*add_audio_signal)(AgsRecycling *recycling,
			   AgsAudioSignal *audio_signal);
  void (*remove_audio_signal)(AgsRecycling *recycling,
			      AgsAudioSignal *audio_signal);

  void (*data_request)(AgsRecycling *recycling,
		       AgsAudioSignal *audio_signal);
};

Property Details

The “audio-signal” property

  “audio-signal”             gpointer

The containing AgsAudioSignal.

[transfer full]

Owner: AgsRecycling

Flags: Read / Write

Since: 3.0.0


The “buffer-size” property

  “buffer-size”              guint

The buffer size.

Owner: AgsRecycling

Flags: Read / Write

Default value: 0

Since: 3.0.0


The “channel” property

  “channel”                  AgsChannel *

The assigned AgsChannel.

Owner: AgsRecycling

Flags: Read / Write

Since: 3.0.0


The “format” property

  “format”                   guint

The format.

Owner: AgsRecycling

Flags: Read / Write

Default value: 0

Since: 3.0.0


The “input-soundcard” property

  “input-soundcard”          GObject *

The assigned input soundcard.

Owner: AgsRecycling

Flags: Read / Write

Since: 3.0.0


The “input-soundcard-channel” property

  “input-soundcard-channel”  int

The input soundcard channel.

Owner: AgsRecycling

Flags: Read / Write

Allowed values: >= -1

Default value: 0

Since: 3.0.0


The “next” property

  “next”                     AgsRecycling *

The assigned next AgsRecycling.

Owner: AgsRecycling

Flags: Read / Write

Since: 3.0.0


The “output-soundcard” property

  “output-soundcard”         GObject *

The assigned output soundcard acting as default sink.

Owner: AgsRecycling

Flags: Read / Write

Since: 3.0.0


The “output-soundcard-channel” property

  “output-soundcard-channel” int

The output soundcard channel.

Owner: AgsRecycling

Flags: Read / Write

Allowed values: >= -1

Default value: 0

Since: 3.0.0


The “parent” property

  “parent”                   AgsRecycling *

The assigned parent AgsRecycling.

Owner: AgsRecycling

Flags: Read / Write

Since: 3.0.0


The “prev” property

  “prev”                     AgsRecycling *

The assigned prev AgsRecycling.

Owner: AgsRecycling

Flags: Read / Write

Since: 3.0.0


The “samplerate” property

  “samplerate”               guint

The samplerate.

Owner: AgsRecycling

Flags: Read / Write

Default value: 0

Since: 3.0.0

Signal Details

The “add-audio-signal” signal

void
user_function (AgsRecycling *recycling,
               GObject      *audio_signal,
               gpointer      user_data)

The ::add-audio-signal signal is emited as adding AgsAudioSignal.

Parameters

recycling

an AgsRecycling

 

audio_signal

the AgsAudioSignal to add

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last

Since: 3.0.0


The “data-request” signal

void
user_function (AgsRecycling *recycling,
               GObject      *audio_signal,
               gpointer      user_data)

The ::data-request signal is emited as requesting data for audio_signal .

Parameters

recycling

an AgsRecycling

 

audio_signal

the AgsAudioSignal to request

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last

Since: 3.0.0


The “remove-audio-signal” signal

void
user_function (AgsRecycling *recycling,
               GObject      *audio_signal,
               gpointer      user_data)

The ::remove-audio-signal signal is emited as removing AgsAudioSignal.

Parameters

recycling

an AgsRecycling

 

audio_signal

the AgsAudioSignal to remove

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last

Since: 3.0.0