drumstick 2.10.0
C++ MIDI libraries using Qt objects, idioms, and style.
|
Event representing a SMF text event. More...
#include <alsaevent.h>
Public Member Functions | |
TextEvent () | |
Default constructor. | |
TextEvent (const snd_seq_event_t *event) | |
Constructor from an ALSA sequencer record. More... | |
TextEvent (const QString &text, const int textType=1) | |
Constructor from a given string. More... | |
TextEvent (const TextEvent &other) | |
Copy constructor. More... | |
TextEvent (const unsigned int datalen, char *dataptr) | |
Constructor from a data pointer and length. More... | |
TextEvent & | operator= (const TextEvent &other) |
Assignment operator. More... | |
QString | getText () const |
Gets the event's text content. More... | |
int | getTextType () const |
Gets the event's SMF text type. More... | |
virtual TextEvent * | clone () const override |
Clone this object returning a pointer to the new object. More... | |
unsigned int | getLength () const |
Gets the data length. More... | |
const char * | getData () const |
Gets the data pointer. More... | |
void | setSequencerType (const snd_seq_event_type_t eventType) |
Sets the event's ALSA sequencer type. More... | |
snd_seq_event_type_t | getSequencerType () const |
Gets the sequencer event type. More... | |
void | setDestination (const unsigned char client, const unsigned char port) |
Sets the client:port destination of the event. More... | |
void | setSource (const unsigned char port) |
Sets the event's source port ID. More... | |
unsigned char | getSourceClient () const |
Gets the source client id. More... | |
unsigned char | getSourcePort () const |
Gets the source port id. More... | |
snd_seq_tick_time_t | getTick () const |
Gets the tick time of the event. More... | |
unsigned int | getRealTimeSecs () const |
Gets the seconds of the event's real time. More... | |
unsigned int | getRealTimeNanos () const |
Gets the nanoseconds of the event's real time. More... | |
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. More... | |
void | scheduleTick (const int queue, const int tick, const bool relative) |
Sets the event to be scheduled in musical time (ticks) units. More... | |
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. More... | |
void | setPriority (const bool high) |
Sets the priority of the event. More... | |
unsigned char | getTag () const |
Gets the tag of the event. More... | |
void | setTag (const unsigned char aTag) |
Sets the event's tag. More... | |
unsigned int | getRaw32 (const unsigned int n) const |
Gets an event's raw 32 bits parameter. More... | |
void | setRaw32 (const unsigned int n, const unsigned int value) |
Sets an event's raw 32 bits parameter. More... | |
unsigned char | getRaw8 (const unsigned int n) const |
Gets an event's raw 8 bits parameter. More... | |
void | setRaw8 (const unsigned int n, const unsigned char value) |
Sets an event's raw 8 bits parameter. More... | |
snd_seq_event_t * | getHandle () |
Gets the handle of the event. More... | |
int | getEncodedLength () |
Gets the encoded length of the event record. More... | |
Static Public Member Functions | |
static bool | isSubscription (const SequencerEvent *event) |
Checks if the event's type is a subscription. More... | |
static bool | isPort (const SequencerEvent *event) |
Checks if the event's type is of type port. More... | |
static bool | isClient (const SequencerEvent *event) |
Checks if the event's type is of type client. More... | |
static bool | isConnectionChange (const SequencerEvent *event) |
Checks if the event's type is of type connection change. More... | |
static bool | isChannel (const SequencerEvent *event) |
Checks if the event's type is a Channel Voice message. More... | |
Protected Member Functions | |
Q_DECL_DEPRECATED void | free () |
Releases the event record. More... | |
Protected Attributes | |
snd_seq_event_t | m_event |
ALSA sequencer event record. More... | |
Event representing a SMF text event.
This event type is not intended to be transmitted over the wire to an external device, but it is useful for sequencer programs or MIDI applications
Definition at line 503 of file alsaevent.h.
|
explicit |
Constructor from an ALSA sequencer record.
event | ALSA sequencer record. |
Definition at line 735 of file alsaevent.cpp.
References SequencerEvent::setSequencerType().
|
explicit |
Constructor from a given string.
text | The event's text |
textType | The SMF text type |
Definition at line 746 of file alsaevent.cpp.
References SequencerEvent::setSequencerType().
Copy constructor.
other | An existing TextEvent object reference |
Definition at line 756 of file alsaevent.cpp.
References TextEvent::getTextType(), and SequencerEvent::setSequencerType().
TextEvent | ( | const unsigned int | datalen, |
char * | dataptr | ||
) |
Constructor from a data pointer and length.
datalen | Data length |
dataptr | Data pointer |
Definition at line 768 of file alsaevent.cpp.
References SequencerEvent::setSequencerType().
|
overridevirtual |
Clone this object returning a pointer to the new object.
Reimplemented from VariableEvent.
Definition at line 796 of file alsaevent.cpp.
References SequencerEvent::m_event, and TextEvent::TextEvent().
|
protectedinherited |
Releases the event record.
Definition at line 373 of file alsaevent.cpp.
References SequencerEvent::m_event.
|
inlineinherited |
Gets the data pointer.
Definition at line 476 of file alsaevent.h.
|
inherited |
Gets the encoded length of the event record.
Definition at line 382 of file alsaevent.cpp.
References SequencerEvent::m_event.
|
inlineinherited |
Gets the handle of the event.
Definition at line 135 of file alsaevent.h.
Referenced by MidiClient::output(), MidiClient::outputBuffer(), MidiClient::outputDirect(), SequencerOutputThread::sendSongEvent(), MidiQueue::setRealTimePosition(), and MidiQueue::setTickPosition().
|
inlineinherited |
Gets the data length.
Definition at line 471 of file alsaevent.h.
|
inherited |
Gets an event's raw 32 bits parameter.
n | The parameter index, between 0 and 2. |
Definition at line 331 of file alsaevent.cpp.
References SequencerEvent::m_event.
|
inherited |
Gets an event's raw 8 bits parameter.
n | The parameter index, between 0 and 11. |
Definition at line 353 of file alsaevent.cpp.
References SequencerEvent::m_event.
|
inlineinherited |
Gets the nanoseconds of the event's real time.
Definition at line 113 of file alsaevent.h.
|
inlineinherited |
Gets the seconds of the event's real time.
Definition at line 107 of file alsaevent.h.
|
inlineinherited |
Gets the sequencer event type.
Definition at line 81 of file alsaevent.h.
|
inlineinherited |
Gets the source client id.
Definition at line 89 of file alsaevent.h.
|
inlineinherited |
Gets the source port id.
Definition at line 95 of file alsaevent.h.
|
inlineinherited |
Gets the tag of the event.
Definition at line 125 of file alsaevent.h.
QString getText | ( | ) | const |
Gets the event's text content.
Definition at line 778 of file alsaevent.cpp.
int getTextType | ( | ) | const |
Gets the event's SMF text type.
Definition at line 787 of file alsaevent.cpp.
Referenced by TextEvent::operator=(), and TextEvent::TextEvent().
|
inlineinherited |
Gets the tick time of the event.
Definition at line 101 of file alsaevent.h.
|
staticinherited |
Checks if the event's type is a Channel Voice message.
event | A SequencerEvent object pointer |
Definition at line 205 of file alsaevent.cpp.
|
staticinherited |
Checks if the event's type is of type client.
event | A SequencerEvent object pointer |
Definition at line 171 of file alsaevent.cpp.
|
staticinherited |
Checks if the event's type is of type connection change.
event | A SequencerEvent object pointer |
Definition at line 185 of file alsaevent.cpp.
Referenced by SequencerOutputThread::run().
|
staticinherited |
Checks if the event's type is of type port.
event | A SequencerEvent object pointer |
Definition at line 157 of file alsaevent.cpp.
|
staticinherited |
Checks if the event's type is a subscription.
event | A SequencerEvent object pointer |
Definition at line 144 of file alsaevent.cpp.
Assignment operator.
other | Another TextEvent object reference |
Definition at line 806 of file alsaevent.cpp.
References TextEvent::getTextType(), SequencerEvent::m_event, and SequencerEvent::setSequencerType().
|
inherited |
Sets the event to be scheduled in real (clock) time units.
queue | The queue number to be used. |
secs | The time in whole seconds. |
nanos | The nanoseconds to be added. |
relative | Use relative (to the current) time instead of absolute time. |
Definition at line 292 of file alsaevent.cpp.
References SequencerEvent::m_event.
|
inherited |
Sets the event to be scheduled in musical time (ticks) units.
queue | The queue number to be used. |
tick | The time in ticks. |
relative | Use relative (to the current) time instead of absolute time. |
Definition at line 280 of file alsaevent.cpp.
References SequencerEvent::m_event.
Referenced by SequencerOutputThread::sendEchoEvent().
|
inherited |
Sets the client:port destination of the event.
client | The destination's client ID |
port | The destination port ID |
Definition at line 234 of file alsaevent.cpp.
References SequencerEvent::m_event.
Referenced by SequencerOutputThread::sendEchoEvent().
|
inherited |
Sets the event to be immediately delivered, not queued/scheduled.
Definition at line 269 of file alsaevent.cpp.
References SequencerEvent::m_event.
|
inherited |
Sets the priority of the event.
This is used in case of several events share the same scheduling time.
high | Mark the event as a high priority one. |
Definition at line 306 of file alsaevent.cpp.
References SequencerEvent::m_event.
|
inherited |
Sets an event's raw 32 bits parameter.
n | The parameter index, between 0 and 2. |
value | The parameter's value. |
Definition at line 342 of file alsaevent.cpp.
References SequencerEvent::m_event.
|
inherited |
Sets an event's raw 8 bits parameter.
n | The parameter index, between 0 and 11. |
value | The parameter's value. |
Definition at line 364 of file alsaevent.cpp.
References SequencerEvent::m_event.
|
inherited |
Sets the event's ALSA sequencer type.
eventType | The ALSA sequencer type |
Definition at line 223 of file alsaevent.cpp.
References SequencerEvent::m_event.
Referenced by TextEvent::operator=(), SystemEvent::SystemEvent(), TextEvent::TextEvent(), and ValueEvent::ValueEvent().
|
inherited |
Sets the event's source port ID.
port | The source port ID |
Definition at line 244 of file alsaevent.cpp.
References SequencerEvent::m_event.
Referenced by SequencerOutputThread::sendEchoEvent().
|
inherited |
Sets the event's tag.
This attribute is any arbitrary number, not used by the ALSA library. Range limited to 0 thru 255.
aTag | A tag number. |
Definition at line 316 of file alsaevent.cpp.
References SequencerEvent::m_event.
|
protectedinherited |
ALSA sequencer event record.
Definition at line 152 of file alsaevent.h.
Referenced by ChanPressEvent::ChanPressEvent(), SequencerEvent::clone(), ChannelEvent::clone(), KeyEvent::clone(), NoteEvent::clone(), NoteOnEvent::clone(), NoteOffEvent::clone(), KeyPressEvent::clone(), ControllerEvent::clone(), ProgramChangeEvent::clone(), PitchBendEvent::clone(), ChanPressEvent::clone(), VariableEvent::clone(), SysExEvent::clone(), TextEvent::clone(), SystemEvent::clone(), QueueControlEvent::clone(), ValueEvent::clone(), TempoEvent::clone(), SubscriptionEvent::clone(), ClientEvent::clone(), PortEvent::clone(), ControllerEvent::ControllerEvent(), SequencerEvent::free(), SequencerEvent::getEncodedLength(), SequencerEvent::getRaw32(), SequencerEvent::getRaw8(), KeyPressEvent::KeyPressEvent(), NoteEvent::NoteEvent(), NoteOffEvent::NoteOffEvent(), NoteOnEvent::NoteOnEvent(), SequencerEvent::operator=(), SysExEvent::operator=(), TextEvent::operator=(), VariableEvent::operator=(), PitchBendEvent::PitchBendEvent(), ProgramChangeEvent::ProgramChangeEvent(), QueueControlEvent::QueueControlEvent(), SequencerEvent::scheduleReal(), SequencerEvent::scheduleTick(), SequencerEvent::SequencerEvent(), SequencerEvent::setBroadcast(), SequencerEvent::setDestination(), SequencerEvent::setDirect(), SequencerEvent::setPriority(), SequencerEvent::setRaw32(), SequencerEvent::setRaw8(), SequencerEvent::setSequencerType(), SequencerEvent::setSource(), SequencerEvent::setSubscribers(), SequencerEvent::setTag(), SysExEvent::SysExEvent(), SystemEvent::SystemEvent(), TempoEvent::TempoEvent(), ValueEvent::ValueEvent(), and VariableEvent::VariableEvent().