Enum ResponseParameterData

Source
#[non_exhaustive]
pub enum ResponseParameterData {
Show 108 variants DiscMute { control_field: u16, binding_uid: Option<DeviceUID>, }, DiscUnMute { control_field: u16, binding_uid: Option<DeviceUID>, }, GetProxiedDeviceCount { device_count: u16, list_change: bool, }, GetProxiedDevices(Vec<DeviceUID>), GetCommsStatus { short_message: u16, length_mismatch: u16, checksum_fail: u16, }, GetStatusMessages(Vec<StatusMessage>), GetStatusIdDescription(String), GetSubDeviceIdStatusReportThreshold(StatusType), GetSupportedParameters(Vec<u16>), GetParameterDescription(ParameterDescription), GetDeviceInfo { protocol_version: ProtocolVersion, model_id: u16, product_category: ProductCategory, software_version_id: u32, footprint: u16, current_personality: u8, personality_count: u8, start_address: u16, sub_device_count: u16, sensor_count: u8, }, GetProductDetailIdList(Vec<ProductDetail>), GetDeviceModelDescription(String), GetManufacturerLabel(String), GetDeviceLabel(String), GetFactoryDefaults(bool), GetLanguageCapabilities(Vec<String>), GetLanguage(String), GetSoftwareVersionLabel(String), GetBootSoftwareVersionId(u32), GetBootSoftwareVersionLabel(String), GetDmxPersonality { current_personality: u8, personality_count: u8, }, GetDmxPersonalityDescription { id: u8, dmx_slots_required: u16, description: String, }, GetDmxStartAddress(u16), GetSlotInfo(Vec<SlotInfo>), GetSlotDescription { slot_id: u16, description: String, }, GetDefaultSlotValue(Vec<DefaultSlotValue>), GetSensorDefinition(SensorDefinition), GetSensorValue(SensorValue), SetSensorValue(SensorValue), GetDeviceHours(u32), GetLampHours(u32), GetLampStrikes(u32), GetLampState(LampState), GetLampOnMode(LampOnMode), GetDevicePowerCycles(u32), GetDisplayInvert(DisplayInvertMode), GetDisplayLevel(u8), GetPanInvert(bool), GetTiltInvert(bool), GetPanTiltSwap(bool), GetRealTimeClock { year: u16, month: u8, day: u8, hour: u8, minute: u8, second: u8, }, GetIdentifyDevice(bool), GetPowerState(PowerState), GetPerformSelfTest(bool), GetSelfTestDescription { self_test_id: SelfTest, description: String, }, GetPresetPlayback { mode: PresetPlaybackMode, level: u8, }, GetDmxBlockAddress { total_sub_device_footprint: u16, base_dmx_address: u16, }, GetDmxFailMode { scene_id: PresetPlaybackMode, loss_of_signal_delay: TimeMode, hold_time: TimeMode, level: u8, }, GetDmxStartupMode { scene_id: PresetPlaybackMode, startup_delay: TimeMode, hold_time: TimeMode, level: u8, }, GetPowerOnSelfTest(bool), GetLockState { lock_state_id: u8, lock_state_count: u8, }, GetLockStateDescription { lock_state_id: u8, description: String, }, GetLockPin(PinCode), GetBurnIn(u8), GetDimmerInfo { minimum_level_lower_limit: u16, minimum_level_upper_limit: u16, maximum_level_lower_limit: u16, maximum_level_upper_limit: u16, number_of_supported_curves: u8, levels_resolution: u8, minimum_level_split_levels_supported: bool, }, GetMinimumLevel { minimum_level_increasing: u16, minimum_level_decreasing: u16, on_below_minimum: bool, }, GetMaximumLevel(u16), GetCurve { curve_id: u8, curve_count: u8, }, GetCurveDescription { curve_id: u8, description: String, }, GetOutputResponseTime { response_time_id: u8, response_time_count: u8, }, GetOutputResponseTimeDescription { response_time_id: u8, description: String, }, GetModulationFrequency { modulation_frequency_id: u8, modulation_frequency_count: u8, }, GetModulationFrequencyDescription { modulation_frequency_id: u8, frequency: u32, description: String, }, GetPresetInfo {
Show 19 fields level_field_supported: bool, preset_sequence_supported: bool, split_times_supported: bool, dmx_fail_infinite_delay_time_supported: bool, dmx_fail_infinite_hold_time_supported: bool, startup_infinite_hold_time_supported: bool, maximum_scene_number: u16, minimum_preset_fade_time_supported: u16, maximum_preset_fade_time_supported: u16, minimum_preset_wait_time_supported: u16, maximum_preset_wait_time_supported: u16, minimum_dmx_fail_delay_time_supported: SupportedTimes, maximum_dmx_fail_delay_time_supported: SupportedTimes, minimum_dmx_fail_hold_time_supported: SupportedTimes, maximum_dmx_fail_hold_time_supported: SupportedTimes, minimum_startup_delay_time_supported: SupportedTimes, maximum_startup_delay_time_supported: SupportedTimes, minimum_startup_hold_time_supported: SupportedTimes, maximum_startup_hold_time_supported: SupportedTimes,
}, GetPresetStatus { scene_id: u16, up_fade_time: u16, down_fade_time: u16, wait_time: u16, programmed: PresetProgrammed, }, GetPresetMergeMode(MergeMode), GetListInterfaces(Vec<NetworkInterface>), GetInterfaceLabel { interface_id: u32, interface_label: String, }, GetInterfaceHardwareAddressType1 { interface_id: u32, hardware_address: MacAddr6, }, GetIpV4DhcpMode { interface_id: u32, dhcp_mode: bool, }, GetIpV4ZeroConfMode { interface_id: u32, zero_conf_mode: bool, }, GetIpV4CurrentAddress { interface_id: u32, address: Ipv4Address, netmask: u8, dhcp_status: DhcpMode, }, GetIpV4StaticAddress { interface_id: u32, address: Ipv4Address, netmask: u8, }, GetIpV4DefaultRoute { interface_id: u32, address: Ipv4Route, }, GetDnsIpV4NameServer { name_server_index: u8, address: Ipv4Address, }, GetDnsHostName(String), GetDnsDomainName(String), GetEndpointList { list_change_number: u32, endpoint_list: Vec<(EndpointId, EndpointType)>, }, GetEndpointListChange { list_change_number: u32, }, GetIdentifyEndpoint { endpoint_id: EndpointId, identify: bool, }, SetIdentifyEndpoint { endpoint_id: EndpointId, }, GetEndpointToUniverse { endpoint_id: EndpointId, universe: u16, }, SetEndpointToUniverse { endpoint_id: EndpointId, }, GetEndpointMode { endpoint_id: EndpointId, mode: EndpointMode, }, SetEndpointMode { endpoint_id: EndpointId, }, GetEndpointLabel { endpoint_id: EndpointId, label: String, }, SetEndpointLabel { endpoint_id: EndpointId, }, GetRdmTrafficEnable { endpoint_id: EndpointId, enable: bool, }, SetRdmTrafficEnable { endpoint_id: EndpointId, }, GetDiscoveryState { endpoint_id: EndpointId, device_count: DiscoveryCountStatus, discovery_state: DiscoveryState, }, SetDiscoveryState { endpoint_id: EndpointId, }, GetBackgroundDiscovery { endpoint_id: EndpointId, enabled: bool, }, SetBackgroundDiscovery { endpoint_id: EndpointId, }, GetEndpointTiming { endpoint_id: EndpointId, current_setting_id: u8, setting_count: u8, }, SetEndpointTiming { endpoint_id: EndpointId, }, GetEndpointTimingDescription { setting_id: u8, description: String, }, GetEndpointResponders { endpoint_id: EndpointId, list_change_number: u32, responders: Vec<DeviceUID>, }, GetEndpointResponderListChange { endpoint_id: EndpointId, list_change_number: u32, }, GetBindingControlFields { endpoint_id: EndpointId, uid: DeviceUID, control_field: u16, binding_uid: DeviceUID, }, GetBackgroundQueuedStatusPolicy { current_policy_id: u8, policy_count: u8, }, GetBackgroundQueuedStatusPolicyDescription { policy_id: u8, description: String, }, GetComponentScope { scope_slot: u16, scope_string: String, static_config_type: StaticConfigType, static_ipv4_address: Ipv4Address, static_ipv6_address: Ipv6Address, static_port: u16, }, GetSearchDomain(String), GetTcpCommsStatus { scope_string: String, broker_ipv4_address: Ipv4Address, broker_ipv6_address: Ipv6Address, broker_port: u16, unhealthy_tcp_events: u16, }, GetBrokerStatus { is_allowing_set_commands: bool, broker_state: BrokerState, }, ManufacturerSpecific(Vec<u8>), Unsupported(Vec<u8>),
}

