42 hasCalledReset =
true;
93 if (numSourceSamples > numSamples)
97 const int maxBlockLengthToUse = numSamples << 5;
101 if (numSourceSamples > maxBlockLengthToUse)
103 startSample = numSourceSamples - maxBlockLengthToUse;
104 numSourceSamples = maxBlockLengthToUse;
108 scale = (numSamples << 10) / numSourceSamples;
112 const auto pos = ((meta.samplePosition - startSample) * scale) >> 10;
113 destBuffer.addEvent (meta.data, meta.numBytes, jlimit (0, numSamples - 1, pos));
120 startSample = numSamples - numSourceSamples;
123 destBuffer.
addEvent (metadata.data, metadata.numBytes,
124 jlimit (0, numSamples - 1, metadata.samplePosition + startSample));
Type jmax(const Type a, const Type b)
Definition MathsFunctions.h:48
static void message(int level, const char *fmt,...)
Definition adplugdb.cpp:120
Definition juce_MidiBuffer.h:145
bool addEvent(const MidiMessage &midiMessage, int sampleNumber)
Definition juce_MidiBuffer.cpp:122
Definition juce_MidiKeyboardState.h:42
double lastCallbackTime
Definition juce_MidiMessageCollector.h:102
void handleIncomingMidiMessage(MidiInput *, const MidiMessage &) override
Definition juce_MidiMessageCollector.cpp:153
double sampleRate
Definition juce_MidiMessageCollector.h:105
void handleNoteOn(MidiKeyboardState *, int midiChannel, int midiNoteNumber, float velocity) override
Definition juce_MidiMessageCollector.cpp:137
void removeNextBlockOfMessages(MidiBuffer &destBuffer, int numSamples)
Definition juce_MidiMessageCollector.cpp:71
void handleNoteOff(MidiKeyboardState *, int midiChannel, int midiNoteNumber, float velocity) override
Definition juce_MidiMessageCollector.cpp:145
CriticalSection midiCallbackLock
Definition juce_MidiMessageCollector.h:103
MidiMessageCollector()
Definition juce_MidiMessageCollector.cpp:26
MidiBuffer incomingMessages
Definition juce_MidiMessageCollector.h:104
void ensureStorageAllocated(size_t bytes)
Definition juce_MidiMessageCollector.cpp:131
~MidiMessageCollector() override
Definition juce_MidiMessageCollector.cpp:30
void reset(double sampleRate)
Definition juce_MidiMessageCollector.cpp:35
void addMessageToQueue(const MidiMessage &message)
Definition juce_MidiMessageCollector.cpp:49
Definition juce_MidiMessage.h:35
static MidiMessage noteOn(int channel, int noteNumber, float velocity) noexcept
Definition juce_MidiMessage.cpp:604
static MidiMessage noteOff(int channel, int noteNumber, float velocity) noexcept
Definition juce_MidiMessage.cpp:618
static double getMillisecondCounterHiRes() noexcept
Definition juce_linux_SystemStats.cpp:334
unsigned * m
Definition inflate.c:1559
Definition carla_juce.cpp:31
CriticalSection::ScopedLockType ScopedLock
Definition juce_CriticalSection.h:186
Type jlimit(Type lowerLimit, Type upperLimit, Type valueToConstrain) noexcept
Definition juce_MathsFunctions.h:262
int roundToInt(const FloatType value) noexcept
Definition juce_MathsFunctions.h:465
typedef int(UZ_EXP MsgFn)()