19#ifndef DRUMSTICK_PLAYTHREAD_H
20#define DRUMSTICK_PLAYTHREAD_H
24#include <QReadWriteLock>
54 virtual void run()
override;
100 void start( QThread::Priority priority = InheritPriority );
103 virtual void sendEchoEvent(
int tick);
105 virtual void drainOutput();
106 virtual void syncOutput();
107 virtual bool stopRequested();
Classes managing ALSA Sequencer events.
The QThread class provides platform-independent threads.
Base class for the event's hierarchy.
Sequence player auxiliary class.
void playbackStopped()
Signal emitted when the play-back has stopped.
virtual SequencerEvent * nextEvent()=0
Gets the next event in the sequence.
virtual unsigned int getInitialPosition()
Gets the initial position in ticks of the sequence.
int m_QueueId
MidiQueue numeric identifier.
MidiClient * m_MidiClient
MidiClient instance pointer.
bool m_Stopped
Stopped status.
void playbackFinished()
Signal emitted when the sequence play-back has finished.
pollfd * m_pfds
Array of pollfd pointers.
QReadWriteLock m_mutex
Mutex object used for synchronization.
MidiQueue * m_Queue
MidiQueue instance pointer.
virtual bool hasNext()=0
Check if there is one more event in the sequence.
virtual unsigned int getEchoResolution()
Gets the echo event resolution in ticks.
int m_npfds
Number of pollfd pointers.
int m_PortId
MidiPort numeric identifier.