DPMSSetTimeouts(3)

πŸ’… DPMSSetTimeouts β€” from the X FUNCTIONS girlies (section 3)

okay bestie, sit down, we're talking about DPMSSetTimeouts(3) β€” yes that's the real one, the X FUNCTIONS manual, and yes it's lowkey iconic. this is the function that lets your app boss the X server around about DPMS timings. main character energy fr fr. ✨


πŸŽ€ NAME πŸŽ€

DPMSSetTimeouts β€” permits applications to set the timeout values used by the X server for DPMS timings

like. it's the one that sets the nap schedule. periodt.


🌸 SYNOPSIS 🌸

cc [ flag ... ] file ... -lXext [ library ... ]
#include <X11/extensions/dpms.h>

Status DPMSSetTimeouts
       (
             Display *display,
             CARD16 standby,
             CARD16 suspend,
             CARD16 off
       );

not me linking -lXext and including <X11/extensions/dpms.h> like it's nothing πŸ’…


πŸ¦‹ ARGUMENTS πŸ¦‹

  • display β€” Specifies the connection to the X server. it's the group chat you're sending this to, basically.
  • standby β€” Specifies the new standby timeout in seconds.
  • suspend β€” Specifies the new suspend timeout in seconds.
  • off β€” Specifies the new off timeout in seconds.

✨ DESCRIPTION ✨

The DPMSSetTimeouts function permits applications to set the timeout values used by the X server for Display Power Management Signaling (DPMS) timings. yes, it's giving "let me handle the vibes of your monitor's sleep schedule." 🫢

The value standby is the amount of inactivity time, in seconds, before standby mode is invoked. The actual effects of this mode are dependent on the characteristics of the monitor and frame buffer card. Standby mode is implemented by shutting off the horizontal sync signal, and pulsing the vertical sync signal. Standby mode provides the quickest monitor recovery time. Note also that many monitors implement this mode identical to suspend mode. A value of zero disables the standby mode. (zero = off the table, bestie, no standby for you.)

The value suspend is the amount of time of inactivity, in seconds, before the second level of power savings is invoked. Suspend mode's physical and electrical characteristics are implementation defined. For DPMS compliant hardware, setting the suspend mode is implemented by pulsing the horizontal sync signal and shutting off the vertical sync signal. In general, suspend mode recovery is considered to be slower than standby mode, but faster than off mode. However it may vary from monitor to monitor. As noted above, many monitors implement this mode identical to the standby mode. A value of zero disables this mode. 🧚

The value off is the amount of time of inactivity, in seconds, before the third and final level of power savings is invoked. Off mode's physical and electrical characteristics are implementation defined. In DPMS compliant hardware, it is implemented by shutting off both horizontal and vertical sync signals, resulting in powering down of the monitor. Recovery time is implementation dependent. Usually the recovery time is very close to the power-up time of the monitor. A value of zero disables this mode. this is the "final level" bestie, the last boss, the monitor fully logging off πŸ’€

Chronologically, standby mode occurs before or simultaneously with suspend mode, and suspend mode must occur before or simultaneously with off mode. Therefore, non-zero mode timeout values must be greater than or equal to the timeout values of earlier modes. If inconsistent values are supplied, a BadValue error will result.

⚠️ okay so the ORDER MATTERS. standby ≀ suspend ≀ off (for non-zero values, chronologically, before-or-simultaneously). if you hand it inconsistent numbers, BadValue is coming for you and it is NOT a cute look.

πŸ”₯ RETURN VALUES πŸ”₯

  • TRUE β€” The DPMSSetTimeouts function returns TRUE when the function has succeeded.

that's it. that's the whole list. slay. πŸ‘‘


🌈 ERRORS 🌈

  • BadValue β€” An argument is out of range.

πŸ’– SEE ALSO πŸ’–

DPMSCapable(3), DPMSInfo(3), DPMSGetTimeouts(3)

the DPMS cinematic universe, go read them all iykyk


and that's the whole page, bestie β€” brought to you by X Version 11, libXext 1.3.6, and the date DPMSSetTimeouts(3) stamped itself in the footer. go forth and set your timeouts, but like, in the right order. πŸ’…βœ¨πŸŽ€

πŸ“¦ where this page comes from