Skip to main content

mxr_callbacks_t

Struct mxr_callbacks_t 

Source
#[repr(C)]
pub struct mxr_callbacks_t {
Show 75 fields pub on_device_update: mxr_device_cb, pub on_bay_update: mxr_bay_cb, pub on_device_config_changed: mxr_device_cb, pub on_device_config_complete: mxr_device_cb, pub on_device_online_changed: mxr_device_bool_cb, pub on_device_temperature_changed: mxr_device_cb, pub on_firmware_version_changed: mxr_device_cb, pub on_system_status_changed: mxr_system_status_cb, pub on_network_status_changed: mxr_device_cb, pub on_v2ip_stats_changed: mxr_device_cb, pub on_v2ip_sources_changed: mxr_device_cb, pub on_v2ip_details_changed: mxr_device_cb, pub on_v2ip_sink_changed: mxr_device_cb, pub on_multiviewer_status_changed: mxr_device_cb, pub on_audio_endpoints_changed: mxr_device_cb, pub on_mesh_master_changed: mxr_device_uid_cb, pub on_topology_changed: mxr_device_cb, pub on_amp_dolby_settings_changed: mxr_device_cb, pub on_setup_status_changed: mxr_device_bool_cb, pub on_installer_id_changed: mxr_device_u16_cb, pub on_tiling_changed: mxr_device_cb, pub on_rc_settings_changed: mxr_device_cb, pub on_v2ip_link_changed: mxr_device_uid_cb, pub on_multiviewer_command: mxr_multiviewer_command_cb, pub on_audio_select_input: mxr_audio_select_cb, pub on_audio_endpoint_mute: mxr_endpoint_bool_cb, pub on_audio_endpoint_trigger: mxr_endpoint_bool_cb, pub on_audio_endpoint_volume: mxr_endpoint_u32_cb, pub on_discover_request: mxr_device_cb, pub on_set_route_requested: mxr_set_route_cb, pub on_edid_requested: mxr_edid_request_cb, pub on_edid_received: mxr_edid_record_cb, pub on_bay_name_change_requested: mxr_bay_name_change_cb, pub on_edid_profile_change_requested: mxr_edid_profile_change_cb, pub on_reboot_requested: mxr_device_uid_cb, pub on_factory_reset_requested: mxr_factory_reset_cb, pub on_monitoring_pulse: mxr_device_cb, pub on_upgrade_fpga_requested: mxr_device_cb, pub on_detect_bays_requested: mxr_device_cb, pub on_power_save_requested: mxr_power_save_cb, pub on_key_transmit_requested: mxr_key_transmit_cb, pub on_action_transmit_requested: mxr_action_transmit_cb, pub on_ir_transmit_requested: mxr_ir_transmit_cb, pub on_blacklist_changed: mxr_blacklist_cb, pub on_video_wall_command: mxr_video_wall_cb, pub on_bay_registered: mxr_bay_cb, pub on_video_source_changed: mxr_bay_bay_cb, pub on_audio_source_changed: mxr_bay_bay_cb, pub on_volume_changed: mxr_volume_cb, pub on_power_changed: mxr_power_cb, pub on_name_changed: mxr_bay_str_cb, pub on_signal_detected_changed: mxr_bay_bool_cb, pub on_faulty_changed: mxr_bay_bool_cb, pub on_hidden_changed: mxr_bay_bool_cb, pub on_poe_powered_changed: mxr_bay_bool_cb, pub on_hdbt_connected_changed: mxr_bay_bool_cb, pub on_signal_type_changed: mxr_bay_str_cb, pub on_hpd_detected_changed: mxr_bay_bool_cb, pub on_cec_detected_changed: mxr_bay_bool_cb, pub on_arc_changed: mxr_arc_cb, pub on_edid_profile_changed: mxr_bay_u16_cb, pub on_rc_type_changed: mxr_bay_u8_cb, pub on_key_pressed: mxr_bay_u16_cb, pub on_action_received: mxr_bay_u16_cb, pub on_mirror_status_changed: mxr_bay_bay_cb, pub on_amp_zone_settings_changed: mxr_bay_cb, pub on_volume_step: mxr_bay_bool_cb, pub on_audio_clip: mxr_bay_u8_cb, pub on_ir_captured: mxr_ir_capture_cb, pub on_filtered_devices_changed: mxr_bay_cb, pub on_audio_endpoint_changed: mxr_bay_u8_cb, pub on_encoder_disabled_changed: mxr_bay_bool_cb, pub on_decoder_disabled_changed: mxr_bay_bool_cb, pub on_bay_linked: mxr_bay_linked_cb, pub on_bay_unlinked: mxr_bay_unlinked_cb,
}
Expand description