Variants (Non-exhaustive)§

This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
§

DiscMute

Fields

§control_field: u16
§binding_uid: Option<DeviceUID>
§

DiscUnMute

Fields

§control_field: u16
§binding_uid: Option<DeviceUID>
§

GetProxiedDeviceCount

Fields

§device_count: u16
§list_change: bool
§

GetProxiedDevices(Vec<DeviceUID>)

§

GetCommsStatus

Fields

§short_message: u16
§length_mismatch: u16
§checksum_fail: u16
§

GetStatusMessages(Vec<StatusMessage>)

§

GetStatusIdDescription(String)

§

GetSubDeviceIdStatusReportThreshold(StatusType)

§

GetSupportedParameters(Vec<u16>)

§

GetParameterDescription(ParameterDescription)

§

GetDeviceInfo

Fields

§protocol_version: ProtocolVersion
§model_id: u16
§product_category: ProductCategory
§software_version_id: u32
§footprint: u16
§current_personality: u8
§personality_count: u8
§start_address: u16
§sub_device_count: u16
§sensor_count: u8
§

GetProductDetailIdList(Vec<ProductDetail>)

§

GetDeviceModelDescription(String)

§

GetManufacturerLabel(String)

§

GetDeviceLabel(String)

§

GetFactoryDefaults(bool)

§

GetLanguageCapabilities(Vec<String>)

§

GetLanguage(String)

§

GetSoftwareVersionLabel(String)

§

GetBootSoftwareVersionId(u32)

§

GetBootSoftwareVersionLabel(String)

§

GetDmxPersonality

Fields

§current_personality: u8
§personality_count: u8
§

GetDmxPersonalityDescription

Fields

§id: u8
§dmx_slots_required: u16
§description: String
§

GetDmxStartAddress(u16)

§

GetSlotInfo(Vec<SlotInfo>)

§

GetSlotDescription

Fields

§slot_id: u16
§description: String
§

GetDefaultSlotValue(Vec<DefaultSlotValue>)

§

GetSensorDefinition(SensorDefinition)

§

GetSensorValue(SensorValue)

§

SetSensorValue(SensorValue)

§

GetDeviceHours(u32)

§

GetLampHours(u32)

§

GetLampStrikes(u32)

§

GetLampState(LampState)

§

GetLampOnMode(LampOnMode)

§

GetDevicePowerCycles(u32)

§

GetDisplayInvert(DisplayInvertMode)

§

GetDisplayLevel(u8)

§

GetPanInvert(bool)

§

GetTiltInvert(bool)

§

GetPanTiltSwap(bool)

§

GetRealTimeClock

Fields

§year: u16
§month: u8
§day: u8
§hour: u8
§minute: u8
§second: u8
§

GetIdentifyDevice(bool)

§

