AgsMessageQueue

AgsMessageQueue — message queue

Functions

Properties

gchar * namespace Read / Write

Types and Values

Object Hierarchy

    GObject
    ╰── AgsMessageQueue

Includes

#include <ags/thread/ags_message_queue.h>

Description

The AgsMessageQueue acts as messages passing system.

Functions

AGS_MESSAGE_QUEUE_GET_OBJ_MUTEX()

#define AGS_MESSAGE_QUEUE_GET_OBJ_MUTEX(obj) (((AgsMessageQueue *) obj)->obj_mutex)

AGS_MESSAGE_ENVELOPE()

#define AGS_MESSAGE_ENVELOPE(ptr) ((AgsMessageEnvelope *)(ptr))

ags_message_queue_get_class_mutex ()

pthread_mutex_t *
ags_message_queue_get_class_mutex ();

Use this function's returned mutex to access mutex fields.

Returns

the class mutex

Since: 2.0.0


ags_message_envelope_alloc ()

AgsMessageEnvelope *
ags_message_envelope_alloc (GObject *sender,
                            GObject *recipient,
                            xmlDoc *doc);

Allocate AgsMessageEnvelope.

Parameters

sender

the sender as GObject

 

recipient

the recipient as GObject

 

doc

the message document

 

Since: 2.0.0


ags_message_envelope_free ()

void
ags_message_envelope_free (AgsMessageEnvelope *message);

Free message .

Parameters

message

the AgsMessageEnvelope

 

Since: 2.0.0


ags_message_queue_add_message ()

void
ags_message_queue_add_message (AgsMessageQueue *message_queue,
                               gpointer message);

Add message to message_queue .

Parameters

message_queue

the AgsMessageQueue

 

message

the AgsMessageEnvelope

 

Since: 2.0.0


ags_message_queue_remove_message ()

void
ags_message_queue_remove_message (AgsMessageQueue *message_queue,
                                  gpointer message);

Remove message from message_queue .

Parameters

message_queue

the AgsMessageQueue

 

message

the AgsMessageEnvelope

 

Since: 2.0.0


ags_message_queue_find_sender ()

GList *
ags_message_queue_find_sender (AgsMessageQueue *message_queue,
                               GObject *sender);

Find sender in message_queue 's messages.

Parameters

message_queue

the AgsMessageQueue

 

sender

the sender as GObject

 

Returns

all matching AgsMessageEnvelope as GList

Since: 2.0.0


ags_message_queue_find_recipient ()

GList *
ags_message_queue_find_recipient (AgsMessageQueue *message_queue,
                                  GObject *recipient);

Find recipient in message_queue 's messages.

Parameters

message_queue

the AgsMessageQueue

 

recipient

the recipient as GObject

 

Returns

all matching AgsMessageEnvelope as GList

Since: 2.0.0


ags_message_queue_query_message ()

GList *
ags_message_queue_query_message (AgsMessageQueue *message_queue,
                                 gchar *xpath);

Query xpath in message_queue 's messages.

Parameters

message_queue

the AgsMessageQueue

 

recipient

the recipient as GObject

 

Returns

all matching AgsMessageEnvelope as GList

Since: 2.0.0


ags_message_queue_new ()

AgsMessageQueue *
ags_message_queue_new (gchar *namespace);

Create a new instance of AgsMessageQueue.

Parameters

namespace

the namespace

 

Returns

the new AgsMessageQueue

Since: 2.0.0


AGS_IS_MESSAGE_QUEUE()

#define AGS_IS_MESSAGE_QUEUE(obj)             (G_TYPE_CHECK_INSTANCE_TYPE ((obj), AGS_TYPE_MESSAGE_QUEUE))

AGS_MESSAGE_QUEUE()

#define AGS_MESSAGE_QUEUE(obj)                (G_TYPE_CHECK_INSTANCE_CAST((obj), AGS_TYPE_MESSAGE_QUEUE, AgsMessageQueue))

AGS_MESSAGE_QUEUE_CLASS()

#define AGS_MESSAGE_QUEUE_CLASS(class)        (G_TYPE_CHECK_CLASS_CAST(class, AGS_TYPE_MESSAGE_QUEUE, AgsMessageQueue))

AGS_MESSAGE_QUEUE_GET_CLASS()

#define AGS_MESSAGE_QUEUE_GET_CLASS(obj)      (G_TYPE_INSTANCE_GET_CLASS(obj, AGS_TYPE_MESSAGE_QUEUE, AgsMessageQueueClass))

ags_message_queue_get_type ()

GType
ags_message_queue_get_type ();

Types and Values

struct AgsMessageEnvelope

struct AgsMessageEnvelope {
  GObject *sender;
  GObject *recipient;

  xmlDoc *doc;
  
  guint n_params;
  gchar **parameter_name;
  GValue *value;
};

AGS_TYPE_MESSAGE_QUEUE

#define AGS_TYPE_MESSAGE_QUEUE                (ags_message_queue_get_type())

struct AgsMessageQueue

struct AgsMessageQueue;

struct AgsMessageQueueClass

struct AgsMessageQueueClass {
  GObjectClass gobject; 
};

Property Details

The “namespace” property

  “namespace”                gchar *

The assigned namespace.

Flags: Read / Write

Default value: NULL

Since: 2.0.0