AgsEffectLine

AgsEffectLine — A composite widget to visualize a bunch of AgsChannel

Functions

Properties

guint buffer-size Read / Write
AgsChannel * channel Read / Write
guint format Read / Write
guint samplerate Read / Write

Signals

Types and Values

Object Hierarchy

    GObject
    ╰── GInitiallyUnowned
        ╰── GtkObject
            ╰── GtkWidget
                ╰── GtkContainer
                    ╰── GtkBox
                        ╰── GtkVBox
                            ╰── AgsEffectLine
                                ╰── AgsFFPlayerInputLine

Implemented Interfaces

AgsEffectLine implements AtkImplementorIface, GtkBuildable, GtkOrientable, AgsConnectable and AgsPlugin.

Includes

#include <ags/X/ags_effect_line.h>

Description

AgsEffectLine is a composite widget to visualize one AgsChannel. It should be packed by an AgsEffectLine.

Functions

ags_effect_line_samplerate_changed ()

void
ags_effect_line_samplerate_changed (AgsEffectLine *effect_line,
                                    guint samplerate,
                                    guint old_samplerate);

Notify about samplerate changed.

Parameters

effect_line

the AgsEffectLine

 

samplerate

the samplerate

 

old_samplerate

the old samplerate

 

Since: 2.1.35


ags_effect_line_buffer_size_changed ()

void
ags_effect_line_buffer_size_changed (AgsEffectLine *effect_line,
                                     guint buffer_size,
                                     guint old_buffer_size);

Notify about buffer_size changed.

Parameters

effect_line

the AgsEffectLine

 

buffer_size

the buffer_size

 

old_buffer_size

the old buffer_size

 

Since: 2.1.35


ags_effect_line_format_changed ()

void
ags_effect_line_format_changed (AgsEffectLine *effect_line,
                                guint format,
                                guint old_format);

Notify about format changed.

Parameters

effect_line

the AgsEffectLine

 

format

the format

 

old_format

the old format

 

Since: 2.1.35


ags_effect_line_set_channel ()

void
ags_effect_line_set_channel (AgsEffectLine *effect_line,
                             AgsChannel *channel);

Is emitted as channel gets modified.

Parameters

effect_line

the AgsEffectLine

 

channel

the AgsChannel to set

 

Since: 2.0.0


ags_effect_line_add_effect ()

GList *
ags_effect_line_add_effect (AgsEffectLine *effect_line,
                            GList *control_type_name,
                            gchar *filename,
                            gchar *effect);

Add an effect by its filename and effect specifier.

Parameters

effect_line

the AgsEffectLine to modify

 

control_type_name

the GList containing string representation of a GType

 

filename

the effect's filename

 

effect

the effect's name

 

Returns

the GList containing the AgsPort objects added

Since: 2.0.0


ags_effect_line_remove_effect ()

void
ags_effect_line_remove_effect (AgsEffectLine *effect_line,
                               guint nth);

Remove an effect by its position.

Parameters

effect_line

the AgsEffectLine to modify

 

nth

the nth effect to remove

 

Since: 2.0.0


ags_effect_line_map_recall ()

void
ags_effect_line_map_recall (AgsEffectLine *effect_line,
                            guint output_pad_start);

You may want the effect_line to add its default recall. This function may call ags_effect_line_find_port().

Parameters

effect_line

the AgsEffectLine to add its default recall.

 

output_pad_start

the start channel's index

 

Since: 2.0.0


ags_effect_line_find_port ()

GList *
ags_effect_line_find_port (AgsEffectLine *effect_line);

Lookup ports of associated recalls.

Parameters

effect_line

the AgsEffectLine

 

Returns

a GList containing all related AgsPort

Since: 2.0.0


ags_effect_line_done ()

void
ags_effect_line_done (AgsEffectLine *effect_line,
                      GObject *recall_id);

Notify about to stop playback of recall_id .

Parameters

effect_line

the AgsEffectLine

 

recall_id

the AgsRecallID

 

Since: 2.0.0


ags_effect_line_find_next_grouped ()

GList *
ags_effect_line_find_next_grouped (GList *line);

Retrieve next grouped effect_line.