GetPowerState(PowerState)

§

GetPerformSelfTest(bool)

§

GetSelfTestDescription

Fields

§self_test_id: SelfTest
§description: String
§

GetPresetPlayback

Fields

§level: u8
§

GetDmxBlockAddress

Fields

§total_sub_device_footprint: u16
§base_dmx_address: u16
§

GetDmxFailMode

Fields

§loss_of_signal_delay: TimeMode
§hold_time: TimeMode
§level: u8
§

GetDmxStartupMode

Fields

§startup_delay: TimeMode
§hold_time: TimeMode
§level: u8
§

GetPowerOnSelfTest(bool)

§

GetLockState

Fields

§lock_state_id: u8
§lock_state_count: u8
§

GetLockStateDescription

Fields

§lock_state_id: u8
§description: String
§

GetLockPin(PinCode)

§

GetBurnIn(u8)

§

GetDimmerInfo

Fields

§minimum_level_lower_limit: u16
§minimum_level_upper_limit: u16
§maximum_level_lower_limit: u16
§maximum_level_upper_limit: u16
§number_of_supported_curves: u8
§levels_resolution: u8
§minimum_level_split_levels_supported: bool
§

GetMinimumLevel

Fields

§minimum_level_increasing: u16
§minimum_level_decreasing: u16
§on_below_minimum: bool
§

GetMaximumLevel(u16)

§

GetCurve

Fields

§curve_id: u8
§curve_count: u8
§

GetCurveDescription

Fields

§curve_id: u8
§description: String
§

GetOutputResponseTime

Fields

§response_time_id: u8
§response_time_count: u8
§

GetOutputResponseTimeDescription

Fields

§response_time_id: u8
§description: String
§

GetModulationFrequency

Fields

§modulation_frequency_id: u8
§modulation_frequency_count: u8
§

GetModulationFrequencyDescription

Fields

§modulation_frequency_id: u8
§frequency: u32
§description: String
§

GetPresetInfo

Fields

§level_field_supported: bool
§preset_sequence_supported: bool
§split_times_supported: bool
§dmx_fail_infinite_delay_time_supported: bool
§dmx_fail_infinite_hold_time_supported: bool
§startup_infinite_hold_time_supported: bool
§maximum_scene_number: u16
§minimum_preset_fade_time_supported: u16
§maximum_preset_fade_time_supported: u16
§minimum_preset_wait_time_supported: u16
§maximum_preset_wait_time_supported: u16
§minimum_dmx_fail_delay_time_supported: SupportedTimes
§maximum_dmx_fail_delay_time_supported: SupportedTimes
§minimum_dmx_fail_hold_time_supported: SupportedTimes
§maximum_dmx_fail_hold_time_supported: SupportedTimes
§minimum_startup_delay_time_supported: SupportedTimes
§maximum_startup_delay_time_supported: SupportedTimes
§minimum_startup_hold_time_supported: SupportedTimes
§maximum_startup_hold_time_supported: SupportedTimes
§

GetPresetStatus

Fields

§scene_id: u16
§up_fade_time: u16
§down_fade_time: u16
§wait_time: u16
§programmed: PresetProgrammed
§

GetPresetMergeMode(MergeMode)

§

GetListInterfaces(Vec<NetworkInterface>)

§

GetInterfaceLabel

Fields

§interface_id: u32
§interface_label: String
§

GetInterfaceHardwareAddressType1

Fields

§interface_id: u32
§hardware_address: MacAddr6
§

GetIpV4DhcpMode

Fields

§interface_id: u32
§dhcp_mode: bool
§

GetIpV4ZeroConfMode

Fields

§interface_id: u32
§zero_conf_mode: bool
§

GetIpV4CurrentAddress

Fields

§interface_id: u32
§address: Ipv4Address
§netmask: u8
§dhcp_status: DhcpMode
§

GetIpV4StaticAddress

Fields

