libdisplay_info/
dmt.rs

1//! Low-level API for VESA Display Monitor Timing (DMT).
2//!
3//! The library implements VESA DMT version 1.0 revision 13.
4use libdisplay_info_derive::FFIFrom;
5
6use crate::ffi;
7
8// A DMT timing.
9#[derive(Debug, Copy, Clone, FFIFrom)]
10#[ffi(ffi::dmt::di_dmt_timing)]
11pub struct Timing {
12    pub dmt_id: u8,
13    pub edid_std_id: u16,
14    pub cvt_id: u32,
15    pub horiz_video: i32,
16    pub vert_video: i32,
17    pub refresh_rate_hz: f32,
18    pub pixel_clock_hz: i32,
19    pub horiz_blank: i32,
20    pub vert_blank: i32,
21    pub horiz_front_porch: i32,
22    pub vert_front_porch: i32,
23    pub horiz_sync_pulse: i32,
24    pub vert_sync_pulse: i32,
25    pub horiz_border: i32,
26    pub vert_border: i32,
27    pub reduced_blanking: bool,
28}