AgsPlugin

AgsPlugin — interfacing plugins

Synopsis

#include <ags/object/ags_plugin.h>

typedef             AgsPlugin;
struct              AgsPluginInterface;
gchar *             ags_plugin_get_build_id             (AgsPlugin *plugin);
gchar *             ags_plugin_get_name                 (AgsPlugin *plugin);
GList *             ags_plugin_get_ports                (AgsPlugin *plugin);
gchar *             ags_plugin_get_version              (AgsPlugin *plugin);
gchar *             ags_plugin_get_xml_type             (AgsPlugin *plugin);
void                ags_plugin_read                     (AgsFile *file,
                                                         xmlNode *node,
                                                         AgsPlugin *plugin);
void                ags_plugin_set_build_id             (AgsPlugin *plugin,
                                                         gchar *build_id);
void                ags_plugin_set_name                 (AgsPlugin *plugin,
                                                         gchar *name);
void                ags_plugin_set_ports                (AgsPlugin *plugin,
                                                         GList *ports);
void                ags_plugin_set_version              (AgsPlugin *plugin,
                                                         gchar *version);
void                ags_plugin_set_xml_type             (AgsPlugin *plugin,
                                                         gchar *xml_type);
xmlNode *           ags_plugin_write                    (AgsFile *file,
                                                         xmlNode *parent,
                                                         AgsPlugin *plugin);

Description

The AgsPlugin interface gives you a unique access to recalls, line members, lines, pads or machines ...

Details

AgsPlugin

typedef void AgsPlugin;

struct AgsPluginInterface

struct AgsPluginInterface {
  GTypeInterface interface;
  
  gchar* (*get_name)(AgsPlugin *plugin);
  void (*set_name)(AgsPlugin *plugin, gchar *name);

  gchar* (*get_version)(AgsPlugin *plugin);
  void (*set_version)(AgsPlugin *plugin, gchar *version);

  gchar* (*get_build_id)(AgsPlugin *plugin);
  void (*set_build_id)(AgsPlugin *plugin, gchar *build_id);

  gchar* (*get_xml_type)(AgsPlugin *plugin);
  void (*set_xml_type)(AgsPlugin *plugin, gchar *xml_type);  

  GList* (*get_ports)(AgsPlugin *plugin);
  void (*set_ports)(AgsPlugin *plugin, GList *ports);

  void (*read)(AgsFile *file,
	       xmlNode *node,
	       AgsPlugin *plugin);
  xmlNode* (*write)(AgsFile *file,
		    xmlNode *parent,
		    AgsPlugin *plugin);
};

ags_plugin_get_build_id ()

gchar *             ags_plugin_get_build_id             (AgsPlugin *plugin);

Retrieve the build id of the plugin.

plugin :

an AgsPlugin

Returns :

the plugins build id

ags_plugin_get_name ()

gchar *             ags_plugin_get_name                 (AgsPlugin *plugin);

Retrieve the name of the plugin.

plugin :

an AgsPlugin

Returns :

the plugins name

ags_plugin_get_ports ()

GList *             ags_plugin_get_ports                (AgsPlugin *plugin);

Retrieve the ports of the plugin.

plugin :

an AgsPlugin

Returns :

the plugins ports

ags_plugin_get_version ()

gchar *             ags_plugin_get_version              (AgsPlugin *plugin);

Retrieve the version of the plugin.

plugin :

an AgsPlugin

Returns :

the plugins version

ags_plugin_get_xml_type ()

gchar *             ags_plugin_get_xml_type             (AgsPlugin *plugin);

Retrieve the xml type of the plugin.

plugin :

an AgsPlugin

Returns :

the plugins xml type

ags_plugin_read ()

void                ags_plugin_read                     (AgsFile *file,
                                                         xmlNode *node,
                                                         AgsPlugin *plugin);

Read of file.

file :

the AgsFile

node :

the node

plugin :

the AgsPlugin

ags_plugin_set_build_id ()

void                ags_plugin_set_build_id             (AgsPlugin *plugin,
                                                         gchar *build_id);

Set the build id of the plugin.

plugin :

an AgsPlugin

build_id :

the build id of plugin

ags_plugin_set_name ()

void                ags_plugin_set_name                 (AgsPlugin *plugin,
                                                         gchar *name);

Set the name of the plugin.

plugin :

an AgsPlugin

name :

the name of plugin

ags_plugin_set_ports ()

void                ags_plugin_set_ports                (AgsPlugin *plugin,
                                                         GList *ports);

Set the build id of the plugin.

plugin :

an AgsPlugin

ports :

the build id of plugin

ags_plugin_set_version ()

void                ags_plugin_set_version              (AgsPlugin *plugin,
                                                         gchar *version);

Set the version of the plugin.

plugin :

an AgsPlugin

version :

the version of plugin

ags_plugin_set_xml_type ()

void                ags_plugin_set_xml_type             (AgsPlugin *plugin,
                                                         gchar *xml_type);

Set the build id of the plugin.

plugin :

an AgsPlugin

xml_type :

the build id of plugin

ags_plugin_write ()

xmlNode *           ags_plugin_write                    (AgsFile *file,
                                                         xmlNode *parent,
                                                         AgsPlugin *plugin);

Write to file.

file :

the AgsFile

parent :

the parent node

plugin :

the AgsPlugin

Returns :

the new node you created