drumstick  0.5.0
PortEvent Class Reference

ALSA Event representing a change on some ALSA sequencer port on the system. More...

#include <alsaevent.h>

Inheritance diagram for PortEvent:

List of all members.

Public Member Functions

 PortEvent ()
 Default constructor.
 PortEvent (snd_seq_event_t *event)
 Constructor from an ALSA event record.
int getPort () const
 Gets the port number.
void setSequencerType (const snd_seq_event_type_t eventType)
 Sets the event's ALSA sequencer type.
snd_seq_event_type_t getSequencerType () const
 Gets the sequencer event type.
void setDestination (const unsigned char client, const unsigned char port)
 Sets the client:port destination of the event.
void setSource (const unsigned char port)
 Sets the event's source port ID.
unsigned char getSourceClient () const
 Gets the source client id.
unsigned char getSourcePort () const
 Gets the source port id.
snd_seq_tick_time_t getTick () const
 Gets the tick time of the event.
unsigned int getRealTimeSecs () const
 Gets the seconds of the event's real time.
unsigned int getRealTimeNanos () const
 Gets the nanoseconds of the event's real time.
void setSubscribers ()
 Sets the event's destination to be all the subscribers of the source port.
void setBroadcast ()
 Sets the event's destination to be all queues/clients/ports/channels.
void setDirect ()
 Sets the event to be immediately delivered, not queued/scheduled.
void scheduleTick (const int queue, const int tick, const bool relative)
 Sets the event to be scheduled in musical time (ticks) units.
void scheduleReal (const int queue, const ulong secs, const ulong nanos, const bool relative)
 Sets the event to be scheduled in real (clock) time units.
void setPriority (const bool high)
 Sets the priority of the event.
unsigned char getTag () const
 Gets the tag of the event.
void setTag (const unsigned char aTag)
 Sets the event's tag.
unsigned int getRaw32 (const unsigned int n) const
 Gets an event's raw 32 bits parameter.
void setRaw32 (const unsigned int n, const unsigned int value)
 Sets an event's raw 32 bits parameter.
unsigned char getRaw8 (const unsigned int n) const
 Gets an event's raw 8 bits parameter.
void setRaw8 (const unsigned int n, const unsigned char value)
 Sets an event's raw 8 bits parameter.
snd_seq_event_t * getHandle ()
 Gets the handle of the event.
int getEncodedLength ()
 Gets the encoded length of the event record.
 CLONE_EVENT_DECLARATION (SequencerEvent)
 Clone this object returning a pointer to the new object.

Static Public Member Functions

static bool isSubscription (const SequencerEvent *event)
 Checks if the event's type is a subscription.
static bool isPort (const SequencerEvent *event)
 Checks if the event's type is of type port.
static bool isClient (const SequencerEvent *event)
 Checks if the event's type is of type client.
static bool isConnectionChange (const SequencerEvent *event)
 Checks if the event's type is of type connection change.
static bool isChannel (const SequencerEvent *event)
 Checks if the event's type is a Channel Voice message.

Protected Member Functions

void free () __attribute__((deprecated))
 Releases the event record.

Protected Attributes

snd_seq_event_t m_event
 ALSA sequencer event record.

Detailed Description

ALSA Event representing a change on some ALSA sequencer port on the system.

Definition at line 569 of file alsaevent.h.


Member Function Documentation

void free ( ) [protected, inherited]

Releases the event record.

Deprecated:

Definition at line 372 of file alsaevent.cpp.

References SequencerEvent::m_event.

int getEncodedLength ( ) [inherited]

Gets the encoded length of the event record.

Returns:
The encoded length.

Definition at line 381 of file alsaevent.cpp.

References SequencerEvent::m_event.

snd_seq_event_t* getHandle ( ) [inline, inherited]
unsigned int getRaw32 ( const unsigned int  n) const [inherited]

Gets an event's raw 32 bits parameter.

Parameters:
nThe parameter index, between 0 and 2.
Returns:
The parameter's value.
See also:
setRaw32()

Definition at line 330 of file alsaevent.cpp.

References SequencerEvent::m_event.

unsigned char getRaw8 ( const unsigned int  n) const [inherited]

Gets an event's raw 8 bits parameter.

Parameters:
nThe parameter index, between 0 and 11.
Returns:
The parameter's value.
See also:
setRaw8()

Definition at line 352 of file alsaevent.cpp.

References SequencerEvent::m_event.

unsigned int getRealTimeNanos ( ) const [inline, inherited]

Gets the nanoseconds of the event's real time.

Returns:
The nanoseconds of the time.
See also:
scheduleReal(), getRealTimeSecs()

Definition at line 101 of file alsaevent.h.

unsigned int getRealTimeSecs ( ) const [inline, inherited]

Gets the seconds of the event's real time.

Returns:
The seconds of the time.
See also:
scheduleReal(), getRealTimeNanos()

Definition at line 95 of file alsaevent.h.

snd_seq_event_type_t getSequencerType ( ) const [inline, inherited]

Gets the sequencer event type.

Returns:
The sequencer event type.
See also:
setSequencerType()

Definition at line 69 of file alsaevent.h.

unsigned char getSourceClient ( ) const [inline, inherited]

Gets the source client id.

Returns:
The source client id.
See also:
setSource()

Definition at line 77 of file alsaevent.h.

unsigned char getSourcePort ( ) const [inline, inherited]

