mirror of
https://gitlab.com/asus-linux/asusctl.git
synced 2026-02-06 00:15:04 +01:00
Groundwork for 'advanced' aura modes Add single zone + Doom light flash Fix mocking for ROGCC Better prepare & change to mapping of keyboard layouts to models and functions Refactor and begin using new key layout stuff Enable first arg to rogcc to set layout in mocking feature mode Complete refactor of key layouts, and to RON serde
76 lines
3.0 KiB
Rust
76 lines
3.0 KiB
Rust
//! # DBus interface proxy for: `org.asuslinux.Daemon`
|
|
//!
|
|
//! This code was generated by `zbus-xmlgen` `1.0.0` from DBus introspection
|
|
//! data. Source: `Interface '/org/asuslinux/Profile' from service
|
|
//! 'org.asuslinux.Daemon' on system bus`.
|
|
//!
|
|
//! You may prefer to adapt it, instead of using it verbatim.
|
|
//!
|
|
//! More information can be found in the
|
|
//! [Writing a client proxy](https://zeenix.pages.freedesktop.org/zbus/client.html)
|
|
//! section of the zbus documentation.
|
|
//!
|
|
//! This DBus object implements
|
|
//! [standard DBus interfaces](https://dbus.freedesktop.org/doc/dbus-specification.html),
|
|
//! (`org.freedesktop.DBus.*`) for which the following zbus proxies can be used:
|
|
//!
|
|
//! * [`zbus::fdo::IntrospectableProxy`]
|
|
//! * [`zbus::fdo::PeerProxy`]
|
|
//! * [`zbus::fdo::PropertiesProxy`]
|
|
//!
|
|
//! …consequently `zbus-xmlgen` did not generate code for the above interfaces.
|
|
|
|
use rog_profiles::fan_curve_set::{CurveData, FanCurveSet};
|
|
use rog_profiles::Profile;
|
|
use zbus::dbus_proxy;
|
|
|
|
#[dbus_proxy(
|
|
interface = "org.asuslinux.Daemon",
|
|
default_path = "/org/asuslinux/Profile"
|
|
)]
|
|
trait Profile {
|
|
/// Get the fan-curve data for the currently active Profile
|
|
fn fan_curve_data(&self, profile: Profile) -> zbus::Result<FanCurveSet>;
|
|
|
|
/// Fetch the active profile name
|
|
fn active_profile(&self) -> zbus::Result<Profile>;
|
|
|
|
/// Get a list of profiles that have fan-curves enabled.
|
|
fn enabled_fan_profiles(&self) -> zbus::Result<Vec<Profile>>;
|
|
|
|
/// Toggle to next platform_profile. Names provided by `Profiles`.
|
|
/// If fan-curves are supported will also activate a fan curve for profile.
|
|
fn next_profile(&self) -> zbus::Result<()>;
|
|
|
|
/// Fetch profile names
|
|
fn profiles(&self) -> zbus::Result<Vec<Profile>>;
|
|
|
|
/// Set this platform_profile name as active
|
|
fn set_active_profile(&self, profile: Profile) -> zbus::Result<()>;
|
|
|
|
/// Set a profile fan curve enabled status. Will also activate a fan curve.
|
|
fn set_fan_curve_enabled(&self, profile: Profile, enabled: bool) -> zbus::Result<()>;
|
|
|
|
/// Set the fan curve for the specified profile, or the profile the user is
|
|
/// currently in if profile == None. Will also activate the fan curve.
|
|
fn set_fan_curve(&self, profile: Profile, curve: CurveData) -> zbus::Result<()>;
|
|
|
|
/// Reset the stored (self) and device curve to the defaults of the
|
|
/// platform.
|
|
///
|
|
/// Each platform_profile has a different default and the defualt can be
|
|
/// read only for the currently active profile.
|
|
fn set_active_curve_to_defaults(&self) -> zbus::Result<()>;
|
|
|
|
/// Reset the stored (self) and device curve to the defaults of the
|
|
/// platform.
|
|
///
|
|
/// Each platform_profile has a different default and the defualt can be
|
|
/// read only for the currently active profile.
|
|
fn reset_profile_curves(&self, profile: Profile) -> zbus::fdo::Result<()>;
|
|
|
|
/// NotifyProfile signal
|
|
#[dbus_proxy(signal)]
|
|
async fn notify_profile(&self, profile: Profile) -> zbus::Result<Profile>;
|
|
}
|