DEENESPTFRRUARHIKOZHNL

类 apext::sm::PowerStateInterface

[SWS_SM_71000] Upstream: RS_SM_00402

class PowerStateInterface {...};

class for power state coordination with OS

Header-Datei#include "apext/sm/power_state_interface.h"
Forwarding-Header#include "apext/sm/sm_fwd.h"
Scopenamespace apext::sm

用户指南人工智能生成

与操作系统协调电源状态,并将唤醒事件通知 State Management。
AI 生成 未审核 模型: gemini-3.8-flash-medium · 推理强度: medium · 温度: 不可控 · 提示词: 142a6058cb95 来源 未决问题(3)
译自德文指南gemini-3.8-flash-low · 2026-10-13 · 德文原文

与操作系统协调电源状态,并将唤醒事件通知 State Management。

该接口作为 OS 包装器,协调 State Management 与操作系统之间的电源状态 ([SWS_SM_71000])。State Management 通过它预先注册唤醒事件的回调处理程序,并将具体的状态请求转发给操作系统 ([SWS_SM_71001])。成功重新激活后,可以在 OS 包装器中注销该处理程序注册。一个重要的功能边界条件是,所有方法调用都不是线程安全的,因此调用者必须对其进行串行化。

上下文

C++ 类 apext::sm::PowerStateInterface 用作 State Management 模块的功能接口,用于与操作系统协调电源状态 ([SWS_SM_71000], SWS StateManagement §C.1.2 “Class: PowerStateInterface”)。在系统架构中,它承担 OS 包装器的角色,将 State Management 的请求转发到底层操作系统并接收反馈。整个交互涉及三个核心组件:作为协调实例的 State Management、作为中介的类 PowerStateInterface 以及执行底层电源管理的主机操作系统 ([SWS_SM_71001])。

sm State Management (SM) psi PowerStateInterface (OS-Wrapper) sm->psi Zustandsanforderung & Handler-Registrierung psi->sm WakeUpHandler-Aufruf os Betriebssystem (OS) psi->os Energiezustands- weiterleitung os->psi Aufwachsignal

上下文图:State Management、OS 包装器和操作系统之间电源状态与唤醒信号的协调。来源:[SWS_SM_71000], [SWS_SM_71001], [SWS_SM_71003]。

生命周期

规范文档中未通过显式工厂方法规定类 PowerStateInterface 实例的创建和销毁。根据解释,实例化应该由 State Management 在其初始化阶段执行,以提供 OS 包装器。 问题 Q-15bde6ce044e9bc3 (未决)要包含该类,预定使用头文件 apext/sm/power_state_interface.h ([SWS_SM_71001], SWS StateManagement §C.1.2.1.1 “Member Functions”)。

在内部状态方面,该对象管理唤醒事件处理程序的注册。该状态一直保持活动,直到显式再次移除该处理程序 ([SWS_SM_71005])。关于并发性,所有成员函数均被归类为非线程安全 (not-threadsafe) ([SWS_SM_71001], [SWS_SM_71003], [SWS_SM_71005])。因此,发起调用的 State Management 必须自行确保对实例的调用严格串行化,且不会发生来自多个线程的未受保护的并发访问。

使用路径

用于控制电源状态和接收唤醒信号的典型使用路径分为多个协调步骤进行:

电源状态与唤醒信号协调State Management (SM)PowerStateInterfaceBetriebssystem (OS)RegisterWakeUpHandler(handler)SetPowerState(state)Energiezustand weiterleitenUse Case: AufwachvorgangAufwachereignishandler()Use Case: BereinigungUnregisterWakeUpHandler()

时序图:处理程序注册、状态转发到操作系统以及注销的典型流程。来源:[SWS_SM_71001], [SWS_SM_71003], [SWS_SM_71005]。

错误场景

接口方法 RegisterWakeUpHandler、SetPowerState 和 UnregisterWakeUpHandler 的返回类型为 void,且未定义特定的错误返回码 ([SWS_SM_71001], [SWS_SM_71003], [SWS_SM_71005])。所有函数均声明为 noexcept 并保证完全异常安全 (exception safe)。

错误的系统状态主要可能由违反前置条件引起。这包括由于未受保护的并发方法调用而违反所要求的线程安全性。此外,作为 RegisterWakeUpHandler 的前置条件,State Management 必须确保传入的函数对象有效,并在通过 UnregisterWakeUpHandler 解除之前一直保留在内存中 ([SWS_SM_71003], [SWS_SM_71005])。