Gets the source port id.

Returns:
The source port id.
See also:
setSource()

Definition at line 83 of file alsaevent.h.

unsigned char getTag ( ) const [inline, inherited]

Gets the tag of the event.

Returns:
The event's tag
See also:
setTag()

Definition at line 113 of file alsaevent.h.

snd_seq_tick_time_t getTick ( ) const [inline, inherited]

Gets the tick time of the event.

Returns:
The tick time.
See also:
scheduleTick()

Definition at line 89 of file alsaevent.h.

bool isChannel ( const SequencerEvent event) [static, inherited]

Checks if the event's type is a Channel Voice message.

Parameters:
eventA SequencerEvent object pointer
Returns:
True if the event is a channel voice message.
Since:
0.2.0

Definition at line 204 of file alsaevent.cpp.

bool isClient ( const SequencerEvent event) [static, inherited]

Checks if the event's type is of type client.

Parameters:
eventA SequencerEvent object pointer
Returns:
True if the event has a client start/exit/change type.

Definition at line 170 of file alsaevent.cpp.

bool isConnectionChange ( const SequencerEvent event) [static, inherited]

Checks if the event's type is of type connection change.

Parameters:
eventA SequencerEvent object pointer
Returns:
True if the event has a client/port/subscription type.

Definition at line 184 of file alsaevent.cpp.

Referenced by SequencerOutputThread::run().

bool isPort ( const SequencerEvent event) [static, inherited]

Checks if the event's type is of type port.

Parameters:
eventA SequencerEvent object pointer
Returns:
True if the event has a port start/exit/change type.

Definition at line 156 of file alsaevent.cpp.

bool isSubscription ( const SequencerEvent event) [static, inherited]

Checks if the event's type is a subscription.

Parameters:
eventA SequencerEvent object pointer
Returns:
True if the event has a subscribe/unsubscribe type.

Definition at line 143 of file alsaevent.cpp.

void scheduleReal ( const int  queue,
const ulong  secs,
const ulong  nanos,
const bool  relative 
) [inherited]

Sets the event to be scheduled in real (clock) time units.

Parameters:
queueThe queue number to be used.
secsThe time in whole seconds.
nanosThe nanoseconds to be added.
relativeUse relative (to the current) time instead of absolute time.

Definition at line 291 of file alsaevent.cpp.

References SequencerEvent::m_event.

void scheduleTick ( const int  queue,
const int  tick,
const bool  relative 
) [inherited]

Sets the event to be scheduled in musical time (ticks) units.

Parameters:
queueThe queue number to be used.
tickThe time in ticks.
relativeUse relative (to the current) time instead of absolute time.

Definition at line 279 of file alsaevent.cpp.

References SequencerEvent::m_event.

Referenced by SequencerOutputThread::sendEchoEvent().

void setDestination ( const unsigned char  client,
const unsigned char  port 
) [inherited]

Sets the client:port destination of the event.

Parameters:
clientThe destination's client ID
portThe destination port ID
See also:
setSubscribers()

Definition at line 233 of file alsaevent.cpp.

References SequencerEvent::m_event.

Referenced by SequencerOutputThread::sendEchoEvent().

void setDirect ( ) [inherited]

Sets the event to be immediately delivered, not queued/scheduled.

See also:
scheduleTick(), scheduleReal()

Definition at line 268 of file alsaevent.cpp.

References SequencerEvent::m_event.

void setPriority ( const bool  high) [inherited]

Sets the priority of the event.

This is used in case of several events share the same scheduling time.

Parameters:
highMark the event as a high priority one.

Definition at line 305 of file alsaevent.cpp.

References SequencerEvent::m_event.

void setRaw32 ( const unsigned int  n,
const unsigned int  value 
) [inherited]

Sets an event's raw 32 bits parameter.

Parameters:
nThe parameter index, between 0 and 2.
valueThe parameter's value.

Definition at line 341 of file alsaevent.cpp.

References SequencerEvent::m_event.

void setRaw8 ( const unsigned int  n,
const unsigned char  value 
) [inherited]

Sets an event's raw 8 bits parameter.

Parameters:
nThe parameter index, between 0 and 11.
valueThe parameter's value.

Definition at line 363 of file alsaevent.cpp.

References SequencerEvent::m_event.

void setSequencerType ( const snd_seq_event_type_t  eventType) [inherited]

Sets the event's ALSA sequencer type.

Parameters:
eventTypeThe ALSA sequencer type

Definition at line 222 of file alsaevent.cpp.

References SequencerEvent::m_event.

Referenced by SystemEvent::SystemEvent(), TextEvent::TextEvent(), and ValueEvent::ValueEvent().

void setSource ( const unsigned char  port) [inherited]

Sets the event's source port ID.

Parameters:
portThe source port ID
See also:
getSourceClient(), getSourcePort()

Definition at line 243 of file alsaevent.cpp.

References SequencerEvent::m_event.

Referenced by SequencerOutputThread::sendEchoEvent().

void setTag ( const unsigned char  aTag) [inherited]

Sets the event's tag.

This attribute is any arbitrary number, not used by the ALSA library. Range limited to 0 thru 255.

Parameters:
aTagA tag number.

Definition at line 315 of file alsaevent.cpp.

References SequencerEvent::m_event.


Member Data Documentation


The documentation for this class was generated from the following file: