libdisplaydevice master
C++ library to modify display devices.
types.h File Reference

Declarations for Windows specific types. More...

#include <Windows.h>
#include <chrono>
#include <functional>
#include <map>
#include <set>
#include "display_device/types.h"
Include dependency graph for types.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  display_device::DisplayMode
 Display's mode (resolution + refresh rate). More...
 
struct  display_device::SingleDisplayConfigState::Initial
 Data that represents the original system state and is used as a base when trying to re-apply settings without reverting settings. More...
 
struct  display_device::SingleDisplayConfigState::Modified
 Data for tracking the modified changes. More...
 
struct  display_device::PathAndModeData
 Contains currently available paths and associated modes. More...
 
struct  display_device::PathSourceIndexData
 Contains information about sources with identical adapter ids from matching paths. More...
 
struct  display_device::SingleDisplayConfigState
 Arbitrary data for making and undoing changes. More...
 
struct  display_device::ValidatedDeviceInfo
 Contains the device path and the id for a VALID device. More...
 
struct  display_device::WinWorkarounds
 Settings for workarounds/hacks for Windows. More...
 

Typedefs

using display_device::ActiveTopology = std::vector<std::vector<std::string>>
 A LIST[LIST[DEVICE_ID]] structure which represents an active topology.
 
using display_device::DdGuardFn = std::function<void()>
 Default function type used for cleanup/guard functions.
 
using display_device::DeviceDisplayModeMap = StringMap<DisplayMode>
 Ordered map of [DEVICE_ID -> DisplayMode].
 
using display_device::HdrStateMap = StringMap<std::optional<HdrState>>
 Ordered map of [DEVICE_ID -> std::optional<HdrState>].
 
using display_device::PathSourceIndexDataMap = StringMap<PathSourceIndexData>
 Ordered map of [DEVICE_ID -> PathSourceIndexData].
 

Enumerations

enum class  display_device::QueryType { Active , All }
 Type of query the OS should perform while searching for display devices. More...
 
enum class  display_device::ValidatedPathType { Active , Any }
 Specifies additional constraints for the validated device. More...
 

Detailed Description

Declarations for Windows specific types.

Typedef Documentation

◆ ActiveTopology

using display_device::ActiveTopology = std::vector<std::vector<std::string>>

A LIST[LIST[DEVICE_ID]] structure which represents an active topology.

Single display: [[DISPLAY_1]] 2 extended displays: [[DISPLAY_1], [DISPLAY_2]] 2 duplicated displays: [[DISPLAY_1, DISPLAY_2]] Mixed displays: [[EXTENDED_DISPLAY_1], [DUPLICATED_DISPLAY_1, DUPLICATED_DISPLAY_2], [EXTENDED_DISPLAY_2]]

Note
On Windows the order does not matter of both device ids or the inner lists.

◆ PathSourceIndexDataMap

using display_device::PathSourceIndexDataMap = StringMap<PathSourceIndexData>

Ordered map of [DEVICE_ID -> PathSourceIndexData].

See also
PathSourceIndexData

Enumeration Type Documentation

◆ QueryType

enum class display_device::QueryType
strong

Type of query the OS should perform while searching for display devices.

Enumerator
Active 

The device path must be active.

All 

The device path can be active or inactive.

◆ ValidatedPathType

Specifies additional constraints for the validated device.

Enumerator
Active 

The device path must be active.

Any 

The device path can be active or inactive.