AgsConnectable

AgsConnectable — unique access to objects

Functions

Types and Values

Object Hierarchy

    GInterface
    ╰── AgsConnectable

Known Implementations

AgsConnectable is implemented by AgsApplicationContext, AgsAutosaveThread, AgsConditionManager, AgsConfig, AgsDestroyWorker, AgsFrontController, AgsGenericMainLoop, AgsHistory, AgsMutexManager, AgsPollFd, AgsPollingThread, AgsRegistry, AgsRemoteTask, AgsRemoteTaskThread, AgsReturnableThread, AgsServer, AgsServerApplicationContext, AgsServerStatus, AgsSingleThread, AgsTask, AgsTaskCompletion, AgsTaskThread, AgsThread, AgsThreadApplicationContext, AgsThreadPool, AgsThreadXmlSerializationFactory, AgsTimestampThread, AgsWorkerThread and AgsXmlSerializationFactory.

Includes

#include <ags/object/ags_connectable.h>

Description

The AgsConnectable interface gives you a unique access to all objects and is responsible to set up signal handlers.

Functions

ags_connectable_add_to_registry ()

void
ags_connectable_add_to_registry (AgsConnectable *connectable);

Add connectable to registry.

Parameters

connectable

the AgsConnectable

 

Since: 1.0.0


ags_connectable_remove_from_registry ()

void
ags_connectable_remove_from_registry (AgsConnectable *connectable);

Remove connectable from registry.

Parameters

connectable

the AgsConnectable

 

Since: 1.0.0


ags_connectable_update ()

xmlNode *
ags_connectable_update (AgsConnectable *connectable);

Disconnect the connectable.

Parameters

connectable

the AgsConnectable

 

Returns

the xmlNode describing howto update

Since: 1.0.0


ags_connectable_is_ready ()

gboolean
ags_connectable_is_ready (AgsConnectable *connectable);

Connect the connectable.

Parameters

connectable

the AgsConnectable

 

Returns

TRUE if is added to registry, otherwise FALSE.

Since: 1.0.0


ags_connectable_is_connected ()

gboolean
ags_connectable_is_connected (AgsConnectable *connectable);

Connect the connectable.

Parameters

connectable

the AgsConnectable

 

Returns

TRUE if is connected, otherwise FALSE.

Since: 1.0.0


ags_connectable_connect ()

void
ags_connectable_connect (AgsConnectable *connectable);

Connect the connectable.

Parameters

connectable

the AgsConnectable

 

Since: 1.0.0


ags_connectable_disconnect ()

void
ags_connectable_disconnect (AgsConnectable *connectable);

Disconnect the connectable.

Parameters

connectable

the AgsConnectable

 

Since: 1.0.0


ags_connectable_connect_scope ()

void
ags_connectable_connect_scope (AgsConnectable *connectable,
                               GObject *connection);

Disconnect the connectable.

Parameters

connectable

the AgsConnectable

 

connection

the connection

 

Since: 1.0.0


ags_connectable_disconnect_scope ()

void
ags_connectable_disconnect_scope (AgsConnectable *connectable,
                                  GObject *connection);

Disconnect the connectable.

Parameters

connectable

the AgsConnectable

 

connection

the connection

 

Since: 1.0.0


AGS_CONNECTABLE()

#define AGS_CONNECTABLE(obj)                    (G_TYPE_CHECK_INSTANCE_CAST((obj), AGS_TYPE_CONNECTABLE, AgsConnectable))

AGS_CONNECTABLE_GET_INTERFACE()

#define AGS_CONNECTABLE_GET_INTERFACE(obj)      (G_TYPE_INSTANCE_GET_INTERFACE((obj), AGS_TYPE_CONNECTABLE, AgsConnectableInterface))

AGS_CONNECTABLE_INTERFACE()

#define AGS_CONNECTABLE_INTERFACE(vtable)       (G_TYPE_CHECK_CLASS_CAST((vtable), AGS_TYPE_CONNECTABLE, AgsConnectableInterface))

AGS_IS_CONNECTABLE()

#define AGS_IS_CONNECTABLE(obj)                 (G_TYPE_CHECK_INSTANCE_TYPE((obj), AGS_TYPE_CONNECTABLE))

AGS_IS_CONNECTABLE_INTERFACE()

#define AGS_IS_CONNECTABLE_INTERFACE(vtable)    (G_TYPE_CHECK_CLASS_TYPE((vtable), AGS_TYPE_CONNECTABLE))

ags_connectable_get_type ()

GType
ags_connectable_get_type ();

Types and Values

AGS_TYPE_CONNECTABLE

#define AGS_TYPE_CONNECTABLE                    (ags_connectable_get_type())

AgsConnectable

typedef struct _AgsConnectable AgsConnectable;

struct AgsConnectableInterface

struct AgsConnectableInterface {
  GTypeInterface ginterface;

  void (*add_to_registry)(AgsConnectable *connectable);
  void (*remove_from_registry)(AgsConnectable *connectable);

  xmlNode* (*update)(AgsConnectable *connectable);
  
  gboolean (*is_ready)(AgsConnectable *connectable);
  gboolean (*is_connected)(AgsConnectable *connectable);

  void (*connect)(AgsConnectable *connectable);
  void (*disconnect)(AgsConnectable *connectable);

  void (*connect_scope)(AgsConnectable *connectable,
			GObject *connection);
  void (*disconnect_scope)(AgsConnectable *connectable,
			   GObject *connection);
};