mirror of
https://github.com/Ardour/ardour.git
synced 2025-12-18 20:56:28 +01:00
refactor midi mute buffer sizing into a separate method for Delivery
This commit is contained in:
parent
e45c2f616a
commit
fc24c59eb9
2 changed files with 15 additions and 9 deletions
|
|
@ -182,6 +182,8 @@ private:
|
||||||
bool _no_panner_reset;
|
bool _no_panner_reset;
|
||||||
std::atomic<int> _midi_mute_mask;
|
std::atomic<int> _midi_mute_mask;
|
||||||
MidiBuffer _midi_mute_buffer;
|
MidiBuffer _midi_mute_buffer;
|
||||||
|
|
||||||
|
void resize_midi_mute_buffer ();
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -75,11 +75,7 @@ Delivery::Delivery (Session& s, std::shared_ptr<IO> io, std::shared_ptr<Pannable
|
||||||
}
|
}
|
||||||
|
|
||||||
_display_to_user = false;
|
_display_to_user = false;
|
||||||
|
resize_midi_mute_buffer ();
|
||||||
const size_t stamp_size = sizeof(samplepos_t);
|
|
||||||
const size_t etype_size = sizeof(Evoral::EventType);
|
|
||||||
const size_t mmb_size = 16 * (stamp_size + etype_size + 3);
|
|
||||||
_midi_mute_buffer.resize (mmb_size);
|
|
||||||
|
|
||||||
if (_output) {
|
if (_output) {
|
||||||
_output->changed.connect_same_thread (*this, std::bind (&Delivery::output_changed, this, _1, _2));
|
_output->changed.connect_same_thread (*this, std::bind (&Delivery::output_changed, this, _1, _2));
|
||||||
|
|
@ -107,10 +103,7 @@ Delivery::Delivery (Session& s, std::shared_ptr<Pannable> pannable, std::shared_
|
||||||
}
|
}
|
||||||
|
|
||||||
_display_to_user = false;
|
_display_to_user = false;
|
||||||
const size_t stamp_size = sizeof(samplepos_t);
|
resize_midi_mute_buffer ();
|
||||||
const size_t etype_size = sizeof(Evoral::EventType);
|
|
||||||
const size_t mmb_size = 16 * (stamp_size + etype_size + 3);
|
|
||||||
_midi_mute_buffer.resize (mmb_size);
|
|
||||||
|
|
||||||
if (_output) {
|
if (_output) {
|
||||||
_output->changed.connect_same_thread (*this, std::bind (&Delivery::output_changed, this, _1, _2));
|
_output->changed.connect_same_thread (*this, std::bind (&Delivery::output_changed, this, _1, _2));
|
||||||
|
|
@ -133,6 +126,17 @@ Delivery::~Delivery()
|
||||||
delete _output_buffers;
|
delete _output_buffers;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
Delivery::resize_midi_mute_buffer ()
|
||||||
|
{
|
||||||
|
const size_t stamp_size = sizeof (samplepos_t);
|
||||||
|
const size_t etype_size = sizeof (Evoral::EventType);
|
||||||
|
|
||||||
|
/* space for two 3-byte messages per channel */
|
||||||
|
const size_t mmb_size = 16 * (stamp_size + etype_size + 6);
|
||||||
|
_midi_mute_buffer.resize (mmb_size);
|
||||||
|
}
|
||||||
|
|
||||||
std::string
|
std::string
|
||||||
Delivery::display_name () const
|
Delivery::display_name () const
|
||||||
{
|
{
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue