lua MidiBuffer bindings
This commit is contained in:
parent
b8a7ee001b
commit
a1bff57695
|
@ -45,6 +45,7 @@ public:
|
|||
void merge_from (const Buffer& src, framecnt_t nframes, framecnt_t dst_offset = 0, framecnt_t src_offset = 0);
|
||||
|
||||
void copy(const MidiBuffer& copy);
|
||||
void copy(MidiBuffer const * const);
|
||||
|
||||
bool push_back(const Evoral::MIDIEvent<TimeType>& event);
|
||||
bool push_back(TimeType time, size_t size, const uint8_t* data);
|
||||
|
|
|
@ -1278,6 +1278,10 @@ LuaBindings::dsp (lua_State* L)
|
|||
.beginClass <MidiBuffer> ("MidiBuffer")
|
||||
.addEqualCheck ()
|
||||
.addFunction ("silence", &MidiBuffer::silence)
|
||||
.addFunction ("size", &MidiBuffer::size)
|
||||
.addFunction ("empty", &MidiBuffer::empty)
|
||||
.addFunction ("resize", &MidiBuffer::resize)
|
||||
.addFunction ("copy", (void (MidiBuffer::*)(MidiBuffer const * const))&MidiBuffer::copy)
|
||||
.addFunction ("push_event", (bool (MidiBuffer::*)(const Evoral::MIDIEvent<framepos_t>&))&MidiBuffer::push_back)
|
||||
.addFunction ("push_back", (bool (MidiBuffer::*)(framepos_t, size_t, const uint8_t*))&MidiBuffer::push_back)
|
||||
// TODO iterators..
|
||||
|
|
|
@ -80,6 +80,14 @@ MidiBuffer::copy(const MidiBuffer& copy)
|
|||
memcpy(_data, copy._data, copy._size);
|
||||
}
|
||||
|
||||
void
|
||||
MidiBuffer::copy(MidiBuffer const * const copy)
|
||||
{
|
||||
assert(_capacity >= copy->size ());
|
||||
_size = copy->size ();
|
||||
memcpy(_data, copy->data(), _size);
|
||||
}
|
||||
|
||||
|
||||
/** Read events from @a src starting at time @a offset into the START of this buffer, for
|
||||
* time duration @a nframes. Relative time, where 0 = start of buffer.
|
||||
|
|
Loading…
Reference in New Issue
Block a user