Fix lost MIDI events due to broken range check.
This commit is contained in:
parent
07a381a8f5
commit
cf47d71761
|
@ -49,7 +49,7 @@ public:
|
|||
Evoral::Parameter from_symbol(const std::string& str) const;
|
||||
std::string to_symbol(const Evoral::Parameter& param) const;
|
||||
|
||||
const Evoral::ParameterDescriptor& descriptor(const Evoral::Parameter& param) const;
|
||||
Evoral::ParameterDescriptor descriptor(const Evoral::Parameter& param) const;
|
||||
|
||||
void set_descriptor(const Evoral::Parameter& param,
|
||||
const Evoral::ParameterDescriptor& desc);
|
||||
|
|
|
@ -22,6 +22,7 @@
|
|||
#include <cstdio>
|
||||
#include "ardour/types.h"
|
||||
#include "ardour/event_type_map.h"
|
||||
#include "ardour/parameter_descriptor.h"
|
||||
#include "ardour/parameter_types.h"
|
||||
#include "ardour/uri_map.h"
|
||||
#include "evoral/Parameter.hpp"
|
||||
|
@ -243,13 +244,17 @@ EventTypeMap::to_symbol(const Evoral::Parameter& param) const
|
|||
}
|
||||
}
|
||||
|
||||
const Evoral::ParameterDescriptor&
|
||||
Evoral::ParameterDescriptor
|
||||
EventTypeMap::descriptor(const Evoral::Parameter& param) const
|
||||
{
|
||||
static const Evoral::ParameterDescriptor nil;
|
||||
|
||||
// Found an existing (perhaps custom) descriptor
|
||||
Descriptors::const_iterator d = _descriptors.find(param);
|
||||
return (d != _descriptors.end()) ? d->second : nil;
|
||||
if (d != _descriptors.end()) {
|
||||
return d->second;
|
||||
}
|
||||
|
||||
// Add default descriptor and return that
|
||||
return ARDOUR::ParameterDescriptor(param);
|
||||
}
|
||||
|
||||
void
|
||||
|
|
|
@ -52,7 +52,7 @@ public:
|
|||
virtual uint32_t midi_event_type(uint8_t status) const = 0;
|
||||
|
||||
/** Return the description of a parameter. */
|
||||
virtual const ParameterDescriptor& descriptor(const Parameter& param) const = 0;
|
||||
virtual ParameterDescriptor descriptor(const Parameter& param) const = 0;
|
||||
|
||||
virtual std::string to_symbol(const Parameter& param) const = 0;
|
||||
};
|
||||
|
|
Loading…
Reference in New Issue
Block a user