Gio.PowerProfileMonitor

g GObject.GInterface GObject.GInterface Gio.PowerProfileMonitor Gio.PowerProfileMonitor GObject.GInterface->Gio.PowerProfileMonitor

Implementations:

None

Methods

class

dup_default ()

get_power_saver_enabled ()

Virtual Methods

None

Properties

Name

Type

Flags

Short Description

power-saver-enabled

bool

r/en

Signals

None

Fields

None

Class Details

class Gio.PowerProfileMonitor
Bases:

GObject.GInterface

Structure:

Gio.PowerProfileMonitorInterface

GPowerProfileMonitor makes it possible for applications as well as OS components to monitor system power profiles and act upon them. It currently only exports whether the system is in “Power Saver” mode (known as “Low Power” mode on some systems).

When in “Low Power” mode, it is recommended that applications:

  • disable automatic downloads;

  • reduce the rate of refresh from online sources such as calendar or email synchronisation;

  • reduce the use of expensive visual effects.

It is also likely that OS components providing services to applications will lower their own background activity, for the sake of the system.

There are a variety of tools that exist for power consumption analysis, but those usually depend on the OS and hardware used. On Linux, one could use upower to monitor the battery discharge rate, powertop to check on the background activity or activity at all), sysprof to inspect CPU usage, and intel_gpu_time to profile GPU usage.

Don’t forget to disconnect the [signal`GObject`.Object::notify] signal for [property`Gio`.PowerProfileMonitor:power-saver-enabled], and unref the GPowerProfileMonitor itself when exiting.

New in version 2.70.

classmethod dup_default()[source]
Returns:

a new reference to the default Gio.PowerProfileMonitor

Return type:

Gio.PowerProfileMonitor

Gets a reference to the default Gio.PowerProfileMonitor for the system.

New in version 2.70.

get_power_saver_enabled()[source]
Returns:

Whether the system is in “Power Saver” mode.

Return type:

bool

Gets whether the system is in “Power Saver” mode.

You are expected to listen to the Gio.PowerProfileMonitor ::notify::power-saver-enabled signal to know when the profile has changed.

New in version 2.70.

Property Details

Gio.PowerProfileMonitor.props.power_saver_enabled
Name:

power-saver-enabled

Type:

bool

Default Value:

False

Flags:

READABLE, EXPLICIT_NOTIFY

Whether “Power Saver” mode is enabled on the system.

New in version 2.70.