6 #ifndef OFXPDSPMIDI_PDSPMIDIIN_H_INCLUDED 7 #define OFXPDSPMIDI_PDSPMIDIIN_H_INCLUDED 13 #include "helper/PositionedMidiMessage.h" 14 #include "../DSP/pdspCore.h" 20 namespace pdsp {
namespace midi {
77 void processMidi(
const int &bufferSize ) noexcept;
79 void newMidiMessage(ofxMidiMessage& eventArgs) noexcept
override;
81 const std::vector<_PositionedMidiMessage> & getMessageVector()
const;
87 void prepareToPlay(
int expectedBufferSize,
double sampleRate )
override;
88 void releaseResources()
override;
95 std::atomic<int> index;
97 std::vector<_PositionedMidiMessage> circularBuffer;
98 std::vector<_PositionedMidiMessage> readVector;
100 double oneSlashMicrosecForSample;
101 std::chrono::time_point<std::chrono::high_resolution_clock> bufferChrono;
103 void pushToReadVector( _PositionedMidiMessage & message );
115 #endif // OFXPDSPMIDI_PDSPMIDIIN_H_INCLUDED
Thread-safe value control with smoothing.
Definition: SequencerBridge.h:11
Definition: Preparable.h:36