10namespace display_device {
34 [[nodiscard]] std::optional<MacPowerAssertionId>
declareUserActivity(
const std::string &reason)
override;
Lowest level macOS API wrapper for easy mocking.
Definition mac_api_layer_interface.h:14
Default implementation for the MacApiLayerInterface.
Definition mac_api_layer.h:14
bool isApiAccessAvailable() const override
Check if display configuration APIs are accessible.
Definition mac_api_layer.cpp:465
MacDisplayId getMirrorMaster(MacDisplayId display_id) const override
Get the display mirrored by the specified display.
Definition mac_api_layer.cpp:704
std::vector< std::byte > getEdid(MacDisplayId display_id) const override
Get EDID byte array for a display.
Definition mac_api_layer.cpp:645
bool setOriginPoint(MacDisplayId display_id, const Point &origin) override
Set the origin point for a display.
Definition mac_api_layer.cpp:744
std::string getDisplayName(MacDisplayId display_id) const override
Get the macOS capture selector for a display.
Definition mac_api_layer.cpp:633
std::optional< MacPowerAssertionId > declareUserActivity(const std::string &reason) override
Tell macOS that the user is active and displays should wake.
Definition mac_api_layer.cpp:535
bool isMainDisplay(MacDisplayId display_id) const override
Check whether a display is the main display.
Definition mac_api_layer.cpp:692
bool setMirror(MacDisplayId display_id, MacDisplayId master_display_id) override
Set a display as a mirror of another display.
Definition mac_api_layer.cpp:750
std::string getErrorString(MacApiError error_code) const override
Stringify a macOS display API error code.
Definition mac_api_layer.cpp:470
bool releasePowerAssertion(MacPowerAssertionId assertion_id) override
Release a macOS power assertion.
Definition mac_api_layer.cpp:569
MacDisplayIdList getDisplayIds(MacQueryType type) const override
Query macOS for display identifiers.
Definition mac_api_layer.cpp:516
MacDisplayModeList getDisplayModes(MacDisplayId display_id) const override
Get available display modes for a display.
Definition mac_api_layer.cpp:611
std::optional< Rational > getDisplayScale(MacDisplayId display_id) const override
Get the display scale value.
Definition mac_api_layer.cpp:669
std::string getFriendlyName(MacDisplayId display_id) const override
Get a human-readable display name.
Definition mac_api_layer.cpp:637
bool isActive(MacDisplayId display_id) const override
Check whether a display is active.
Definition mac_api_layer.cpp:696
std::string getDeviceId(MacDisplayId display_id) const override
Get the library device id for a display.
Definition mac_api_layer.cpp:579
std::optional< Point > getOriginPoint(MacDisplayId display_id) const override
Get the display origin point.
Definition mac_api_layer.cpp:684
bool setDisplayMode(MacDisplayId display_id, const MacDisplayMode &mode) override
Set the display mode for a display.
Definition mac_api_layer.cpp:708
std::optional< MacDisplayMode > getCurrentDisplayMode(MacDisplayId display_id) const override
Get the current display mode.
Definition mac_api_layer.cpp:600
bool isOnline(MacDisplayId display_id) const override
Check whether a display is online.
Definition mac_api_layer.cpp:700
std::optional< MacPowerAssertionId > createDisplaySleepAssertion(const std::string &reason) override
Create a power assertion that prevents user-idle display sleep.
Definition mac_api_layer.cpp:552
Declarations for the MacApiLayerInterface.
std::uint32_t MacPowerAssertionId
macOS power assertion identifier.
Definition types.h:38
std::vector< MacDisplayId > MacDisplayIdList
A list of CoreGraphics display identifiers.
Definition types.h:43
MacQueryType
Type of display list to query from macOS.
Definition types.h:48
std::uint32_t MacDisplayId
CoreGraphics display identifier.
Definition types.h:29
int MacApiError
Error code returned by macOS display APIs.
Definition types.h:20
std::vector< MacDisplayMode > MacDisplayModeList
A list of macOS display modes.
Definition types.h:77
Display mode data used by the macOS backend.
Definition types.h:64
An arbitrary point object.
Definition types.h:91