Parameters

effect_line

a GList of AgsEffectLine objects

 

Returns

next matching GList containing AgsEffectLine

Since: 2.0.0


ags_effect_line_message_monitor_timeout ()

gboolean
ags_effect_line_message_monitor_timeout
                               (AgsEffectLine *effect_line);

Monitor messages.

Parameters

effect_line

the AgsEffectLine

 

Returns

TRUE if proceed with redraw, otherwise FALSE

Since: 2.0.0


ags_effect_line_indicator_queue_draw_timeout ()

gboolean
ags_effect_line_indicator_queue_draw_timeout
                               (GtkWidget *widget);

Queue draw widget

Parameters

widget

the indicator widgt

 

Returns

TRUE if proceed with redraw, otherwise FALSE

Since: 2.0.0


ags_effect_line_new ()

AgsEffectLine *
ags_effect_line_new (AgsChannel *channel);

Create a new instance of AgsEffectLine

Parameters

channel

the AgsChannel to visualize

 

Returns

the new AgsEffectLine

Since: 2.0.0


AGS_EFFECT_LINE()

#define AGS_EFFECT_LINE(obj)                (G_TYPE_CHECK_INSTANCE_CAST((obj), AGS_TYPE_EFFECT_LINE, AgsEffectLine))

AGS_EFFECT_LINE_CLASS()

#define AGS_EFFECT_LINE_CLASS(class)        (G_TYPE_CHECK_CLASS_CAST((class), AGS_TYPE_EFFECT_LINE, AgsEffectLineClass))

AGS_EFFECT_LINE_GET_CLASS()

#define AGS_EFFECT_LINE_GET_CLASS(obj)      (G_TYPE_INSTANCE_GET_CLASS((obj), AGS_TYPE_EFFECT_LINE, AgsEffectLineClass))

AGS_IS_EFFECT_LINE()

#define AGS_IS_EFFECT_LINE(obj)             (G_TYPE_CHECK_INSTANCE_TYPE((obj), AGS_TYPE_EFFECT_LINE))

ags_effect_line_get_type ()

GType
ags_effect_line_get_type (void);

Types and Values

AGS_EFFECT_LINE_DEFAULT_VERSION

#define AGS_EFFECT_LINE_DEFAULT_VERSION "0.7.8"

AGS_EFFECT_LINE_DEFAULT_BUILD_ID

#define AGS_EFFECT_LINE_DEFAULT_BUILD_ID "CEST 01-03-2016 00:23"

AGS_EFFECT_LINE_COLUMNS_COUNT

#define AGS_EFFECT_LINE_COLUMNS_COUNT (2)

AGS_EFFECT_LINE_SEPARATOR_FILENAME

#define AGS_EFFECT_LINE_SEPARATOR_FILENAME "ags-effect-line-separator-filename"

AGS_EFFECT_LINE_SEPARATOR_EFFECT

#define AGS_EFFECT_LINE_SEPARATOR_EFFECT "ags-effect-line-separator-effect"

enum AgsEffectLineFlags

Members

AGS_EFFECT_LINE_CONNECTED

   

AGS_EFFECT_LINE_MAPPED_RECALL

   

AGS_EFFECT_LINE_PREMAPPED_RECALL

   

AGS_TYPE_EFFECT_LINE

#define AGS_TYPE_EFFECT_LINE                (ags_effect_line_get_type())

struct AgsEffectLine

struct AgsEffectLine;

struct AgsEffectLineClass

struct AgsEffectLineClass {
  GtkVBoxClass vbox;

  void (*samplerate_changed)(AgsEffectLine *effect_line,
			     guint samplerate, guint old_samplerate);
  void (*buffer_size_changed)(AgsEffectLine *effect_line,
			      guint buffer_size, guint old_buffer_size);
  void (*format_changed)(AgsEffectLine *effect_line,
			 guint format, guint old_format);
  
  void (*set_channel)(AgsEffectLine *effect_line, AgsChannel *channel);

  GList* (*add_effect)(AgsEffectLine *effect_line,
		       GList *control_type_name,
		       gchar *filename,
		       gchar *effect);
  void (*remove_effect)(AgsEffectLine *effect_line,
			guint nth);