本指南仅基于 AUTOSAR Adaptive Platform Release R25-11 的规范要求。

成员图

类图

Hohle Dreieckspfeile = Vererbung (zeigt zur Basisklasse); Klicken öffnet die jeweilige Klassenseite.

G napext__sm__PowerStateInterface528 PowerStateInterface + RegisterWakeUpHandler() + SetPowerState() + UnregisterWakeUpHandler()

详细视图

请在大纲中选择一个条目。

方法

Register wake-up handler function in the OS-Wrapper to inform SM about wake-up.

void RegisterWakeUpHandler (apext::sm::WakeUpHandler handler) noexcept; DIRECTION NOT handler -- DEFINED

Forward the power state request to OS.

void SetPowerState (apext::sm::PowerState state) noexcept; DIRECTION NOT state -- DEFINED

Unregister wake-up handler in OS-Wrapper.

void UnregisterWakeUpHandler () noexcept;

方法文档

函数 RegisterWakeUpHandler [SWS_SM_71003] Upstream: RS_SM_00402

void RegisterWakeUpHandler (apext::sm::WakeUpHandler handler) noexcept; DIRECTION NOT           handler                    -- DEFINED

Register wake-up handler function in the OS-Wrapper to inform SM about wake-up.

AI 生成 未审核 模型: gemini-3.8-flash-medium · 推理强度: medium · 温度: 不可控 · 提示词: 55d0e17f0920 来源 未决问题(1)
译自德文指南gemini-3.8-flash-low · 2026-10-13 · 德文原文

类 apext::sm::PowerStateInterface 的函数 RegisterWakeUpHandler 用于在 OS 封装层中注册类型为 apext::sm::WakeUpHandler 的回调函数,以通知 State Management (SM) 唤醒事件 [SWS_SM_71003]。该接口在头文件 #include "apext/sm/power_state_interface.h" 中定义,并满足上层需求 [RS_SM_00402] AUTOSAR_AP_SWS_StateManagement §C.1.2.1.1.1 “RegisterWakeUpHandler”。

用法与调用上下文

其声明为 void RegisterWakeUpHandler (apext::sm::WakeUpHandler handler) noexcept [SWS_SM_71003]。该调用同步执行,通过参数 handler 传递函数指针或回调。由于该函数没有返回值(void),因此它不提供关于注册是否完成的状态反馈 [SWS_SM_71003]。

错误处理与异常安全性

该接口被指定为异常安全(exception safe)并带有 noexcept 注解 [SWS_SM_71003]。因此调用方无需捕获 C++ 异常。未为该 API 定义特定的错误码、用于错误指示的返回值或发往诊断及错误管理器的消息 [SWS_SM_71003]。

并发性与限制

本使用说明是根据 R25-11 的 AUTOSAR 规范自动生成的。

实现者指南即将推出(复杂度 I1)

Header-Datei#include "apext/sm/power_state_interface.h"
Scopeclass apext::sm::PowerStateInterface
Exception-Sicherheitexception safe
Thread-Sicherheitnot-threadsafe

Rückgabewert

TypBeschreibung
None

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_SM_71003
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_SM_71003@rel:R25-11#6591bbb8
Content hash
6591bbb8
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_StateManagement.pdf#nameddest=SWS_SM_71003
Status: valid/unmigrated Version: rel:R25-11#bc05c3e2 Versionshistorie & Revisions (1 transition)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_SM_71003@rel:R25-11#bc05c3e2
Point-in-Time History:
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

函数 SetPowerState [SWS_SM_71001] Upstream: RS_SM_00402

void SetPowerState (apext::sm::PowerState state) noexcept; DIRECTION NOT           state                      -- DEFINED

Forward the power state request to OS.

AI 生成 未审核 模型: gemini-3.8-flash-medium · 推理强度: medium · 温度: 不可控 · 提示词: 527ed282abbf 来源 未决问题(1)
译自德文指南gemini-3.8-flash-low · 2026-10-13 · 德文原文

类 apext::sm::PowerStateInterface 的成员函数 SetPowerState 用于将更改系统电源状态的请求转发给操作系统 [SWS_SM_71001]。它实现了上层需求 [RS_SM_00402],并通过头文件 apext/sm/power_state_interface.h 提供(SWS StateManagement §C.1.2.1.1.2 “SetPowerState”)。

