#[non_exhaustive]#[repr(u8)]pub enum Message {
Show 76 variants
ActiveSource {
address: PhysicalAddress,
},
ImageViewOn = 4,
TextViewOn = 13,
InactiveSource {
address: PhysicalAddress,
},
RequestActiveSource = 133,
RoutingChange {
original_address: PhysicalAddress,
new_address: PhysicalAddress,
},
RoutingInformation {
address: PhysicalAddress,
},
SetStreamPath {
address: PhysicalAddress,
},
Standby = 54,
RecordOff = 11,
RecordOn {
source: RecordSource,
},
RecordStatus {
status: RecordStatusInfo,
},
RecordTvScreen = 15,
ClearAnalogueTimer {
day_of_month: DayOfMonth,
month_of_year: MonthOfYear,
start_time: Time,
duration: Duration,
recording_sequence: RecordingSequence,
service_id: AnalogueServiceId,
},
ClearDigitalTimer {
day_of_month: DayOfMonth,
month_of_year: MonthOfYear,
start_time: Time,
duration: Duration,
recording_sequence: RecordingSequence,
service_id: DigitalServiceId,
},
ClearExtTimer {
day_of_month: DayOfMonth,
month_of_year: MonthOfYear,
start_time: Time,
duration: Duration,
recording_sequence: RecordingSequence,
external_source: ExternalSource,
},
SetAnalogueTimer {
day_of_month: DayOfMonth,
month_of_year: MonthOfYear,
start_time: Time,
duration: Duration,
recording_sequence: RecordingSequence,
service_id: AnalogueServiceId,
},
SetDigitalTimer {
day_of_month: DayOfMonth,
month_of_year: MonthOfYear,
start_time: Time,
duration: Duration,
recording_sequence: RecordingSequence,
service_id: DigitalServiceId,
},
SetExtTimer {
day_of_month: DayOfMonth,
month_of_year: MonthOfYear,
start_time: Time,
duration: Duration,
recording_sequence: RecordingSequence,
external_source: ExternalSource,
},
SetTimerProgramTitle {
title: BufferOperand,
},
TimerClearedStatus {
status: TimerClearedStatusData,
},
TimerStatus {
status: TimerStatusData,
},
CecVersion {
version: Version,
},
GetCecVersion = 159,
GivePhysicalAddr = 131,
GetMenuLanguage = 145,
ReportPhysicalAddr {
physical_address: PhysicalAddress,
device_type: PrimaryDeviceType,
},
SetMenuLanguage {
language: [u8; 3],
},
DeckControl {
mode: DeckControlMode,
},
DeckStatus {
info: DeckInfo,
},
GiveDeckStatus {
request: StatusRequest,
},
Play {
mode: PlayMode,
},
GiveTunerDeviceStatus {
request: StatusRequest,
},
SelectAnalogueService {
service_id: AnalogueServiceId,
},
SelectDigitalService {
service_id: DigitalServiceId,
},
TunerDeviceStatus {
info: TunerDeviceInfo,
},
TunerStepDecrement = 6,
TunerStepIncrement = 5,
DeviceVendorId {
vendor_id: VendorId,
},
GiveDeviceVendorId = 140,
VendorCommand {
command: BufferOperand,
},
VendorCommandWithId {
vendor_id: VendorId,
vendor_specific_data: BoundedBufferOperand<11, u8>,
},
VendorRemoteButtonDown {
rc_code: BufferOperand,
},
VendorRemoteButtonUp = 139,
SetOsdString {
display_control: DisplayControl,
osd_string: BoundedBufferOperand<13, u8>,
},
GiveOsdName = 70,
SetOsdName {
name: BufferOperand,
},
MenuRequest {
request_type: MenuRequestType,
},
MenuStatus {
state: MenuState,
},
UserControlPressed {
ui_command: UiCommand,
},
UserControlReleased = 69,
GiveDevicePowerStatus = 143,
ReportPowerStatus {
status: PowerStatus,
},
FeatureAbort {
opcode: u8,
abort_reason: AbortReason,
},
Abort = 255,
GiveAudioStatus = 113,
GiveSystemAudioModeStatus = 125,
ReportAudioStatus {
status: AudioStatus,
},
ReportShortAudioDescriptor {
descriptors: BoundedBufferOperand<4, ShortAudioDescriptor>,
},
RequestShortAudioDescriptor {
descriptors: BoundedBufferOperand<4, AudioFormatIdAndCode>,
},
SetSystemAudioMode {
status: bool,
},
SystemAudioModeRequest {
physical_address: PhysicalAddress,
},
SystemAudioModeStatus {
status: bool,
},
SetAudioRate {
audio_rate: AudioRate,
},
InitiateArc = 192,
ReportArcInitiated = 193,
ReportArcTerminated = 194,
RequestArcInitiation = 195,
RequestArcTermination = 196,
TerminateArc = 197,
CdcMessage {
initiator: PhysicalAddress,
message: Message,
},
ReportFeatures {
version: Version,
device_types: AllDeviceTypes,
rc_profile: RcProfile,
device_features: DeviceFeatures,
},
GiveFeatures = 165,
RequestCurrentLatency {
physical_address: PhysicalAddress,
},
ReportCurrentLatency {
physical_address: PhysicalAddress,
video_latency: Delay,
flags: LatencyFlags,
audio_output_delay: Option<Delay>,
},
SetAudioVolumeLevel {
volume_level: AudioVolumeLevel,
},
}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.
ActiveSource
Fields
§
address: PhysicalAddressImageViewOn = 4
TextViewOn = 13
InactiveSource
Fields
§
address: PhysicalAddressRequestActiveSource = 133
RoutingChange
RoutingInformation
Fields
§
address: PhysicalAddressSetStreamPath
Fields
§
address: PhysicalAddressStandby = 54
RecordOff = 11
RecordOn
Fields
§
source: RecordSourceRecordStatus
Fields
§
status: RecordStatusInfoRecordTvScreen = 15
ClearAnalogueTimer
Fields
§
day_of_month: DayOfMonth§
month_of_year: MonthOfYear§
recording_sequence: RecordingSequence§
service_id: AnalogueServiceIdClearDigitalTimer
Fields
§
day_of_month: DayOfMonth§
month_of_year: MonthOfYear§
recording_sequence: RecordingSequence§
service_id: DigitalServiceIdClearExtTimer
Fields
§
day_of_month: DayOfMonth§
month_of_year: MonthOfYear§
recording_sequence: RecordingSequence§
external_source: ExternalSourceSetAnalogueTimer
Fields
§
day_of_month: DayOfMonth§
month_of_year: MonthOfYear§
recording_sequence: RecordingSequence§
service_id: AnalogueServiceIdSetDigitalTimer
Fields
§
day_of_month: DayOfMonth§
month_of_year: MonthOfYear§
recording_sequence: RecordingSequence§
service_id: DigitalServiceIdSetExtTimer
Fields
§
day_of_month: DayOfMonth§
month_of_year: MonthOfYear§
recording_sequence: RecordingSequence§
external_source: ExternalSourceSetTimerProgramTitle
Fields
§
title: BufferOperandTimerClearedStatus
Fields
§
status: TimerClearedStatusDataTimerStatus
Fields
§
status: TimerStatusDataCecVersion
GetCecVersion = 159
GivePhysicalAddr = 131
GetMenuLanguage = 145
ReportPhysicalAddr
SetMenuLanguage
DeckControl
Fields
§
mode: DeckControlModeDeckStatus
GiveDeckStatus
Fields
§
request: StatusRequestPlay
GiveTunerDeviceStatus
Fields
§
request: StatusRequestSelectAnalogueService
Fields
§
service_id: AnalogueServiceIdSelectDigitalService
Fields
§
service_id: DigitalServiceIdTunerDeviceStatus
Fields
§
info: TunerDeviceInfoTunerStepDecrement = 6
TunerStepIncrement = 5
DeviceVendorId
GiveDeviceVendorId = 140
VendorCommand
Fields
§
command: BufferOperandVendorCommandWithId
VendorRemoteButtonDown
Fields
§
rc_code: BufferOperandVendorRemoteButtonUp = 139
SetOsdString
GiveOsdName = 70
SetOsdName
Fields
§
name: BufferOperandMenuRequest
Fields
§
request_type: MenuRequestTypeMenuStatus
UserControlPressed
UserControlReleased = 69
GiveDevicePowerStatus = 143
ReportPowerStatus
Fields
§
status: PowerStatusFeatureAbort
Abort = 255
GiveAudioStatus = 113
GiveSystemAudioModeStatus = 125
ReportAudioStatus
Fields
§
status: AudioStatusReportShortAudioDescriptor
Fields
§
descriptors: BoundedBufferOperand<4, ShortAudioDescriptor>RequestShortAudioDescriptor
Fields
§
descriptors: BoundedBufferOperand<4, AudioFormatIdAndCode>SetSystemAudioMode
SystemAudioModeRequest
Fields
§
physical_address: PhysicalAddressSystemAudioModeStatus
SetAudioRate
InitiateArc = 192
ReportArcInitiated = 193
ReportArcTerminated = 194
RequestArcInitiation = 195
RequestArcTermination = 196
TerminateArc = 197
CdcMessage
ReportFeatures
GiveFeatures = 165
RequestCurrentLatency
Fields
§
physical_address: PhysicalAddressReportCurrentLatency
SetAudioVolumeLevel
Fields
§
volume_level: AudioVolumeLevelImplementations§
Source§impl Message
impl Message
pub fn opcode(&self) -> Opcode
Sourcepub fn can_directly_address(&self) -> bool
pub fn can_directly_address(&self) -> bool
Report whether or not this Message can be directly
addressed to a specific logical address.
Sourcepub fn can_broadcast(&self) -> bool
pub fn can_broadcast(&self) -> bool
Report whether or not this Message can be
broadcast to all logical addresses.
Sourcepub fn addressing_type(&self) -> AddressingType
pub fn addressing_type(&self) -> AddressingType
Get the AddressingType that reports whether this Message can be
addressed directly to a specific logical address, broadcast to all
logical addresses, or both.
Trait Implementations§
impl Copy for Message
impl Eq for Message
impl StructuralPartialEq for Message
Auto Trait Implementations§
impl Freeze for Message
impl RefUnwindSafe for Message
impl Send for Message
impl Sync for Message
impl Unpin for Message
impl UnsafeUnpin for Message
impl UnwindSafe for Message
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more