BtWire

BtWire — class for a connection of two BtMachines

Functions

Properties

gpointer analyzers Read / Write
gpointer construction-error Read / Write / Construct Only
BtMachine * dst Read / Write / Construct Only
GstElement * gain Read
gulong num-params Read / Write
GstElement * pan Read
gchar * pretty-name Read
gpointer properties Read
BtSong * song Read / Write / Construct Only
BtMachine * src Read / Write / Construct Only

Types and Values

Object Hierarchy

    GObject
    ╰── GInitiallyUnowned
        ╰── GstObject
            ╰── GstElement
                ╰── GstBin
                    ╰── BtWire

Implemented Interfaces

BtWire implements GstChildProxy and BtPersistence.

Includes

#include <libbtcore/core.h>

Description

Abstracts connection between two BtMachines. After creation, the elements are connected. In contrast to directly wiring GstElements this insert needed conversion elements automatically.

Furthermore each wire has a volume and if possible panorama/balance element. Volume and panorama/balance can be sequenced like machine parameters in wire groups of the BtPattern objects on the target machine (that means that source-machines don't have the controls).

Functions

bt_wire_get_param_group ()

BtParameterGroup *
bt_wire_get_param_group (const BtWire * const self);

Get the parameter group.

Parameters

self

the machine

 

Returns

the BtParameterGroup or NULL.

[transfer none]


bt_wire_new ()

BtWire *
bt_wire_new (const BtSong *song,
             const BtMachine *src_machine,
             const BtMachine *dst_machine,
             GError **err);

Create a new instance. The new wire is automatically added to a songs setup. You don't need to call

bt_setup_add_wire(setup,wire);.

Parameters

song

the song the new instance belongs to

 

src_machine

the data source (BtSourceMachine or BtProcessorMachine)

 

dst_machine

the data sink (BtSinkMachine or BtProcessorMachine)

 

err

inform about failed instance creation

 

Returns

the new instance or NULL in case of an error


bt_wire_reconnect ()

gboolean
bt_wire_reconnect (BtWire *self);

Call this method after internal elements in a BtMachine have changed, but failed to link.

Parameters

self

the wire to re-link

 

Returns

TRUE for success and FALSE otherwise


bt_wire_can_link ()

gboolean
bt_wire_can_link (const BtMachine * const src,
                  const BtMachine * const dst);

Check if we don't have such a wire yet and if we can connect the machines. We can connect if the data flow direction is correct (sources to effects to sinks) and if the new connect is not creating cycles in the graph.

Parameters

src

the src machine

 

dst

the dst machine

 

Returns

TRUE if we can link the machines

Types and Values

BT_WIRE_MAX_NUM_PARAMS

#define BT_WIRE_MAX_NUM_PARAMS 2

Maximum number of parameters per wire.


struct BtWire

struct BtWire;

A link between two BtMachine instances.

Property Details

The “analyzers” property

  “analyzers”                gpointer

list of wire analyzers.

Flags: Read / Write


The “construction-error” property

  “construction-error”       gpointer

signal failed instance creation.

Flags: Read / Write / Construct Only


The “dst” property

  “dst”                      BtMachine *

dst machine object, the wire links to.

Flags: Read / Write / Construct Only


The “gain” property

  “gain”                     GstElement *

the gain element for the connection.

Flags: Read


The “num-params” property

  “num-params”               gulong

number of params for the wire.

Flags: Read / Write

Allowed values: <= 2


The “pan” property

  “pan”                      GstElement *

the panorama element for the connection.

Flags: Read


The “pretty-name” property

  “pretty-name”              gchar *

pretty-printed name for display purposes.

Flags: Read

Default value: NULL


The “properties” property

  “properties”               gpointer

list of wire properties.

Flags: Read


The “song” property

  “song”                     BtSong *

the song object, the wire belongs to.

Flags: Read / Write / Construct Only


The “src” property

  “src”                      BtMachine *

src machine object, the wire links to.

Flags: Read / Write / Construct Only