struct DisplayTiming

Defined at line 77 of file ../../src/graphics/display/lib/api-types/cpp/display-timing.h

Display timing parameters as defined in:

- DMT standard, Section 3. "DMT Video Timing Parameter Definitions",

pages 14-16.

- CTA-861 standard, Section 4. "Video Formats and Waveform Timings",

pages 42-52.

- E-EDID standard, Section 3.12 "Note Regarding Borders", pages 51-52.

The struct uses signed `int32_t` values for the timing value fields instead

of the unsigned `uint32` used by its FIDL / banjo counterparts.

Public Members

int32_t horizontal_active_px
int32_t horizontal_front_porch_px
int32_t horizontal_sync_width_px
int32_t horizontal_back_porch_px
int32_t vertical_active_lines
int32_t vertical_front_porch_lines
int32_t vertical_sync_width_lines
int32_t vertical_back_porch_lines
int64_t pixel_clock_frequency_hz
FieldsPerFrame fields_per_frame
SyncPolarity hsync_polarity
SyncPolarity vsync_polarity
bool vblank_alternates
int pixel_repetition

Public Methods

int horizontal_blank_px ()

Number of blanking pixels in a video line.

Also known as "Hblank" and "horizontal blank time".

For legacy DMT standard formats with non-zero borders, this is the sum of

the horizontal left border, horizontal right border and the horizontal

blank.

Defined at line 222 of file ../../src/graphics/display/lib/api-types/cpp/display-timing.h

int vertical_blank_lines ()

Number of blanking lines on the display.

Also known as "Vblank" and "vertical blank time".

For legacy DMT standard formats with non-zero borders, this is the sum of

the vertical top border, vertical bottom bordea cvr and the vertical blank.

Defined at line 232 of file ../../src/graphics/display/lib/api-types/cpp/display-timing.h

int horizontal_total_px ()

Number of all pixels in a video line.

Also known as "Htotal".

If `IsValid()` is true, the value is guaranteed to be >= 0 and

<

= kMaxTimingValue.

TODO(https://fxbug.dev/42086614): The current display limits may not support some

timings allowed by the VESA DisplayID standard.

Defined at line 245 of file ../../src/graphics/display/lib/api-types/cpp/display-timing.h

int vertical_total_lines ()

Number of all lines on the display.

Also known as "Vtotal".

If `IsValid()` is true, the value is guaranteed to be >= 0 and

<

= kMaxTimingValue.

TODO(https://fxbug.dev/42086614): The current display limits may not support some

timings allowed by the VESA DisplayID standard.

Defined at line 256 of file ../../src/graphics/display/lib/api-types/cpp/display-timing.h

bool IsValid ()

Defined at line 274 of file ../../src/graphics/display/lib/api-types/cpp/display-timing.h

void DebugAssertIsValid ()

Functionally equivalent to asserting on the return value from IsValid(),

but provides more actionable errors on failure.

Defined at line 318 of file ../../src/graphics/display/lib/api-types/cpp/display-timing.h

int32_t vertical_field_refresh_rate_millihertz ()

The number of fields the display device can display in 1,000 seconds.

Rounded to the nearest millihertz (0.001 Hz).

If `IsValid()` is true, the value is guaranteed to be >= 0 and

<

= kMaxRefreshRateMillihertz.

Defined at line 359 of file ../../src/graphics/display/lib/api-types/cpp/display-timing.h