pub struct IODetailedTimingInformationV2 {Show 37 fields
pub horizontalScaledInset: u32,
pub verticalScaledInset: u32,
pub scalerFlags: u32,
pub horizontalScaled: u32,
pub verticalScaled: u32,
pub signalConfig: u32,
pub signalLevels: u32,
pub pixelClock: u64,
pub minPixelClock: u64,
pub maxPixelClock: u64,
pub horizontalActive: u32,
pub horizontalBlanking: u32,
pub horizontalSyncOffset: u32,
pub horizontalSyncPulseWidth: u32,
pub verticalActive: u32,
pub verticalBlanking: u32,
pub verticalSyncOffset: u32,
pub verticalSyncPulseWidth: u32,
pub horizontalBorderLeft: u32,
pub horizontalBorderRight: u32,
pub verticalBorderTop: u32,
pub verticalBorderBottom: u32,
pub horizontalSyncConfig: u32,
pub horizontalSyncLevel: u32,
pub verticalSyncConfig: u32,
pub verticalSyncLevel: u32,
pub numLinks: u32,
pub verticalBlankingExtension: u32,
pub pixelEncoding: u16,
pub bitsPerColorComponent: u16,
pub colorimetry: u16,
pub dynamicRange: u16,
pub dscCompressedBitsPerPixel: u16,
pub dscSliceHeight: u16,
pub dscSliceWidth: u16,
pub verticalBlankingMaxStretchPerFrame: u16,
pub verticalBlankingMaxShrinkPerFrame: u16,
/* private fields */
}graphics only.Expand description
A structure defining the detailed timing information of a display mode.
This structure is used by IOFramebuffer to define detailed timing information for a display mode. The VESA EDID document has more information.
Field: __reservedA Set to zero.
Field: horizontalScaledInset If the mode is scaled, sets the number of active pixels to remove the left and right edges in order to display an underscanned image.
Field: verticalScaledInset If the mode is scaled, sets the number of active lines to remove the top and bottom edges in order to display an underscanned image.
Field: scalerFlags If the mode is scaled,
kIOScaleStretchToFit may be set to allow stretching.
kIOScaleRotateFlags is mask which may have the value given by kIOScaleRotate90, kIOScaleRotate180, kIOScaleRotate270 to display a rotated framebuffer.
Field: horizontalScaled If the mode is scaled, sets the size of the image before scaling or rotation.
Field: verticalScaled If the mode is scaled, sets the size of the image before scaling or rotation.
Field: signalConfig
kIOAnalogSetupExpected set if display expects a blank-to-black setup or pedestal. See VESA signal standards.
kIOInterlacedCEATiming set for a CEA style interlaced timing:
Field 1 vertical blanking = half specified vertical blanking lines.
Field 2 vertical blanking = (half vertical blanking lines) + 1 line.
Field 1 vertical offset = half specified vertical sync offset.
Field 2 vertical offset = (half specified vertical sync offset) + 0.5 lines.
Field: signalLevels One of:
kIOAnalogSignalLevel_0700_0300 0.700 - 0.300 V p-p.
kIOAnalogSignalLevel_0714_0286 0.714 - 0.286 V p-p.
kIOAnalogSignalLevel_1000_0400 1.000 - 0.400 V p-p.
kIOAnalogSignalLevel_0700_0000 0.700 - 0.000 V p-p.
Field: pixelClock Pixel clock frequency in Hz.
Field: minPixelClock Minimum pixel clock frequency in Hz, with error.
Field: maxPixelClock Maximum pixel clock frequency in Hz, with error.
Field: horizontalActive Pixel clocks per line.
Field: horizontalBlanking Blanking clocks per line.
Field: horizontalSyncOffset First clock of horizontal sync.
Field: horizontalSyncPulseWidth Width of horizontal sync.
Field: verticalActive Number of lines per frame.
Field: verticalBlanking Blanking lines per frame.
Field: verticalSyncOffset First line of vertical sync.
Field: verticalSyncPulseWidth Height of vertical sync.
Field: horizontalBorderLeft Number of pixels in left horizontal border.
Field: horizontalBorderRight Number of pixels in right horizontal border.
Field: verticalBorderTop Number of lines in top vertical border.
Field: verticalBorderBottom Number of lines in bottom vertical border.
Field: horizontalSyncConfig kIOSyncPositivePolarity for positive polarity horizontal sync (0 for negative).
Field: horizontalSyncLevel Zero.
Field: verticalSyncConfig kIOSyncPositivePolarity for positive polarity vertical sync (0 for negative).
Field: verticalSyncLevel Zero.
Field: numLinks number of links to be used by a dual link timing, if zero, assume one link.
Field: verticalBlankingExtension maximum number of blanking extension lines that is available. (0 for none).
Field: pixelEncoding 2017 Timing Features - ERS 2-58 (6.3.1)
Field: bitsPerColorComponent 2017 Timing Features - ERS 2-58 (6.3.1)
Field: colorimetry 2017 Timing Features - ERS 2-58 (6.3.1)
Field: dynamicRange 2017 Timing Features - ERS 2-58 (6.3.1)
Field: dscCompressedBitsPerPixel 2018 Timing Features - ERS 2-63 (6.3.1)
Field: dscSliceHeight 2018 Timing Features - ERS 2-63 (6.3.1)
Field: dscSliceWidth 2018 Timing Features - ERS 2-63 (6.3.1)
Field: verticalBlankingMaxStretchPerFrame Max stretch time used for VRR refresh rate ramps
Field: verticalBlankingMaxShrinkPerFrame Max shrink time used for VRR refresh rate ramps
Field: __reservedB Reserved set to zero.
See also Apple’s documentation
Fields§
§horizontalScaledInset: u32§verticalScaledInset: u32§scalerFlags: u32§horizontalScaled: u32§verticalScaled: u32§signalConfig: u32§signalLevels: u32§pixelClock: u64§minPixelClock: u64§maxPixelClock: u64§horizontalActive: u32§horizontalBlanking: u32§horizontalSyncOffset: u32§horizontalSyncPulseWidth: u32§verticalActive: u32§verticalBlanking: u32§verticalSyncOffset: u32§verticalSyncPulseWidth: u32§horizontalBorderLeft: u32§horizontalBorderRight: u32§verticalBorderTop: u32§verticalBorderBottom: u32§horizontalSyncConfig: u32§horizontalSyncLevel: u32§verticalSyncConfig: u32§verticalSyncLevel: u32§numLinks: u32§verticalBlankingExtension: u32§pixelEncoding: u16§bitsPerColorComponent: u16§colorimetry: u16§dynamicRange: u16§dscCompressedBitsPerPixel: u16§dscSliceHeight: u16§dscSliceWidth: u16§verticalBlankingMaxStretchPerFrame: u16§verticalBlankingMaxShrinkPerFrame: u16Trait Implementations§
Source§impl Clone for IODetailedTimingInformationV2
impl Clone for IODetailedTimingInformationV2
Source§fn clone(&self) -> IODetailedTimingInformationV2
fn clone(&self) -> IODetailedTimingInformationV2
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Encode for IODetailedTimingInformationV2
Available on crate feature objc2 only.
impl Encode for IODetailedTimingInformationV2
objc2 only.Source§impl PartialEq for IODetailedTimingInformationV2
impl PartialEq for IODetailedTimingInformationV2
Source§fn eq(&self, other: &IODetailedTimingInformationV2) -> bool
fn eq(&self, other: &IODetailedTimingInformationV2) -> bool
self and other values to be equal, and is used by ==.Source§impl RefEncode for IODetailedTimingInformationV2
Available on crate feature objc2 only.
impl RefEncode for IODetailedTimingInformationV2
objc2 only.