|
lmms
Cross-platform music production software
|
#include <PlayHandle.h>
Public Types | |
| enum class | Type { NotePlayHandle = 0x01 , InstrumentPlayHandle = 0x02 , SamplePlayHandle = 0x04 , PresetPreviewHandle = 0x08 } |
| using | Types = Flags<Type> |
| Public Types inherited from lmms::ThreadableJob | |
| enum class | ProcessingState : int { Unstarted , Queued , InProgress , Done } |
Public Member Functions | |
| PlayHandle (const Type type, f_cnt_t offset=0) | |
| PlayHandle & | operator= (PlayHandle &p) |
| virtual | ~PlayHandle () |
| virtual bool | affinityMatters () const |
| const QThread * | affinity () const |
| Type | type () const |
| void | doProcessing () override |
| bool | requiresProcessing () const override |
| void | lock () |
| void | unlock () |
| bool | tryLock () |
| virtual void | play (SampleFrame *buffer)=0 |
| virtual bool | isFinished () const =0 |
| f_cnt_t | offset () const |
| void | setOffset (f_cnt_t _offset) |
| virtual bool | isFromTrack (const Track *_track) const =0 |
| bool | usesBuffer () const |
| void | setUsesBuffer (const bool b) |
| AudioBusHandle * | audioBusHandle () |
| void | setAudioBusHandle (AudioBusHandle *busHandle) |
| void | releaseBuffer () |
| SampleFrame * | buffer () |
| Public Member Functions inherited from lmms::ThreadableJob | |
| ThreadableJob () | |
| ProcessingState | state () const |
| void | reset () |
| void | queue () |
| void | done () |
| void | process () |
Static Public Attributes | |
| static constexpr std::size_t | MaxNumber = 1024 |
Private Attributes | |
| Type | m_type |
| f_cnt_t | m_offset |
| QThread * | m_affinity |
| QMutex | m_processingLock |
| SampleFrame * | m_playHandleBuffer |
| bool | m_bufferReleased |
| bool | m_usesBuffer |
| AudioBusHandle * | m_audioBusHandle |
Additional Inherited Members | |
| Protected Attributes inherited from lmms::ThreadableJob | |
| std::atomic< ProcessingState > | m_state |
| using lmms::PlayHandle::Types = Flags<Type> |
|
strong |
|
virtual |
|
inline |
|
inlinevirtual |
Reimplemented in lmms::PresetPreviewPlayHandle, and lmms::SamplePlayHandle.
|
inline |
| SampleFrame * lmms::PlayHandle::buffer | ( | ) |
|
overridevirtual |
Implements lmms::ThreadableJob.
|
pure virtual |
|
pure virtual |
|
inline |
|
inline |
|
inline |
|
pure virtual |
| void lmms::PlayHandle::releaseBuffer | ( | ) |
|
inlineoverridevirtual |
Implements lmms::ThreadableJob.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
staticconstexpr |