LMMS
Loading...
Searching...
No Matches
lmms::SamplePlayHandle Class Reference

#include <SamplePlayHandle.h>

Inheritance diagram for lmms::SamplePlayHandle:
lmms::PlayHandle lmms::ThreadableJob

Public Member Functions

 SamplePlayHandle (Sample *sample, bool ownAudioBusHandle=true)
 SamplePlayHandle (const QString &sampleFile)
 SamplePlayHandle (SampleClip *clip)
 ~SamplePlayHandle () override
bool affinityMatters () const override
void play (SampleFrame *buffer) override
bool isFinished () const override
bool isFromTrack (const Track *_track) const override
f_cnt_t totalFrames () const
f_cnt_t framesDone () const
void setDoneMayReturnTrue (bool _enable)
void setPatternTrack (PatternTrack *pt)
void setVolumeModel (FloatModel *_model)
Public Member Functions inherited from lmms::PlayHandle
 PlayHandle (const Type type, f_cnt_t offset=0)
PlayHandleoperator= (PlayHandle &p)
virtual ~PlayHandle ()
const QThread * affinity () const
Type type () const
void doProcessing () override
bool requiresProcessing () const override
void lock ()
void unlock ()
bool tryLock ()
f_cnt_t offset () const
void setOffset (f_cnt_t _offset)
bool usesBuffer () const
void setUsesBuffer (const bool b)
AudioBusHandleaudioBusHandle ()
void setAudioBusHandle (AudioBusHandle *busHandle)
void releaseBuffer ()
SampleFramebuffer ()
Public Member Functions inherited from lmms::ThreadableJob
 ThreadableJob ()
ProcessingState state () const
void reset ()
void queue ()
void done ()
void process ()

Private Attributes

Samplem_sample
bool m_doneMayReturnTrue
f_cnt_t m_frame
Sample::PlaybackState m_state
const bool m_ownAudioBusHandle
FloatModel m_defaultVolumeModel
FloatModelm_volumeModel
Trackm_track
PatternTrackm_patternTrack

Additional Inherited Members

Public Types inherited from lmms::PlayHandle
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 }
Static Public Attributes inherited from lmms::PlayHandle
static constexpr std::size_t MaxNumber = 1024
Protected Attributes inherited from lmms::ThreadableJob
std::atomic< ProcessingStatem_state

Constructor & Destructor Documentation

◆ SamplePlayHandle() [1/3]

lmms::SamplePlayHandle::SamplePlayHandle ( Sample * sample,
bool ownAudioBusHandle = true )

◆ SamplePlayHandle() [2/3]

lmms::SamplePlayHandle::SamplePlayHandle ( const QString & sampleFile)

◆ SamplePlayHandle() [3/3]

lmms::SamplePlayHandle::SamplePlayHandle ( SampleClip * clip)

◆ ~SamplePlayHandle()

lmms::SamplePlayHandle::~SamplePlayHandle ( )
override

Member Function Documentation

◆ affinityMatters()

bool lmms::SamplePlayHandle::affinityMatters ( ) const
inlineoverridevirtual

Reimplemented from lmms::PlayHandle.

◆ framesDone()

f_cnt_t lmms::SamplePlayHandle::framesDone ( ) const
inline

◆ isFinished()

bool lmms::SamplePlayHandle::isFinished ( ) const
overridevirtual

Implements lmms::PlayHandle.

◆ isFromTrack()

bool lmms::SamplePlayHandle::isFromTrack ( const Track * _track) const
overridevirtual

Implements lmms::PlayHandle.

◆ play()

void lmms::SamplePlayHandle::play ( SampleFrame * buffer)
overridevirtual

Implements lmms::PlayHandle.

◆ setDoneMayReturnTrue()

void lmms::SamplePlayHandle::setDoneMayReturnTrue ( bool _enable)
inline

◆ setPatternTrack()

void lmms::SamplePlayHandle::setPatternTrack ( PatternTrack * pt)
inline

◆ setVolumeModel()

void lmms::SamplePlayHandle::setVolumeModel ( FloatModel * _model)
inline

◆ totalFrames()

f_cnt_t lmms::SamplePlayHandle::totalFrames ( ) const

Member Data Documentation

◆ m_defaultVolumeModel

FloatModel lmms::SamplePlayHandle::m_defaultVolumeModel
private

◆ m_doneMayReturnTrue

bool lmms::SamplePlayHandle::m_doneMayReturnTrue
private

◆ m_frame

f_cnt_t lmms::SamplePlayHandle::m_frame
private

◆ m_ownAudioBusHandle

const bool lmms::SamplePlayHandle::m_ownAudioBusHandle
private

◆ m_patternTrack

PatternTrack* lmms::SamplePlayHandle::m_patternTrack
private

◆ m_sample

Sample* lmms::SamplePlayHandle::m_sample
private

◆ m_state

Sample::PlaybackState lmms::SamplePlayHandle::m_state
private

◆ m_track

Track* lmms::SamplePlayHandle::m_track
private

◆ m_volumeModel

FloatModel* lmms::SamplePlayHandle::m_volumeModel
private

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