§interface_id: u32
§address: Ipv4Address
§netmask: u8
§

GetIpV4DefaultRoute

Fields

§interface_id: u32
§address: Ipv4Route
§

GetDnsIpV4NameServer

Fields

§name_server_index: u8
§address: Ipv4Address
§

GetDnsHostName(String)

§

GetDnsDomainName(String)

§

GetEndpointList

Fields

§list_change_number: u32
§endpoint_list: Vec<(EndpointId, EndpointType)>
§

GetEndpointListChange

Fields

§list_change_number: u32
§

GetIdentifyEndpoint

Fields

§endpoint_id: EndpointId
§identify: bool
§

SetIdentifyEndpoint

Fields

§endpoint_id: EndpointId
§

GetEndpointToUniverse

Fields

§endpoint_id: EndpointId
§universe: u16
§

SetEndpointToUniverse

Fields

§endpoint_id: EndpointId
§

GetEndpointMode

Fields

§endpoint_id: EndpointId
§

SetEndpointMode

Fields

§endpoint_id: EndpointId
§

GetEndpointLabel

Fields

§endpoint_id: EndpointId
§label: String
§

SetEndpointLabel

Fields

§endpoint_id: EndpointId
§

GetRdmTrafficEnable

Fields

§endpoint_id: EndpointId
§enable: bool
§

SetRdmTrafficEnable

Fields

§endpoint_id: EndpointId
§

GetDiscoveryState

Fields

§endpoint_id: EndpointId
§discovery_state: DiscoveryState
§

SetDiscoveryState

Fields

§endpoint_id: EndpointId
§

GetBackgroundDiscovery

Fields

§endpoint_id: EndpointId
§enabled: bool
§

SetBackgroundDiscovery

Fields

§endpoint_id: EndpointId
§

GetEndpointTiming

Fields

§endpoint_id: EndpointId
§current_setting_id: u8
§setting_count: u8
§

SetEndpointTiming

Fields

§endpoint_id: EndpointId
§

GetEndpointTimingDescription

Fields

§setting_id: u8
§description: String
§

GetEndpointResponders

Fields

§endpoint_id: EndpointId
§list_change_number: u32
§responders: Vec<DeviceUID>
§

GetEndpointResponderListChange

Fields

§endpoint_id: EndpointId
§list_change_number: u32
§

GetBindingControlFields

Fields

§endpoint_id: EndpointId
§control_field: u16
§binding_uid: DeviceUID
§

GetBackgroundQueuedStatusPolicy

Fields

§current_policy_id: u8
§policy_count: u8
§

GetBackgroundQueuedStatusPolicyDescription

Fields

§policy_id: u8
§description: String
§

GetComponentScope

Fields

§scope_slot: u16
§scope_string: String
§static_config_type: StaticConfigType
§static_ipv4_address: Ipv4Address
§static_ipv6_address: Ipv6Address
§static_port: u16
§

GetSearchDomain(String)

§

GetTcpCommsStatus

Fields

§scope_string: String
§broker_ipv4_address: Ipv4Address
§broker_ipv6_address: Ipv6Address
§broker_port: u16
§unhealthy_tcp_events: u16
§

GetBrokerStatus

Fields

§is_allowing_set_commands: bool
§broker_state: BrokerState
§

ManufacturerSpecific(Vec<u8>)

§

Unsupported(Vec<u8>)

Implementations§

Source§

impl ResponseParameterData

Source

pub fn encode(&self) -> EncodedParameterData

Source

pub fn decode( command_class: CommandClass, parameter_id: ParameterId, bytes: &[u8], ) -> Result<Self, RdmError>

Trait Implementations§

Source§

impl Clone for ResponseParameterData

Source§

fn clone(&self) -> ResponseParameterData

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for ResponseParameterData

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl PartialEq for ResponseParameterData

Source§

fn eq(&self, other: &ResponseParameterData) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl StructuralPartialEq for ResponseParameterData

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.