26#ifndef LMMS_NOTE_PLAY_HANDLE_H
27#define LMMS_NOTE_PLAY_HANDLE_H
68 const Note& noteToPlay,
70 int midiEventChannel = -1,
71 Origin origin = Origin::MidiClip );
74 void *
operator new (
size_t size,
void *
p )
80 void setPanning(
panning_t panning )
override;
125 f_cnt_t framesLeftForCurrentPeriod()
const;
128 bool isFromTrack(
const Track* _track )
const override;
131 void noteOff(
const f_cnt_t offset = 0 );
147 f_cnt_t actualReleaseFramesToDo()
const;
156 void setFrames(
const f_cnt_t _frames );
176 float volumeLevel(
const f_cnt_t frame );
249 void processTimePos(
const TimePos& time,
float pitchValue,
bool isRecording);
252 void resize(
const bpm_t newTempo );
346 const Note& noteToPlay,
348 int midiEventChannel = -1,
Definition DetuningHelper.h:35
Definition InstrumentTrack.h:62
const std::shared_ptr< DetuningHelper > & detuning() const
Definition Note.h:251
Note(const TimePos &length=TimePos(0), const TimePos &pos=TimePos(0), int key=DefaultKey, volume_t volume=DefaultVolume, panning_t panning=DefaultPanning, std::shared_ptr< DetuningHelper > detuning=nullptr)
Definition Note.cpp:37
Definition NotePlayHandle.h:273
void setValue(float val)
Definition NotePlayHandle.h:277
BaseDetuning(DetuningHelper *detuning)
Definition NotePlayHandle.cpp:39
float value() const
Definition NotePlayHandle.h:282
float m_value
Definition NotePlayHandle.h:289
Definition NotePlayHandle.h:48
const TimePos & songGlobalParentOffset() const
Definition NotePlayHandle.h:261
bool isPatternTrackMuted()
Definition NotePlayHandle.h:237
bool isReleaseStarted() const
Definition NotePlayHandle.h:164
float m_unpitchedFrequency
Definition NotePlayHandle.h:324
const float & frequency() const
Definition NotePlayHandle.h:98
BaseDetuning * m_baseDetuning
Definition NotePlayHandle.h:326
InstrumentTrack * instrumentTrack()
Definition NotePlayHandle.h:185
const InstrumentTrack * instrumentTrack() const
Definition NotePlayHandle.h:179
InstrumentTrack * m_instrumentTrack
Definition NotePlayHandle.h:295
Origin origin() const
Definition NotePlayHandle.h:197
bool m_hasMidiNote
Definition NotePlayHandle.h:310
int midiChannel() const
Definition NotePlayHandle.h:83
f_cnt_t m_framesBeforeRelease
Definition NotePlayHandle.h:301
std::unique_ptr< BasicFilters<> > m_filter
Definition NotePlayHandle.h:51
f_cnt_t releaseFramesDone() const
Definition NotePlayHandle.h:140
void setFrequencyUpdate()
Definition NotePlayHandle.h:266
f_cnt_t totalFramesPlayed() const
Definition NotePlayHandle.h:170
bool m_muted
Definition NotePlayHandle.h:314
float unpitchedFrequency() const
Definition NotePlayHandle.h:104
void setPatternTrack(Track *t)
Definition NotePlayHandle.h:243
bool m_hadChildren
Definition NotePlayHandle.h:313
NotePlayHandle(InstrumentTrack *instrumentTrack, const f_cnt_t offset, const f_cnt_t frames, const Note ¬eToPlay, NotePlayHandle *parent=nullptr, int midiEventChannel=-1, Origin origin=Origin::MidiClip)
Definition NotePlayHandle.cpp:49
NotePlayHandle * m_parent
Definition NotePlayHandle.h:312
bool m_releaseStarted
Definition NotePlayHandle.h:309
int m_midiChannel
Definition NotePlayHandle.h:329
bool isMuted() const
Definition NotePlayHandle.h:215
TimePos m_songGlobalParentOffset
Definition NotePlayHandle.h:327
f_cnt_t m_fadeInLength
Definition NotePlayHandle.h:54
bool isMasterNote() const
Definition NotePlayHandle.h:203
bpm_t m_origTempo
Definition NotePlayHandle.h:318
void * m_pluginData
Definition NotePlayHandle.h:50
NotePlayHandleList m_subNotes
Definition NotePlayHandle.h:307
f_cnt_t m_releaseFramesDone
Definition NotePlayHandle.h:305
f_cnt_t framesLeft() const
Definition NotePlayHandle.cpp:329
float m_frequency
Definition NotePlayHandle.h:323
void setMasterNote()
Definition NotePlayHandle.h:208
f_cnt_t noteOffset() const
Definition NotePlayHandle.h:91
void setSongGlobalParentOffset(const TimePos &offset)
Definition NotePlayHandle.h:255
bool m_hasParent
Definition NotePlayHandle.h:311
bool isFinished() const override
Definition NotePlayHandle.h:116
bool hasParent() const
Definition NotePlayHandle.h:191
volatile bool m_released
Definition NotePlayHandle.h:308
f_cnt_t frames() const
Definition NotePlayHandle.h:150
f_cnt_t m_totalFramesPlayed
Definition NotePlayHandle.h:298
Track * m_patternTrack
Definition NotePlayHandle.h:315
f_cnt_t m_releaseFramesToDo
Definition NotePlayHandle.h:303
float currentDetuning() const
Get the current per-note detuning for this note.
Definition NotePlayHandle.h:110
f_cnt_t m_origFrames
Definition NotePlayHandle.h:319
bool m_frequencyNeedsUpdate
Definition NotePlayHandle.h:332
bool isReleased() const
Definition NotePlayHandle.h:159
Origin
Definition NotePlayHandle.h:58
@ MidiClip
Definition NotePlayHandle.h:59
void updateFrequency()
Definition NotePlayHandle.cpp:520
f_cnt_t m_frames
Definition NotePlayHandle.h:297
f_cnt_t framesBeforeRelease() const
Definition NotePlayHandle.h:134
int m_origBaseNote
Definition NotePlayHandle.h:321
Origin m_origin
Definition NotePlayHandle.h:330
Definition NotePlayHandle.h:340
static int s_size
Definition NotePlayHandle.h:358
static std::atomic_int s_availableIndex
Definition NotePlayHandle.h:357
static NotePlayHandle * acquire(InstrumentTrack *instrumentTrack, const f_cnt_t offset, const f_cnt_t frames, const Note ¬eToPlay, NotePlayHandle *parent=nullptr, int midiEventChannel=-1, NotePlayHandle::Origin origin=NotePlayHandle::Origin::MidiClip)
Definition NotePlayHandle.cpp:627
static void release(NotePlayHandle *nph)
Definition NotePlayHandle.cpp:646
static QReadWriteLock s_mutex
Definition NotePlayHandle.h:356
static void extend(int i)
Definition NotePlayHandle.cpp:655
static void free()
Definition NotePlayHandle.cpp:671
static NotePlayHandle ** s_available
Definition NotePlayHandle.h:355
static void init()
Definition NotePlayHandle.cpp:611
PlayHandle(const Type type, f_cnt_t offset=0)
Definition PlayHandle.cpp:36
void setUsesBuffer(const bool b)
Definition PlayHandle.h:132
f_cnt_t offset() const
Definition PlayHandle.h:114
Definition SampleFrame.h:41
Base-class for all tracks.
Definition Track.h:68
struct huft * t
Definition inflate.c:943
register unsigned i
Definition inflate.c:1575
static uintptr_t parent
Definition pugl.h:1644
int val
Definition jpeglib.h:956
Definition AudioAlsa.cpp:35
QList< const NotePlayHandle * > ConstNotePlayHandleList
Definition NotePlayHandle.h:45
const int NPH_CACHE_INCREMENT
Definition NotePlayHandle.h:337
const int INITIAL_NPH_CACHE
Definition NotePlayHandle.h:336
std::int8_t panning_t
Definition LmmsTypes.h:37
QList< NotePlayHandle * > NotePlayHandleList
Definition NotePlayHandle.h:44
std::uint64_t f_cnt_t
Definition LmmsTypes.h:43
bool operator==(const ProjectVersion &v1, const ProjectVersion &v2)
Definition ProjectVersion.h:78
std::uint16_t bpm_t
Definition LmmsTypes.h:45
std::uint8_t volume_t
Definition LmmsTypes.h:36
static float volume(float level)
Definition nekobee_voice_render.c:99
uch * p
Definition crypt.c:594