What to call when something happens.

Zero the whole struct and fill in only what is wanted: a null member drops its event. userdata is whatever was passed to mxr_remote_new() and is never examined here.

Fields§

§on_device_update: mxr_device_cb

Fires after every device-level event below.

§on_bay_update: mxr_bay_cb

Fires after every bay-level event below.

§on_device_config_changed: mxr_device_cb

The device’s configuration changed.

§on_device_config_complete: mxr_device_cb

The device has reported every part of its configuration.

§on_device_online_changed: mxr_device_bool_cb

The device started or stopped answering.

§on_device_temperature_changed: mxr_device_cb

The device reported new temperatures; read them with mxr_device_temperatures().

§on_firmware_version_changed: mxr_device_cb

A firmware component reported its version; read it with mxr_device_firmware().

§on_system_status_changed: mxr_system_status_cb

The device reported a status about itself.

§on_network_status_changed: mxr_device_cb

A network port reported its link state; read it with mxr_network_status().

§on_v2ip_stats_changed: mxr_device_cb

The device reported V2IP statistics; read them with mxr_v2ip_stats().

§on_v2ip_sources_changed: mxr_device_cb

The streams the device’s source bays advertise changed; read them with mxr_v2ip_sources().

§on_v2ip_details_changed: mxr_device_cb

The device’s V2IP encoder configuration changed; read it with mxr_v2ip_details().

§on_v2ip_sink_changed: mxr_device_cb

The streams the device’s sink is subscribed to changed; read them with mxr_v2ip_sink().

A route request addressed to the device fires this as soon as it is seen, so this reports what the mesh now believes rather than what the device confirmed - it acknowledges nothing, and only its own configuration report, sent on its own schedule, settles a route.

§on_multiviewer_status_changed: mxr_device_cb

A multiviewer reported its state; read it with mxr_multiviewer_status().

§on_audio_endpoints_changed: mxr_device_cb

The device reported its audio endpoint tree; read it with mxr_audio_endpoints().

§on_mesh_master_changed: mxr_device_uid_cb

The device reported its mesh master.

§on_topology_changed: mxr_device_cb

The device reported its view of the mesh topology; read it with mxr_topology().

§on_amp_dolby_settings_changed: mxr_device_cb

A ProAmp8 reported its Dolby settings; read them with mxr_dolby_settings().

§on_setup_status_changed: mxr_device_bool_cb

Installer setup was completed or cleared.

§on_installer_id_changed: mxr_device_u16_cb

The installer identifier changed.

§on_tiling_changed: mxr_device_cb

The sink was told to show a window; read it with mxr_v2ip_tiling().

§on_rc_settings_changed: mxr_device_cb

A source bay’s remote-control configuration changed; read it with mxr_rc_settings().

§on_v2ip_link_changed: mxr_device_uid_cb

A V2IP device was linked to a remote peer.

§on_multiviewer_command: mxr_multiviewer_command_cb

A multiviewer command arrived.

§on_audio_select_input: mxr_audio_select_cb

An audio endpoint was switched to a new source.

§on_audio_endpoint_mute: mxr_endpoint_bool_cb

An audio endpoint was muted or unmuted.

§on_audio_endpoint_trigger: mxr_endpoint_bool_cb

An audio endpoint’s trigger changed.

§on_audio_endpoint_volume: mxr_endpoint_u32_cb

An audio endpoint’s volume changed.

§on_discover_request: mxr_device_cb

A peer asked every device to announce itself.

§on_set_route_requested: mxr_set_route_cb

A peer asked a device to switch a sink.

§on_edid_requested: mxr_edid_request_cb

A peer asked a device for its EDID.

§on_edid_received: mxr_edid_record_cb

A device answered with its EDID.

§on_bay_name_change_requested: mxr_bay_name_change_cb

A peer asked a device to rename a bay.

§on_edid_profile_change_requested: mxr_edid_profile_change_cb

A peer asked a device to switch its EDID profile.

§on_reboot_requested: mxr_device_uid_cb

A peer asked a device to reboot. The second identifier is the device being asked, which is not always the sender.

§on_factory_reset_requested: mxr_factory_reset_cb

A peer asked devices to factory-reset.

