Configuration options for a Device.
The options set here will remain constant over the lifetime of a Device.
Public Member Functions | |
| DeviceOptions | withOutputs (std::vector< DeviceMessageHandler * > x) const |
| One or more DeviceMessageHandlers that should receive callbacks with any messages that the device wishes to send. | |
| DeviceOptions | withFunctionBlock (FunctionBlock x) const |
| The function block layout of this device. | |
| DeviceOptions | withDeviceInfo (const ump::DeviceInfo &x) const |
| Basic information about the device used to determine manufacturer, model, etc. | |
| DeviceOptions | withFeatures (DeviceFeatures x) const |
| The features that you want to enable on the device. | |
| DeviceOptions | withMaxSysExSize (size_t x) const |
| The maximum size of sysex messages to accept and to produce. | |
| DeviceOptions | withProfileDelegate (ProfileDelegate *x) const |
| Specifies a profile delegate that can be used to respond to particular profile events. | |
| DeviceOptions | withPropertyDelegate (PropertyDelegate *x) const |
| Specifies a property delegate that can be used to respond to particular property events. | |
| DeviceOptions | withProductInstanceId (const std::array< char, 16 > &x) const |
| Specifies a product instance ID that will be returned in endpoint response messages. | |
| const auto & | getOutputs () const |
| const auto & | getFunctionBlock () const |
| const auto & | getDeviceInfo () const |
| const auto & | getFeatures () const |
| const auto & | getMaxSysExSize () const |
| const auto & | getProductInstanceId () const |
| const auto & | getProfileDelegate () const |
| const auto & | getPropertyDelegate () const |
Static Public Member Functions | |
| static std::array< char, 16 > | makeProductInstanceId (Random &random) |
| Creates a random product instance ID. | |
Static Public Attributes | |
| static constexpr auto | beginValidAscii = 32 |
| static constexpr auto | endValidAscii = 127 |
|
inlinestatic |
Creates a random product instance ID.
This isn't really recommended - it's probably better to have a unique ID that remains persistent after a restart.
References juce::Random::nextInt().
|
inlinenodiscard |
One or more DeviceMessageHandlers that should receive callbacks with any messages that the device wishes to send.
Referenced DeviceMessageHandlers must outlive any Device constructed from these options.
References juce::withMember(), and x.
|
inlinenodiscard |
The function block layout of this device.
References juce::withMember(), and x.
|
inlinenodiscard |
Basic information about the device used to determine manufacturer, model, etc.
In order to populate this correctly, you'll need to register with the MIDI association - otherwise you might accidentally end up using IDs that are already assigned to other companies/individuals.
References juce::withMember(), and x.
|
inlinenodiscard |
The features that you want to enable on the device.
If you enable property exchange, you may wish to supply a PropertyDelegate using withPropertyDelegate(). If you enable profile configuration, you may wish to supply a ProfileDelegate using withProfileDelegate(). Process inquiry is not currently supported.
References juce::withMember(), and x.
|
inlinenodiscard |
The maximum size of sysex messages to accept and to produce.
References juce::withMember(), and x.
|
inlinenodiscard |
Specifies a profile delegate that can be used to respond to particular profile events.
The referenced ProfileDelegate must outlive the Device.
References juce::withMember(), and x.
|
inlinenodiscard |
Specifies a property delegate that can be used to respond to particular property events.
The referenced PropertyDelegate must outlive the Device.
References juce::withMember(), and x.
|
inlinenodiscard |
Specifies a product instance ID that will be returned in endpoint response messages.
References jassertfalse, juce::withMember(), and x.
|
inlinenodiscard |
|
inlinenodiscard |
|
inlinenodiscard |
|
inlinenodiscard |
|
inlinenodiscard |
|
inlinenodiscard |
|
inlinenodiscard |
|
inlinenodiscard |
|
staticconstexpr |
|
staticconstexpr |