Class

ALSASeqUserClient

Description [src]

class ALSASeq.UserClient : GObject.Object {
  parent_instance: GObject
}

A GObject-derived object to express user client. A ALSASeqUserClient is a GObject-derived object to express user client. Any port can be added to the client as destination or source for any event.

When the call of alsaseq_user_client_open() the object maintain file descriptor till object destruction. The call of alsaseq_user_client_create_source() returns the instance of GSource. Once attached to the GSource, GMainContext / GMainLoop is available as event dispatcher. The ALSASeqUserClient::handle-event signal is emitted in the event dispatcher to notify the event. The call of alsaseq_user_client_schedule_event() schedules event with given parameters.

Ancestors

Constructors

alsaseq_user_client_new

Allocate and return an instance of ALSASeqUserClient.

Instance methods

alsaseq_user_client_create_port

Create a port into the client.

alsaseq_user_client_create_port_at

Create a port into the client with the given numeric port ID.

alsaseq_user_client_create_queue

Create a new queue owned by the client. The content of information is updated if success.

alsaseq_user_client_create_source

Allocate GSource structure to handle events from ALSA seq character device. In each iteration of GMainContext, the read(2) system call is exected to dispatch sequencer event for ALSASeqUserClient::handle-event signal, according to the result of poll(2) system call.

alsaseq_user_client_delete_port

Delete a port from the client.

alsaseq_user_client_delete_queue

Delete the queue owned by the client.

alsaseq_user_client_get_info

Set client information.

alsaseq_user_client_get_pool

Get information of memory pool in the client.

alsaseq_user_client_get_protocol_version

Get the version of sequencer protocol currently used. The version is expressed as the array with three elements; major, minor, and micro version in the order. The length of major version is 16 bit, the length of minor and micro version is 8 bit each.

alsaseq_user_client_get_queue_tempo

Get the data of tempo for the queue.

alsaseq_user_client_get_queue_timer

Get the data of timer for the queue.

alsaseq_user_client_get_queue_usage

Get usage of the queue by the client.

alsaseq_user_client_open

Open ALSA sequencer character device.

alsaseq_user_client_operate_subscription

Operate subscription between two ports pointed by the data.

alsaseq_user_client_remove_events

Remove queued events according to the filter.

alsaseq_user_client_schedule_event

Deliver the event immediately, or schedule it into memory pool of the client.

alsaseq_user_client_schedule_events

Deliver the events immediately, or schedule it into memory pool of the client.

alsaseq_user_client_set_info

Get client information.

alsaseq_user_client_set_pool

Configure memory pool in the client.

alsaseq_user_client_set_queue_tempo

Set the data of tempo to the queue.

alsaseq_user_client_set_queue_timer

Set the data of timer for the queue.

alsaseq_user_client_set_queue_usage

Start the queue to use or not.

alsaseq_user_client_update_port

Update port information.

alsaseq_user_client_update_queue

Update owned queue according to the information.

Methods inherited from GObject (43)

Please see GObject for a full list of methods.

Properties

ALSASeq.UserClient:client-id

The numeric ID of the client.

Signals

ALSASeq.UserClient::handle-event

When event occurs, this signal is emit with the instance of object which includes batch of of events.

Signals inherited from GObject (1)
GObject.Object::notify

The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.

Class structure

struct ALSASeqUserClientClass {
  GObjectClass parent_class;
  void (* handle_event) (
    ALSASeqUserClient* self,
    const ALSASeqEventCntr* ev_cntr
  );
  
}
Class members
parent_class
GObjectClass
  No description available.
handle_event
void (* handle_event) (
    ALSASeqUserClient* self,
    const ALSASeqEventCntr* ev_cntr
  )
  No description available.

Virtual methods

ALSASeq.UserClientClass.handle_event

When event occurs, this signal is emit with the instance of object which includes batch of events.