Loading...
Searching...
No Matches
midi_ci::DeviceFeatures Class Reference

Flags indicating the features that are supported by a given CI device. More...

#include <juce_CIDeviceFeatures.h>

Public Member Functions

 DeviceFeatures ()=default
 Constructs a DeviceFeatures object with no flags enabled.
 
 DeviceFeatures (std::byte f)
 Constructs a DeviceFeatures object, taking flag values from the "Capability Inquiry Category Supported" byte in a CI Discovery message.
 
DeviceFeatures withProfileConfigurationSupported (bool x=true) const
 Returns a new DeviceFeatures instance with profile configuration marked as supported.
 
DeviceFeatures withPropertyExchangeSupported (bool x=true) const
 Returns a new DeviceFeatures instance with property exchange marked as supported.
 
DeviceFeatures withProcessInquirySupported (bool x=true) const
 Returns a new DeviceFeatures instance with process inquiry marked as supported.
 
bool isProfileConfigurationSupported () const
 
bool isPropertyExchangeSupported () const
 
bool isProcessInquirySupported () const
 
std::byte getSupportedCapabilities () const
 Returns the feature flags formatted into a bitfield suitable for use as the "Capability Inquiry Category Supported" byte in a CI Discovery message.
 
bool operator== (const DeviceFeatures &other) const
 Returns true if this and other both have the same flags set.
 
bool operator!= (const DeviceFeatures &other) const
 Returns true if any flags in this and other differ.
 

Detailed Description

Flags indicating the features that are supported by a given CI device.

Constructor & Destructor Documentation

◆ DeviceFeatures() [1/2]

midi_ci::DeviceFeatures::DeviceFeatures ( )
default

Constructs a DeviceFeatures object with no flags enabled.

◆ DeviceFeatures() [2/2]

midi_ci::DeviceFeatures::DeviceFeatures ( std::byte f)
explicit

Constructs a DeviceFeatures object, taking flag values from the "Capability Inquiry Category Supported" byte in a CI Discovery message.

Member Function Documentation

◆ withProfileConfigurationSupported()

DeviceFeatures midi_ci::DeviceFeatures::withProfileConfigurationSupported ( bool x = true) const
nodiscard

Returns a new DeviceFeatures instance with profile configuration marked as supported.

References x.

◆ withPropertyExchangeSupported()

DeviceFeatures midi_ci::DeviceFeatures::withPropertyExchangeSupported ( bool x = true) const
nodiscard

Returns a new DeviceFeatures instance with property exchange marked as supported.

References x.

◆ withProcessInquirySupported()

DeviceFeatures midi_ci::DeviceFeatures::withProcessInquirySupported ( bool x = true) const
nodiscard

Returns a new DeviceFeatures instance with process inquiry marked as supported.

References x.

◆ isProfileConfigurationSupported()

bool midi_ci::DeviceFeatures::isProfileConfigurationSupported ( ) const
nodiscard

◆ isPropertyExchangeSupported()

bool midi_ci::DeviceFeatures::isPropertyExchangeSupported ( ) const
nodiscard

◆ isProcessInquirySupported()

bool midi_ci::DeviceFeatures::isProcessInquirySupported ( ) const
nodiscard

◆ getSupportedCapabilities()

std::byte midi_ci::DeviceFeatures::getSupportedCapabilities ( ) const

Returns the feature flags formatted into a bitfield suitable for use as the "Capability Inquiry Category Supported" byte in a CI Discovery message.

◆ operator==()

bool midi_ci::DeviceFeatures::operator== ( const DeviceFeatures & other) const

Returns true if this and other both have the same flags set.

Referenced by operator!=().

◆ operator!=()

bool midi_ci::DeviceFeatures::operator!= ( const DeviceFeatures & other) const

Returns true if any flags in this and other differ.

References operator==().


The documentation for this class was generated from the following file:
linkedin facebook pinterest youtube rss twitter instagram facebook-blank rss-blank linkedin-blank pinterest youtube twitter instagram