Open
Description
When I tried to use a vector operator, I was having issues with there being no outlets defined.
I think the issue is with this :
template\<class min_class_type\>
void min_dsp64_io(minwrap\<min_class_type\>\* self, const short\* count) {
int i = 0;
while (i < self->m_min_object.inlets().size()) {
self->m_min_object.inlets()[i]->update_signal_connection(count[i] != 0);
++i;
}
while (i < self->m_min_object.outlets().size()) {
self->m_min_object.outlets()[i - self->m_min_object.inlets().size()]->update_signal_connection(count[i] != 0);
++i;
}
}
After incrementing for the inlets,
while (i < self->m_min_object.outlets().size())
never executes.
I suspect the intent was
template<class min_class_type>
void min_dsp64_io(minwrap<min_class_type>\* self, const short\* count) {
int i = 0;
while (i < self->m_min_object.inlets().size()) {
self->m_min_object.inlets()[i]->update_signal_connection(count[i] != 0);
++i;
}
while (i - self->m_min_object.inlets().size() < self->m_min_object.outlets().size()) {
self->m_min_object.outlets()[i - self->m_min_object.inlets().size()]->update_signal_connection(count[i] != 0);
++i;
}
}
or maybe
template<class min_class_type>
void min_dsp64_io(minwrap<min_class_type>* self, const short* count) {
int i = 0;
while (i < self->m_min_object.inlets().size()) {
self->m_min_object.inlets()[i]->update_signal_connection(count[i] != 0);
++i;
}
i = 0;
while (i < self->m_min_object.outlets().size()) {
self->m_min_object.outlets()[i]->update_signal_connection(count[i + m_min_object.inlets().size()] != 0);
++i;
}
}