DEENESPTFRRUARHIKOZHNL

klasse 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

User GuideAI-GEGENEREERD

Coördineert energietoestanden met het besturingssysteem en informeert State Management over ontwaakgebeurtenissen.
DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 142a6058cb95 Herkomst Open vragen (3)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Coördineert energietoestanden met het besturingssysteem en informeert State Management over ontwaakgebeurtenissen.

De interface coördineert als OS-wrapper de energietoestanden tussen State Management en het besturingssysteem ([SWS_SM_71000]). State Management registreert hierlangs vooraf callback-handlers voor ontwaakgebeurtenissen en stuurt concrete statusverzoeken door naar het besturingssysteem ([SWS_SM_71001]). Na succesvolle reactivering kan de handler-registratie in de OS-wrapper weer ongedaan worden gemaakt. Als essentiële functionele randvoorwaarde geldt dat alle methode-aanroepen niet thread-safe zijn en daarom dwingend door de aanroeper moeten worden geserialiseerd.

Context

De C++-klasse apext::sm::PowerStateInterface fungeert als functionele interface van de module State Management voor de coördinatie van energietoestanden met het besturingssysteem ([SWS_SM_71000], SWS StateManagement §C.1.2 “Class: PowerStateInterface”). In de systeemarchitectuur neemt zij de rol op zich van een OS-wrapper die verzoeken van State Management doorstuurt naar het onderliggende besturingssysteem en terugkoppelingen ontvangt. Bij de totale interactie zijn drie kerncomponenten betrokken: State Management als coördinerende instantie, de klasse PowerStateInterface als bemiddelaar en het host-besturingssysteem dat het hardwarematige energiebeheer uitvoert ([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

Contextdiagram: coördinatie van energietoestanden en ontwaaksignalen tussen State Management, OS-wrapper en besturingssysteem. Bronnen: [SWS_SM_71000], [SWS_SM_71001], [SWS_SM_71003].

Levenscyclus

Het aanmaken en vernietigen van instanties van de klasse PowerStateInterface is in de specificatiedocumenten niet geregeld via expliciete factory-methoden. Volgens interpretatie vindt de instantiëring vermoedelijk plaats door State Management tijdens de initialisatiefase daarvan om de OS-wrapper beschikbaar te stellen. Vraag Q-15bde6ce044e9bc3 (open) Voor het inbinden van de klasse is de header apext/sm/power_state_interface.h voorzien ([SWS_SM_71001], SWS StateManagement §C.1.2.1.1 “Member Functions”).

Wat betreft de interne toestand beheert het object de registratie van een handler voor ontwaakgebeurtenissen. Deze toestand blijft actief totdat de handler expliciet weer wordt verwijderd ([SWS_SM_71005]). Ten aanzien van concurrency zijn alle memberfuncties geclassificeerd als niet thread-safe (not-threadsafe) ([SWS_SM_71001], [SWS_SM_71003], [SWS_SM_71005]). Het aanroepende State Management moet daarom op eigen verantwoordelijkheid waarborgen dat aanroepen naar een instantie strikt worden geserialiseerd en dat er geen onbeschermde parallelle toegangen vanuit meerdere threads plaatsvinden.

Gebruikspad

Een typisch gebruikspad voor het aansturen van energietoestanden en het ontvangen van ontwaaksignalen voltrekt zich in meerdere op elkaar afgestemde stappen:

  • Handler-registratie: voorafgaand aan het inleiden van een energiebesparingsstatus registreert State Management via RegisterWakeUpHandler een callback-functie van het type apext::sm::WakeUpHandler in de OS-wrapper ([SWS_SM_71003], SWS StateManagement §C.1.2.1.1.1 “RegisterWakeUpHandler”). Daarmee wordt vastgelegd hoe State Management over opvolgende ontwaakprocessen wordt geïnformeerd.
  • Statusverzoek: vervolgens roept State Management de methode SetPowerState aan met de gewenste doelstatus apext::sm::PowerState ([SWS_SM_71001], SWS StateManagement §C.1.2.1.1.2 “SetPowerState”). De interface stuurt dit verzoek onmiddellijk door naar het besturingssysteem. De technische realisatie van de overgang vindt vermoedelijk platformspecifiek plaats in het besturingssysteem. Vraag Q-29345b74ba3bedf2 (open)
  • Ontwaaknotificatie: detecteert het besturingssysteem een ontwaakgebeurtenis, dan wordt de melding doorgegeven aan de OS-wrapper. Deze voert de eerder geregistreerde WakeUpHandler uit. De aanroep vindt naar interpretatie vermoedelijk asynchroon plaats in de uitvoeringscontext van het reactiveringsproces. Vraag (open)
  • Handler-deregistratie: zodra het ontwaakproces is voltooid of State Management geen verdere notificaties meer nodig heeft, wordt de geregistreerde callback via UnregisterWakeUpHandler verwijderd uit de OS-wrapper ([SWS_SM_71005], SWS StateManagement §C.1.2.1.1.3 “UnregisterWakeUpHandler”).
Coördinatie van energietoestanden en weksignalenState Management (SM)PowerStateInterfaceBetriebssystem (OS)RegisterWakeUpHandler(handler)SetPowerState(state)Energiezustand weiterleitenUse Case: AufwachvorgangAufwachereignishandler()Use Case: BereinigungUnregisterWakeUpHandler()

Sequentiediagram: typisch verloop van de handler-registratie, doorsturen van de toestand naar het besturingssysteem en deregistratie. Bronnen: [SWS_SM_71001], [SWS_SM_71003], [SWS_SM_71005].

Foutscenario's

De interfacemethoden RegisterWakeUpHandler, SetPowerState en UnregisterWakeUpHandler hebben het retourtype void en definiëren geen specifieke foutretourcodes ([SWS_SM_71001], [SWS_SM_71003], [SWS_SM_71005]). Alle functies zijn gedeclareerd als noexcept en garanderen volledige uitzonderingsveiligheid (exception safe).

Foutieve systeemtoestanden kunnen primair ontstaan door schendingen van precondities. Hiertoe behoort de schending van de vereiste thread-safety door onbeschermde parallelle methode-aanroepen. Daarnaast moet State Management als preconditie voor RegisterWakeUpHandler waarborgen dat het doorgegeven functie-object geldig is en tot de opheffing door UnregisterWakeUpHandler in het geheugen aanwezig blijft ([SWS_SM_71003], [SWS_SM_71005]).

Deze handleiding is uitsluitend gebaseerd op de specificatierichtlijnen van AUTOSAR Adaptive Platform Release R25-11.

Ledenkaart

Klassendiagram

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

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

Detailweergave

Kies een item in de inhoudsopgave.

Methoden

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;

Documentatie van de methoden

functie 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.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 55d0e17f0920 Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De functie RegisterWakeUpHandler van de klasse apext::sm::PowerStateInterface dient ertoe om een callback-functie van het type apext::sm::WakeUpHandler in de OS-wrapper te registreren, om het State Management (SM) op de hoogte te stellen van ontwaakgebeurtenissen [SWS_SM_71003]. De interface is gedefinieerd in de header #include "apext/sm/power_state_interface.h" en adresseert de bovenliggende eis [RS_SM_00402] AUTOSAR_AP_SWS_StateManagement §C.1.2.1.1.1 “RegisterWakeUpHandler”.

Gebruik en aanroepcontext

De declaratie luidt void RegisterWakeUpHandler (apext::sm::WakeUpHandler handler) noexcept [SWS_SM_71003]. De aanroep vindt synchroon plaats voor het overdragen van de functiepointer respectievelijk callback via de parameter handler. Aangezien de functie geen retourwaarde heeft (void), levert ze geen statusfeedback over de voltooiing van de registratie [SWS_SM_71003].

Foutafhandeling en exception-veiligheid

De interface is gespecificeerd als uitzonderingsveilig (exception safe) en geannoteerd met noexcept [SWS_SM_71003]. Aanroepers hoeven daarom geen C++-exceptions af te vangen. Specifieke foutcodes, retourwaarden voor foutindicatie of meldingen aan diagnose- of foutmanagers zijn voor deze API niet gedefinieerd [SWS_SM_71003].

Gelijktijdigheid en beperkingen

  • Thread-veiligheid: De functie is expliciet geclassificeerd als niet-thread-safe (not-threadsafe) [SWS_SM_71003]. Aanroepende instanties moeten ervoor zorgen dat aanroepen niet onbeschermd vanuit concurrerende threads plaatsvinden. Interpretatie: De registratie zal doelmatigerwijs eenmalig plaatsvinden tijdens de sequentiële initialisatiefase van de OS-wrapper, voordat ontwaakgebeurtenissen optreden. Vraag Q-268ab61374f98e7a (open)
  • Ontwikkelingsstatus: De functiedefinitie heeft in Release R25-11 de status DRAFT AUTOSAR_AP_SWS_StateManagement §C.1.2.1.1.1 “RegisterWakeUpHandler”, waardoor wijzigingen in toekomstige specificatiestanden mogelijk zijn.

Deze gebruiksinstructie is geautomatiseerd gegenereerd aan de hand van de AUTOSAR-specificatie voor R25-11.

Implementer's Guide volgt (complexiteit 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#5d40db8b
Content hash
5d40db8b
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

functie 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.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 527ed282abbf Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De elementfunctie SetPowerState van de klasse apext::sm::PowerStateInterface dient ertoe om een verzoek tot wijziging van de systeemvoedingstoestand door te sturen naar het besturingssysteem [SWS_SM_71001]. Ze implementeert de bovenliggende eis [RS_SM_00402] en wordt beschikbaar gesteld via de header apext/sm/power_state_interface.h (SWS StateManagement §C.1.2.1.1.2 “SetPowerState”).

Voor het gebruik en de inpassing in de aanroepcontext gelden de volgende randvoorwaarden:

  • Parameters en retourwaarde: De functie ontvangt de doelstatus state van het type apext::sm::PowerState per waarde. Er is geen retourwaarde (void) [SWS_SM_71001].
  • Uitzonderingsveiligheid en foutafhandeling: De bewerking is gedeclareerd als noexcept en geldt als uitzonderingsveilig (exception safe) [SWS_SM_71001]. Aangezien er geen specifieke foutcodes of exceptions zijn voorzien, zal de verwerking van het verzoek in het besturingssysteem vermoedelijk asynchroon plaatsvinden. Vraag Q-03a3ae7693c3cfee (open)
  • Concurrente uitvoering: De functie-interface is geclassificeerd als niet-thread-safe (not-threadsafe) [SWS_SM_71001]. Gelijktijdige aanroepen op dezelfde instantie moeten door de aanroeper worden beveiligd met externe synchronisatiemaatregelen.
  • Specificatiestatus: De interface is voorzien van de status DRAFT (SWS StateManagement §C.1.2.1.1.2 “SetPowerState”), waardoor toekomstige wijzigingen aan de signatuur of het gedrag mogelijk zijn.

Deze gebruiksinstructie is geautomatiseerd opgesteld en is gebaseerd op de specificatie AUTOSAR Adaptive Platform Release R25-11.

Implementer's Guide volgt (complexiteit 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#4e5c4c44
Content hash
4e5c4c44
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

functie UnregisterWakeUpHandler [SWS_SM_71005] Upstream: RS_SM_00402

void UnregisterWakeUpHandler () noexcept;

Unregister wake-up handler in OS-Wrapper.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: da45ea3a78d7 Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Gebruik en aanroepcontext

De functie UnregisterWakeUpHandler behoort tot het bereik van de klasse apext::sm::PowerStateInterface en wordt beschikbaar gesteld via het headerbestand #include "apext/sm/power_state_interface.h" [SWS_SM_71005]. Het doel ervan is om de registratie van een eerder ingestelde wake-up-handler in de OS-wrapper op te heffen [SWS_SM_71005]. De aanroep geschiedt synchroon, vereist geen invoerparameters en heeft geen retourwaarde (void) [SWS_SM_71005].

Foutafhandeling

De bewerking is gedeclareerd met de identifier noexcept en gespecificeerd als uitzonderingsveilig (exception safe) [SWS_SM_71005]. Specifieke foutcodes, DEM- of DET-vermeldingen zijn niet gedefinieerd. Interpretatie: Bij gebrek aan een retourtype of foutindicatoren zal de functie eventuele interne fouten in de OS-wrapper vermoedelijk niet direct aan de aanroeper melden. Vraag Q-0d692808f97a0fb5 (open)

Gelijktijdigheid en randvoorwaarden

Met betrekking tot de uitvoeringsomgeving is UnregisterWakeUpHandler expliciet geclassificeerd als niet-thread-safe (not-threadsafe) [SWS_SM_71005]. Gelijktijdige aanroepen vanuit meerdere threads mogen niet onbeschermd plaatsvinden en moeten aan de applicatiezijde worden gesynchroniseerd.

Interactie en specificatiestatus

De functie dient ter vervulling van de bovenliggende eis RS_SM_00402 AUTOSAR_AP_SWS_StateManagement §C.1.2.1.1.3 “UnregisterWakeUpHandler”. Bij de integratie moet er rekening mee worden gehouden dat de interfacedefinitie in deze specificatie nog de status DRAFT heeft AUTOSAR_AP_SWS_StateManagement §C.1.2.1.1.3 “UnregisterWakeUpHandler”.

Deze gebruiksinstructie is geautomatiseerd gegenereerd op basis van AUTOSAR R25-11.

Implementer's Guide volgt (complexiteit 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#97fb44fc
Content hash
97fb44fc
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