#[repr(C)]pub struct IODisplayTimingRangeV1 {Show 60 fields
pub version: u32,
pub minPixelClock: u64,
pub maxPixelClock: u64,
pub maxPixelError: u32,
pub supportedSyncFlags: u32,
pub supportedSignalLevels: u32,
pub supportedSignalConfigs: u32,
pub minFrameRate: u32,
pub maxFrameRate: u32,
pub minLineRate: u32,
pub maxLineRate: u32,
pub maxHorizontalTotal: u32,
pub maxVerticalTotal: u32,
pub charSizeHorizontalActive: u8,
pub charSizeHorizontalBlanking: u8,
pub charSizeHorizontalSyncOffset: u8,
pub charSizeHorizontalSyncPulse: u8,
pub charSizeVerticalActive: u8,
pub charSizeVerticalBlanking: u8,
pub charSizeVerticalSyncOffset: u8,
pub charSizeVerticalSyncPulse: u8,
pub charSizeHorizontalBorderLeft: u8,
pub charSizeHorizontalBorderRight: u8,
pub charSizeVerticalBorderTop: u8,
pub charSizeVerticalBorderBottom: u8,
pub charSizeHorizontalTotal: u8,
pub charSizeVerticalTotal: u8,
pub minHorizontalActiveClocks: u32,
pub maxHorizontalActiveClocks: u32,
pub minHorizontalBlankingClocks: u32,
pub maxHorizontalBlankingClocks: u32,
pub minHorizontalSyncOffsetClocks: u32,
pub maxHorizontalSyncOffsetClocks: u32,
pub minHorizontalPulseWidthClocks: u32,
pub maxHorizontalPulseWidthClocks: u32,
pub minVerticalActiveClocks: u32,
pub maxVerticalActiveClocks: u32,
pub minVerticalBlankingClocks: u32,
pub maxVerticalBlankingClocks: u32,
pub minVerticalSyncOffsetClocks: u32,
pub maxVerticalSyncOffsetClocks: u32,
pub minVerticalPulseWidthClocks: u32,
pub maxVerticalPulseWidthClocks: u32,
pub minHorizontalBorderLeft: u32,
pub maxHorizontalBorderLeft: u32,
pub minHorizontalBorderRight: u32,
pub maxHorizontalBorderRight: u32,
pub minVerticalBorderTop: u32,
pub maxVerticalBorderTop: u32,
pub minVerticalBorderBottom: u32,
pub maxVerticalBorderBottom: u32,
pub maxNumLinks: u32,
pub minLink0PixelClock: u32,
pub maxLink0PixelClock: u32,
pub minLink1PixelClock: u32,
pub maxLink1PixelClock: u32,
pub supportedPixelEncoding: u16,
pub supportedBitsPerColorComponent: u16,
pub supportedColorimetryModes: u16,
pub supportedDynamicRangeModes: u16,
/* private fields */
}graphics only.Expand description
A structure defining the limits and attributes of a display or framebuffer.
This structure is used to define the limits for modes programmed as detailed timings by the OS. The VESA EDID is useful background information for many of these fields. A data property with this structure under the key kIOFBTimingRangeKey in a framebuffer will allow the OS to program detailed timings that fall within its range.
Field: __reservedA Set to zero.
Field: version Set to zero.
Field: __reservedB Set to zero.
Field: minPixelClock minimum pixel clock frequency in range, in Hz.
Field: minPixelClock maximum pixel clock frequency in range, in Hz.
Field: maxPixelError largest variation between specified and actual pixel clock frequency, in Hz.
Field: supportedSyncFlags mask of supported sync attributes. The following are defined:
kIORangeSupportsSeparateSyncs - digital separate syncs.
kIORangeSupportsSyncOnGreen - sync on green.
kIORangeSupportsCompositeSync - composite sync.
kIORangeSupportsVSyncSerration - vertical sync has serration and equalization pulses.
kIORangeSupportsVRR - variable refresh rate.
Field: supportedSignalLevels mask of possible signal levels. The following are defined:
kIORangeSupportsSignal_0700_0300 0.700 - 0.300 V p-p.
kIORangeSupportsSignal_0714_0286 0.714 - 0.286 V p-p.
kIORangeSupportsSignal_1000_0400 1.000 - 0.400 V p-p.
kIORangeSupportsSignal_0700_0000 0.700 - 0.000 V p-p.
Field: supportedSignalConfigs mask of possible signal configurations. The following are defined:
kIORangeSupportsInterlacedCEATiming Supports CEA style interlaced timing:
Field 1 vertical blanking = specified vertical blanking lines.
Field 2 vertical blanking = vertical blanking lines + 1 line.
Field 1 vertical offset = specified vertical sync offset.
Field 2 vertical offset = specified vertical sync offset + 0.5 lines.
kIORangeSupportsInterlacedCEATimingWithConfirm Supports CEA style interlaced timing, but require a confirm.
Field: minFrameRate minimum frame rate (vertical refresh frequency) in range, in Hz.
Field: maxFrameRate maximum frame rate (vertical refresh frequency) in range, in Hz.
Field: minLineRate minimum line rate (horizontal refresh frequency) in range, in Hz.
Field: maxLineRate maximum line rate (horizontal refresh frequency) in range, in Hz.
Field: maxHorizontalTotal maximum clocks in horizontal line (active + blanking).
Field: maxVerticalTotal maximum lines in vertical frame (active + blanking).
Field: __reservedD Set to zero.
Field: charSizeHorizontalActive horizontalActive must be a multiple of charSizeHorizontalActive.
Field: charSizeHorizontalBlanking horizontalBlanking must be a multiple of charSizeHorizontalBlanking.
Field: charSizeHorizontalSyncOffset horizontalSyncOffset must be a multiple of charSizeHorizontalSyncOffset.
Field: charSizeHorizontalSyncPulse horizontalSyncPulse must be a multiple of charSizeHorizontalSyncPulse.
Field: charSizeVerticalActive verticalActive must be a multiple of charSizeVerticalActive.
Field: charSizeVerticalBlanking verticalBlanking must be a multiple of charSizeVerticalBlanking.
Field: charSizeVerticalSyncOffset verticalSyncOffset must be a multiple of charSizeVerticalSyncOffset.
Field: charSizeVerticalSyncPulse verticalSyncPulse must be a multiple of charSizeVerticalSyncPulse.
Field: charSizeHorizontalBorderLeft horizontalBorderLeft must be a multiple of charSizeHorizontalBorderLeft.
Field: charSizeHorizontalBorderRight horizontalBorderRight must be a multiple of charSizeHorizontalBorderRight.
Field: charSizeVerticalBorderTop verticalBorderTop must be a multiple of charSizeVerticalBorderTop.
Field: charSizeVerticalBorderBottom verticalBorderBottom must be a multiple of charSizeVerticalBorderBottom.
Field: charSizeHorizontalTotal (horizontalActive + horizontalBlanking) must be a multiple of charSizeHorizontalTotal.
Field: charSizeVerticalTotal (verticalActive + verticalBlanking) must be a multiple of charSizeVerticalTotal.
Field: __reservedE Set to zero.
Field: minHorizontalActiveClocks minimum value of horizontalActive.
Field: maxHorizontalActiveClocks maximum value of horizontalActive.
Field: minHorizontalBlankingClocks minimum value of horizontalBlanking.
Field: maxHorizontalBlankingClocks maximum value of horizontalBlanking.
Field: minHorizontalSyncOffsetClocks minimum value of horizontalSyncOffset.
Field: maxHorizontalSyncOffsetClocks maximum value of horizontalSyncOffset.
Field: minHorizontalPulseWidthClocks minimum value of horizontalPulseWidth.
Field: maxHorizontalPulseWidthClocks maximum value of horizontalPulseWidth.
Field: minVerticalActiveClocks minimum value of verticalActive.
Field: maxVerticalActiveClocks maximum value of verticalActive.
Field: minVerticalBlankingClocks minimum value of verticalBlanking.
Field: maxVerticalBlankingClocks maximum value of verticalBlanking.
Field: minVerticalSyncOffsetClocks minimum value of verticalSyncOffset.
Field: maxVerticalSyncOffsetClocks maximum value of verticalSyncOffset.
Field: minVerticalPulseWidthClocks minimum value of verticalPulseWidth.
Field: maxVerticalPulseWidthClocks maximum value of verticalPulseWidth.
Field: minHorizontalBorderLeft minimum value of horizontalBorderLeft.
Field: maxHorizontalBorderLeft maximum value of horizontalBorderLeft.
Field: minHorizontalBorderRight minimum value of horizontalBorderRight.
Field: maxHorizontalBorderRight maximum value of horizontalBorderRight.
Field: minVerticalBorderTop minimum value of verticalBorderTop.
Field: maxVerticalBorderTop maximum value of verticalBorderTop.
Field: minVerticalBorderBottom minimum value of verticalBorderBottom.
Field: maxVerticalBorderBottom maximum value of verticalBorderBottom.
Field: maxNumLinks number of links supported, if zero, 1 link is assumed.
Field: minLink0PixelClock minimum pixel clock for link 0 (kHz).
Field: maxLink0PixelClock maximum pixel clock for link 0 (kHz).
Field: minLink1PixelClock minimum pixel clock for link 1 (kHz).
Field: maxLink1PixelClock maximum pixel clock for link 1 (kHz).
Field: supportedPixelEncoding 2017 Timing Features - ERS 2-58 (6.3.1)
Field: supportedBitsPerColorComponent 2017 Timing Features - ERS 2-58 (6.3.1)
Field: supportedColorimetry 2017 Timing Features - ERS 2-58 (6.3.1)
Field: supportedDynamicRange 2017 Timing Features - ERS 2-58 (6.3.1)
Field: __reservedF Set to zero.
See also Apple’s documentation
Fields§
§version: u32§minPixelClock: u64§maxPixelClock: u64§maxPixelError: u32§supportedSyncFlags: u32§supportedSignalLevels: u32§supportedSignalConfigs: u32§minFrameRate: u32§maxFrameRate: u32§minLineRate: u32§maxLineRate: u32§maxHorizontalTotal: u32§maxVerticalTotal: u32§charSizeHorizontalActive: u8§charSizeHorizontalBlanking: u8§charSizeHorizontalSyncOffset: u8§charSizeHorizontalSyncPulse: u8§charSizeVerticalActive: u8§charSizeVerticalBlanking: u8§charSizeVerticalSyncOffset: u8§charSizeVerticalSyncPulse: u8§charSizeHorizontalBorderLeft: u8§charSizeHorizontalBorderRight: u8§charSizeVerticalBorderTop: u8§charSizeVerticalBorderBottom: u8§charSizeHorizontalTotal: u8§charSizeVerticalTotal: u8§minHorizontalActiveClocks: u32§maxHorizontalActiveClocks: u32§minHorizontalBlankingClocks: u32§maxHorizontalBlankingClocks: u32§minHorizontalSyncOffsetClocks: u32§maxHorizontalSyncOffsetClocks: u32§minHorizontalPulseWidthClocks: u32§maxHorizontalPulseWidthClocks: u32§minVerticalActiveClocks: u32§maxVerticalActiveClocks: u32§minVerticalBlankingClocks: u32§maxVerticalBlankingClocks: u32§minVerticalSyncOffsetClocks: u32§maxVerticalSyncOffsetClocks: u32§minVerticalPulseWidthClocks: u32§maxVerticalPulseWidthClocks: u32§minHorizontalBorderLeft: u32§maxHorizontalBorderLeft: u32§minHorizontalBorderRight: u32§maxHorizontalBorderRight: u32§minVerticalBorderTop: u32§maxVerticalBorderTop: u32§minVerticalBorderBottom: u32§maxVerticalBorderBottom: u32§maxNumLinks: u32§minLink0PixelClock: u32§maxLink0PixelClock: u32§minLink1PixelClock: u32§maxLink1PixelClock: u32§supportedPixelEncoding: u16§supportedBitsPerColorComponent: u16§supportedColorimetryModes: u16§supportedDynamicRangeModes: u16Trait Implementations§
Source§impl Clone for IODisplayTimingRangeV1
impl Clone for IODisplayTimingRangeV1
Source§fn clone(&self) -> IODisplayTimingRangeV1
fn clone(&self) -> IODisplayTimingRangeV1
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for IODisplayTimingRangeV1
impl Debug for IODisplayTimingRangeV1
Source§impl Encode for IODisplayTimingRangeV1
Available on crate feature objc2 only.
impl Encode for IODisplayTimingRangeV1
objc2 only.Source§impl PartialEq for IODisplayTimingRangeV1
impl PartialEq for IODisplayTimingRangeV1
Source§impl RefEncode for IODisplayTimingRangeV1
Available on crate feature objc2 only.
impl RefEncode for IODisplayTimingRangeV1
objc2 only.