  void (*map_recall)(AgsEffectLine *effect_line,
		     guint output_pad_start);
  GList* (*find_port)(AgsEffectLine *effect_line);

  void (*done)(AgsEffectLine *effect_line,
	       GObject *recall_id);
};

Property Details

The “buffer-size” property

  “buffer-size”              guint

The buffer length.

Flags: Read / Write

Default value: 1024

Since: 2.1.35


The “channel” property

  “channel”                  AgsChannel *

The start of a bunch of AgsChannel to visualize.

Flags: Read / Write

Since: 2.0.0


The “format” property

  “format”                   guint

The format.

Flags: Read / Write

Default value: 16

Since: 2.1.35


The “samplerate” property

  “samplerate”               guint

The samplerate.

Flags: Read / Write

Default value: 48000

Since: 2.1.35

Signal Details

The “add-effect” signal

gpointer
user_function (AgsEffectLine *effect_line,
               gpointer       control_type_name,
               gchar         *filename,
               gchar         *effect,
               gpointer       user_data)

The ::add-effect signal notifies about added effect.

Parameters

effect_line

the AgsEffectLine to modify

 

control_type_name

the string representation of a GType

 

filename

the effect's filename

 

effect

the effect's name

 

user_data

user data set when the signal handler was connected.

 

Returns

the GList containing the AgsPort objects added

Flags: Run Last

Since: 2.0.0


The “buffer-size-changed” signal

void
user_function (AgsEffectLine *effect_line,
               guint          buffer_size,
               guint          old_buffer_size,
               gpointer       user_data)

The ::buffer-size-changed signal notifies about changed buffer size.

Parameters

effect_line

the AgsEffectLine

 

buffer_size

the buffer size

 

old_buffer_size

the old buffer size

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last

Since: 2.1.35


The “done” signal

void
user_function (AgsEffectLine *effect_line,
               GObject       *recall_id,
               gpointer       user_data)

The ::done signal gets emited as audio stops playback.

Parameters

effect_line

the AgsEffectLine

 

recall_id

the AgsRecallID

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last

Since: 2.0.0


The “find-port” signal

gpointer
user_function (AgsEffectLine *effect_line,
               gpointer       user_data)

The ::find-port as recall should be mapped

Parameters

effect_line

the AgsEffectLine to resize

 

user_data

user data set when the signal handler was connected.

 

Returns

an GList containing all related AgsPort

Flags: Run Last

Since: 2.0.0


The “format-changed” signal

void
user_function (AgsEffectLine *effect_line,
               guint          format,
               guint          old_format,
               gpointer       user_data)

The ::format-changed signal notifies about changed format.

Parameters

effect_line

the AgsEffectLine

 

format

the format

 

old_format

the old format

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last

Since: 2.1.35


The “map-recall” signal

void
user_function (AgsEffectLine *effect_line,
               guint          output_pad_start,
               gpointer       user_data)

The ::map-recall should be used to add the effect_line's default recall. This function may call ags_effect_line_find_port().

Parameters

effect_line

the AgsEffectLine

 

output_pad_start

the channel's start pad

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last

Since: 2.0.0


The “remove-effect” signal

void
user_function (AgsEffectLine *effect_line,
               guint          nth,
               gpointer       user_data)

The ::remove-effect signal notifies about removed effect.

Parameters

effect_line

the AgsEffectLine to modify

 

nth

the nth effect

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last

Since: 2.0.0


The “samplerate-changed” signal

void
user_function (AgsEffectLine *effect_line,
               guint          samplerate,
               guint          old_samplerate,
               gpointer       user_data)

The ::samplerate-changed signal notifies about changed samplerate.

Parameters

effect_line

the AgsEffectLine

 

samplerate

the samplerate

 

old_samplerate

the old samplerate

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last

Since: 2.1.35


The “set-channel” signal

void
user_function (AgsEffectLine *effect_line,
               GObject       *channel,
               gpointer       user_data)

The ::set-channel signal notifies about changed channel.

Parameters

effect_line

the AgsEffectLine to modify

 

channel

the AgsChannel to set

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last

Since: 2.0.0