libdisplaydevice latest
C++ library to modify display devices.
settings_manager_interface.h
Go to the documentation of this file.
1
5#pragma once
6
7// local includes
8#include "types.h"
9
10namespace display_device {
15 public:
28
42
46 virtual ~SettingsManagerInterface() = default;
47
57 [[nodiscard]] virtual EnumeratedDeviceList enumAvailableDevices() const = 0;
58
70 [[nodiscard]] virtual std::string getDisplayName(const std::string &device_id) const = 0;
71
83 [[nodiscard]] virtual ApplyResult applySettings(const SingleDisplayConfiguration &config) = 0;
84
93 [[nodiscard]] virtual RevertResult revertSettings() = 0;
94
117 [[nodiscard]] virtual bool resetPersistence() = 0;
118 };
119} // namespace display_device
A class for applying and reverting display device settings.
Definition settings_manager_interface.h:14
virtual bool resetPersistence()=0
Reset the persistence in case the settings cannot be reverted.
virtual std::string getDisplayName(const std::string &device_id) const =0
Get display name associated with the device.
virtual RevertResult revertSettings()=0
Revert the applied configuration and restore the previous settings.
RevertResult
Outcome values when trying to revert settings.
Definition settings_manager_interface.h:32
@ RevertingPrimaryDeviceFailed
Reverting primary device failed.
@ SwitchingTopologyFailed
Switching topology has failed.
@ RevertingDisplayModesFailed
Reverting display modes failed.
@ RevertingHdrStatesFailed
Reverting HDR states failed.
virtual EnumeratedDeviceList enumAvailableDevices() const =0
Enumerate the available (active and inactive) devices.
virtual ~SettingsManagerInterface()=default
Default virtual destructor.
virtual ApplyResult applySettings(const SingleDisplayConfiguration &config)=0
Apply the provided configuration to the system.
ApplyResult
Outcome values when trying to apply settings.
Definition settings_manager_interface.h:19
@ DisplayModePrepFailed
Display mode preparation failed.
@ Ok
Settings were applied successfully.
@ HdrStatePrepFailed
HDR state preparation failed.
@ PrimaryDevicePrepFailed
Primary device preparation failed.
@ ApiTemporarilyUnavailable
API is temporarily unavailable.
Declarations for common display device types.
std::vector< EnumeratedDevice > EnumeratedDeviceList
A list of EnumeratedDevice objects.
Definition types.h:124
Configuration centered around a single display.
Definition types.h:132