§on_monitoring_pulse: mxr_device_cb

A device sent its monitoring pulse.

§on_upgrade_fpga_requested: mxr_device_cb

A peer asked a device to upgrade its FPGA.

§on_detect_bays_requested: mxr_device_cb

A peer asked a device to re-detect its bays.

§on_power_save_requested: mxr_power_save_cb

A peer asked a sink to enter or leave power save.

§on_key_transmit_requested: mxr_key_transmit_cb

A peer asked a device to send a remote-control key.

§on_action_transmit_requested: mxr_action_transmit_cb

A peer asked a device to perform a remote-control action.

§on_ir_transmit_requested: mxr_ir_transmit_cb

A peer asked a device to blast raw infrared.

§on_blacklist_changed: mxr_blacklist_cb

A device was added to or removed from the source blacklist.

§on_video_wall_command: mxr_video_wall_cb

A video wall command arrived.

§on_bay_registered: mxr_bay_cb

A bay was seen for the first time.

§on_video_source_changed: mxr_bay_bay_cb

The bay’s routed video source changed, zero when it was unrouted.

§on_audio_source_changed: mxr_bay_bay_cb

The bay’s routed audio source changed, zero when it was unrouted.

§on_volume_changed: mxr_volume_cb

The bay’s volume or mute state changed.

§on_power_changed: mxr_power_cb

The attached device’s power state changed.

§on_name_changed: mxr_bay_str_cb

The bay was renamed.

§on_signal_detected_changed: mxr_bay_bool_cb

A signal appeared or disappeared.

§on_faulty_changed: mxr_bay_bool_cb

The bay started or stopped reporting a fault.

§on_hidden_changed: mxr_bay_bool_cb

The bay was hidden or shown.

§on_poe_powered_changed: mxr_bay_bool_cb

Power over Ethernet started or stopped supplying the bay.

§on_hdbt_connected_changed: mxr_bay_bool_cb

The HDBaseT link came up or went down.

§on_signal_type_changed: mxr_bay_str_cb

The signal format description changed.

§on_hpd_detected_changed: mxr_bay_bool_cb

Hot-plug detect was asserted or released.

§on_cec_detected_changed: mxr_bay_bool_cb

A CEC device answered or stopped answering.

§on_arc_changed: mxr_arc_cb

The audio return channel changed.

§on_edid_profile_changed: mxr_bay_u16_cb

The input’s EDID profile changed.

§on_rc_type_changed: mxr_bay_u8_cb

The input’s remote-control type changed.

§on_key_pressed: mxr_bay_u16_cb

A remote-control key was pressed on the bay.

§on_action_received: mxr_bay_u16_cb

A remote-control action was received on the bay.

§on_mirror_status_changed: mxr_bay_bay_cb

The bay started or stopped mirroring another output, zero when it stopped.

§on_amp_zone_settings_changed: mxr_bay_cb

A ProAmp8 zone’s settings changed; read them with mxr_bay_amp_settings().

§on_volume_step: mxr_bay_bool_cb

A volume step was requested on the bay.

§on_audio_clip: mxr_bay_u8_cb

The bay detected audio clipping, at the reported level.

§on_ir_captured: mxr_ir_capture_cb

Raw infrared was captured on the bay.

§on_filtered_devices_changed: mxr_bay_cb

The devices filtered out of this sink’s picker changed; read them with mxr_bay_filtered().

§on_audio_endpoint_changed: mxr_bay_u8_cb

The audio endpoint the bay carries changed.

§on_encoder_disabled_changed: mxr_bay_bool_cb

The bay’s V2IP encoder was enabled or disabled.

§on_decoder_disabled_changed: mxr_bay_bool_cb

The bay’s V2IP decoder was enabled or disabled.

§on_bay_linked: mxr_bay_linked_cb

The bay was linked to a bay on another device. Both ends are told, so both fire: bay_name names the bay whose link record changed, which is this bay on the device that reported the change and the far bay on its peer.

§on_bay_unlinked: mxr_bay_unlinked_cb

The bay’s link to another device was removed. The arguments describe the link that went, and mean what they do on on_bay_linked.

Trait Implementations§

Source§

impl Clone for mxr_callbacks_t

Source§

fn clone(&self) -> mxr_callbacks_t

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

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

Performs copy-assignment from source. Read more
Source§

impl Copy for mxr_callbacks_t

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 = !

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

fn try_from(value: U) -> Result<T, !>

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.