对于在调用上下文中的使用与集成,适用以下基本条件:

  • 参数与返回值:该函数按值接收类型为 apext::sm::PowerState 的目标状态 state。不存在返回值(void)[SWS_SM_71001]。
  • 异常安全性与错误处理:该操作声明为 noexcept,被视为异常安全(exception safe)[SWS_SM_71001]。由于未规定特定的错误码或异常,操作系统中的请求处理预计以异步方式进行。 问题 Q-03a3ae7693c3cfee (未决)
  • 并发性:该函数接口被归类为非线程安全(not-threadsafe)[SWS_SM_71001]。调用方必须通过外部同步措施来确保对同一实例的并发调用安全。
  • 规范状态:该接口具有 DRAFT 状态(SWS StateManagement §C.1.2.1.1.2 “SetPowerState”),因此未来可能会对其签名或行为进行修改。

本使用说明由自动化生成,基于 AUTOSAR Adaptive Platform Release R25-11 规范。

实现者指南即将推出(复杂度 I1)

Header-Datei#include "apext/sm/power_state_interface.h"
Scopeclass apext::sm::PowerStateInterface
Exception-Sicherheitexception safe
Thread-Sicherheitnot-threadsafe

Rückgabewert

TypBeschreibung
None

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_SM_71001
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_SM_71001@rel:R25-11#b7e0fea4
Content hash
b7e0fea4
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_StateManagement.pdf#nameddest=SWS_SM_71001
Status: valid/unmigrated Version: rel:R25-11#be2610a0 Versionshistorie & Revisions (1 transition)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_SM_71001@rel:R25-11#be2610a0
Point-in-Time History:
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

函数 UnregisterWakeUpHandler [SWS_SM_71005] Upstream: RS_SM_00402

void UnregisterWakeUpHandler () noexcept;

Unregister wake-up handler in OS-Wrapper.

AI 生成 未审核 模型: gemini-3.8-flash-medium · 推理强度: medium · 温度: 不可控 · 提示词: da45ea3a78d7 来源 未决问题(1)
译自德文指南gemini-3.8-flash-low · 2026-10-13 · 德文原文

用法与调用上下文

函数 UnregisterWakeUpHandler 属于类 apext::sm::PowerStateInterface 的作用域,并通过头文件 #include "apext/sm/power_state_interface.h" 提供 [SWS_SM_71005]。其目的是注销先前在 OS 封装层中建立的唤醒处理程序 [SWS_SM_71005]。该调用同步执行,不需要传入参数,且没有返回值(void)[SWS_SM_71005]。

错误处理

该操作以标识符 noexcept 声明,并被指定为异常安全(exception safe)[SWS_SM_71005]。未定义特定的错误码、DEM 或 DET 条目。Interpretation:由于缺少返回类型或错误指示符,该函数预计不会将 OS 封装层内部的可能错误直接报告给调用方。 问题 Q-0d692808f97a0fb5 (未决)

并发性与边界条件

关于执行环境,UnregisterWakeUpHandler 被明确归类为非线程安全(not-threadsafe)[SWS_SM_71005]。来自多个线程的并发调用不得在无保护的情况下进行,必须在应用端进行同步。

交互与规范状态

该函数用于满足上层需求 RS_SM_00402 AUTOSAR_AP_SWS_StateManagement §C.1.2.1.1.3 “UnregisterWakeUpHandler”。集成时需要注意,在本规范中该接口定义仍处于 DRAFT 状态 AUTOSAR_AP_SWS_StateManagement §C.1.2.1.1.3 “UnregisterWakeUpHandler”。

本使用说明基于 AUTOSAR R25-11 自动生成。

实现者指南即将推出(复杂度 I1)

Header-Datei#include "apext/sm/power_state_interface.h"
Scopeclass apext::sm::PowerStateInterface
Exception-Sicherheitexception safe
Thread-Sicherheitnot-threadsafe

Rückgabewert

TypBeschreibung
None

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_SM_71005
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_SM_71005@rel:R25-11#bd112a35
Content hash
bd112a35
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_StateManagement.pdf#nameddest=SWS_SM_71005
Status: valid/unmigrated Version: rel:R25-11#ef4ae762 Versionshistorie & Revisions (1 transition)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_SM_71005@rel:R25-11#ef4ae762
Point-in-Time History:
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill