AgsRecycling

AgsRecycling — A container of audio signals

Synopsis

#include <ags/audio/ags_recycling.h>

struct              AgsRecycling;
struct              AgsRecyclingClass;
enum                AgsRecyclingFlags;
void                ags_recycling_add_audio_signal      (AgsRecycling *recycling,
                                                         AgsAudioSignal *audio_signal);
void                ags_recycling_create_audio_signal_with_defaults
                                                        (AgsRecycling *recycling,
                                                         AgsAudioSignal *audio_signal,
                                                         gdouble delay,
                                                         guint attack);
void                ags_recycling_create_audio_signal_with_frame_count
                                                        (AgsRecycling *recycling,
                                                         AgsAudioSignal *audio_signal,
                                                         guint frame_count,
                                                         gdouble delay,
                                                         guint attack);
AgsRecycling *      ags_recycling_find_next_channel     (AgsRecycling *start_region,
                                                         AgsRecycling *end_region,
                                                         GObject *prev_channel);
AgsRecycling *      ags_recycling_new                   (GObject *devout);
gint                ags_recycling_position              (AgsRecycling *start_recycling,
                                                         AgsRecycling *end_region,
                                                         AgsRecycling *recycling);
void                ags_recycling_remove_audio_signal   (AgsRecycling *recycling,
                                                         AgsAudioSignal *audio_signal);
void                ags_recycling_set_devout            (AgsRecycling *recycling,
                                                         GObject *devout);

Description

AgsRecycling forms the nested tree of AgsChannel. Ever channel having own audio signal contains therefor an AgsRecycling

Details

struct AgsRecycling

struct AgsRecycling {
  GObject object;

  guint flags;

  GObject *channel;
  GObject *devout;

  AgsRecycling *parent;

  AgsRecycling *next;
  AgsRecycling *prev;

  GList *audio_signal;
};

struct AgsRecyclingClass

struct AgsRecyclingClass {
  GObjectClass object;

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

enum AgsRecyclingFlags

typedef enum {
  AGS_RECYCLING_MUTED           =  1,
} AgsRecyclingFlags;

ags_recycling_add_audio_signal ()

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

Add AgsAudioSignal to recycling.

recycling :

an AgsRecycling

audio_signal :

the AgsAudioSignal to add

Since 0.3


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.

recycling :

an AgsRecycling

audio_signal :

the AgsAudioSignal to apply defaults

Since 0.4


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.

recycling :

an AgsRecycling

audio_signal :

the AgsAudioSignal to apply defaults

frame_count :

the audio data size

Since 0.4


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.

start_region :

boundary start

end_region :

boundary end

prev_channel :

previous channel

Returns :

Matching recycling.

Since 0.4


ags_recycling_new ()

AgsRecycling *      ags_recycling_new                   (GObject *devout);

Creates a AgsRecycling, with defaults of devout.

devout :

the AgsDevout

Returns :

a new AgsRecycling

Since 0.3


ags_recycling_position ()

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

Retrieve position of recycling.

start_region :

boundary start

end_region :

boundary end

recycling :

matching recycling

Returns :

position within boundary.

Since 0.4


ags_recycling_remove_audio_signal ()

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

Remove AgsAudioSignal of recycling.

recycling :

an AgsRecycling

audio_signal :

the AgsAudioSignal to remove

Since 0.3


ags_recycling_set_devout ()

void                ags_recycling_set_devout            (AgsRecycling *recycling,
                                                         GObject *devout);

Sets AgsDevout to recycling.

recycling :

an AgsRecycling

devout :

the AgsDevout to set

Since 0.3