AgsMachine

AgsMachine — visualize audio object.

Synopsis

#include <ags/X/ags_machine.h>

#define             AGS_MACHINE_DEFAULT_BUILD_ID
#define             AGS_MACHINE_DEFAULT_VERSION
struct              AgsMachine;
struct              AgsMachineClass;
enum                AgsMachineFileInputFlags;
enum                AgsMachineFlags;
void                ags_machine_add_default_recalls     ();
GtkFileChooserDialog * ags_machine_file_chooser_dialog_new
                                                        (AgsMachine *machine);
AgsMachine *        ags_machine_find_by_name            (GList *list,
                                                         char *name);
GList *             ags_machine_find_port               (AgsMachine *machine);
GtkListStore *      ags_machine_get_possible_links      (AgsMachine *machine);
void                ags_machine_map_recall              (AgsMachine *machine);
AgsMachine *        ags_machine_new                     (GObject *devout);
void                ags_machine_open_files              (AgsMachine *machine,
                                                         GSList *filenames,
                                                         gboolean overwrite_channels,
                                                         gboolean create_channels);
void                ags_machine_set_audio_channels      (AgsAudio *audio,
                                                         guint audio_channels,
                                                         guint audio_channels_old,
                                                         AgsMachine *machine);
void                ags_machine_set_pads                (AgsAudio *audio,
                                                         GType type,
                                                         guint pads,
                                                         guint pads_old,
                                                         AgsMachine *machine);
void                ags_machine_set_run                 (AgsMachine *machine,
                                                         gboolean run);

Description

AgsMachine is a composite widget to act as base class to visualize AgsAudio.

Details

AGS_MACHINE_DEFAULT_BUILD_ID

#define AGS_MACHINE_DEFAULT_BUILD_ID "CEST 02-10-2014 19:36\0"

AGS_MACHINE_DEFAULT_VERSION

#define AGS_MACHINE_DEFAULT_VERSION "0.4.2\0"

struct AgsMachine

struct AgsMachine {
  GtkHandleBox handle_box;

  GObject *ags_main;

  char *name;

  gchar *version;
  gchar *build_id;

  guint flags;
  guint file_input_flags;

  AgsAudio *audio;

  GtkToggleButton *play;

  GType output_pad_type;
  GType output_line_type;
  GtkContainer *output;

  GType input_pad_type;
  GType input_line_type;
  GtkContainer *input;

  GList *port;

  GtkMenu *popup;
  GtkDialog *properties;
  GtkDialog *rename;
};

struct AgsMachineClass

struct AgsMachineClass {
  GtkHandleBoxClass handle_box;

  void (*map_recall)(AgsMachine *machine);
  GList* (*find_port)(AgsMachine *machine);
};

enum AgsMachineFileInputFlags

typedef enum {
  AGS_MACHINE_ACCEPT_WAV          = 1,
  AGS_MACHINE_ACCEPT_OGG          = 1 <<  1,
  AGS_MACHINE_ACCEPT_SOUNDFONT2   = 1 <<  2,
} AgsMachineFileInputFlags;

enum AgsMachineFlags

typedef enum {
  AGS_MACHINE_SOLO              = 1,
  AGS_MACHINE_IS_EFFECT         = 1 <<  1,
  AGS_MACHINE_IS_SEQUENCER      = 1 <<  2,
  AGS_MACHINE_IS_SYNTHESIZER    = 1 <<  3,
  AGS_MACHINE_TAKES_FILE_INPUT  = 1 <<  4,
  AGS_MACHINE_MAPPED_RECALL     = 1 <<  5,
  AGS_MACHINE_PREMAPPED_RECALL  = 1 <<  6,
  AGS_MACHINE_BLOCK_PLAY        = 1 <<  7,
  AGS_MACHINE_BLOCK_STOP        = 1 <<  8,
  AGS_MACHINE_CONNECTED         = 1 <<  9,
} AgsMachineFlags;

ags_machine_add_default_recalls ()

void                ags_machine_add_default_recalls     ();

ags_machine_file_chooser_dialog_new ()

GtkFileChooserDialog * ags_machine_file_chooser_dialog_new
                                                        (AgsMachine *machine);

Creates a new machine file chooser dialog in order to open audio files.

machine :

the AgsMachine

Since 0.4


ags_machine_find_by_name ()

AgsMachine *        ags_machine_find_by_name            (GList *list,
                                                         char *name);

Find the specified by name machine.

list :

a GList of AgsMachine

name :

the name of machine

Since 0.3


ags_machine_find_port ()

GList *             ags_machine_find_port               (AgsMachine *machine);

Lookup ports of associated recalls.

machine :

the AgsMachine Returns: an GList containing all related AgsPort

Since 0.4


ags_machine_get_possible_links ()

GtkListStore *      ags_machine_get_possible_links      (AgsMachine *machine);

Find links suitable for machine.

machine :

the AgsMachine

Returns :

a GtkListStore containing one column with a string representing machines by its type and name.

Since 0.4


ags_machine_map_recall ()

void                ags_machine_map_recall              (AgsMachine *machine);

You may want the machine to add its default recall.

machine :

the AgsMachine to add its default recall.

ags_machine_new ()

AgsMachine *        ags_machine_new                     (GObject *devout);

Creates an AgsMachine

devout :

the assigned devout.

Returns :

a new AgsMachine

Since 0.3


ags_machine_open_files ()

void                ags_machine_open_files              (AgsMachine *machine,
                                                         GSList *filenames,
                                                         gboolean overwrite_channels,
                                                         gboolean create_channels);

Opens audio files and modifies or creates new channels if wished.

machine :

the AgsMachine

filenames :

the filenames

overwrite_channels :

reset channels

create_channels :

instantiate new channels

Since 0.4


ags_machine_set_audio_channels ()

void                ags_machine_set_audio_channels      (AgsAudio *audio,
                                                         guint audio_channels,
                                                         guint audio_channels_old,
                                                         AgsMachine *machine);

ags_machine_set_pads ()

void                ags_machine_set_pads                (AgsAudio *audio,
                                                         GType type,
                                                         guint pads,
                                                         guint pads_old,
                                                         AgsMachine *machine);

ags_machine_set_run ()

void                ags_machine_set_run                 (AgsMachine *machine,
                                                         gboolean run);

Start/stop playback of machine.

machine :

the AgsMachine

run :

if TRUE playback is started, otherwise stopped

Since 0.4