DEENESPTFRRUARHIKOZHNL

classe 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

Guia do utilizadorGERADO POR IA

Coordena estados de energia com o sistema operativo e informa o State Management sobre eventos de despertar.
GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 142a6058cb95 Procedência Perguntas em aberto (3)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

Coordena estados de energia com o sistema operativo e informa o State Management sobre eventos de despertar.

A interface atua como um wrapper de OS, coordenando os estados de energia entre o State Management e o sistema operativo ([SWS_SM_71000]). Através dela, o State Management regista previamente manipuladores de retorno de chamada (callbacks) para eventos de despertar e encaminha solicitações de estado concretas para o sistema operativo ([SWS_SM_71001]). Após a reativação bem-sucedida, o registo do manipulador no wrapper de OS pode ser cancelado. Como restrição funcional essencial, todas as chamadas de método não são seguras para threads (thread-safe), devendo, por isso, ser obrigatoriamente serializadas pelo chamador.

Contexto

A classe C++ apext::sm::PowerStateInterface funciona como uma interface funcional do módulo State Management para coordenar estados de energia com o sistema operativo ([SWS_SM_71000], SWS StateManagement §C.1.2 «Class: PowerStateInterface»). Na arquitetura do sistema, assume o papel de um wrapper de OS que encaminha solicitações do State Management para o sistema operativo subjacente e recebe respostas. Três componentes centrais participam na interação global: o State Management como entidade coordenadora, a classe PowerStateInterface como intermediária e o sistema operativo anfitrião, que executa a gestão de energia a nível de hardware ([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

Diagrama de contexto: coordenação de estados de energia e sinais de despertar entre o State Management, o wrapper de OS e o sistema operativo. Fontes: [SWS_SM_71000], [SWS_SM_71001], [SWS_SM_71003].

Ciclo de vida

A criação e destruição de instâncias da classe PowerStateInterface não é regulada nos documentos de especificação através de métodos de fábrica explícitos. Segundo a interpretação, a instanciação deve ser realizada pelo State Management durante a sua fase de inicialização, a fim de disponibilizar o wrapper de OS. Pergunta Q-15bde6ce044e9bc3 (aberta) O cabeçalho apext/sm/power_state_interface.h é previsto para a integração da classe ([SWS_SM_71001], SWS StateManagement §C.1.2.1.1 «Member Functions»).

No que diz respeito ao estado interno, o objeto gere o registo de um manipulador para eventos de despertar. Este estado permanece ativo até que o manipulador seja explicitamente removido ([SWS_SM_71005]). Relativamente à concorrência, todas as funções-membro são classificadas como não seguras para threads (not-threadsafe) ([SWS_SM_71001], [SWS_SM_71003], [SWS_SM_71005]). O State Management chamador deve, portanto, assegurar de forma autónoma que as chamadas para uma instância sejam estritamente serializadas e que não ocorram acessos paralelos desprotegidos a partir de múltiplas threads.

Caminho de utilização

Um fluxo típico de utilização para controlar estados de energia e receber sinais de despertar processa-se em vários passos coordenados entre si:

  • Registo do manipulador: antes de iniciar um estado de poupança de energia, o State Management regista uma função de retorno de chamada (callback) do tipo apext::sm::WakeUpHandler no wrapper de OS através de RegisterWakeUpHandler ([SWS_SM_71003], SWS StateManagement §C.1.2.1.1.1 «RegisterWakeUpHandler»). Deste modo, define-se como o State Management é informado sobre procedimentos de despertar subsequentes.
  • Solicitação de estado: em seguida, o State Management chama o método SetPowerState com o estado pretendido apext::sm::PowerState ([SWS_SM_71001], SWS StateManagement §C.1.2.1.1.2 «SetPowerState»). A interface encaminha imediatamente esta solicitação para o sistema operativo. A implementação técnica da transição ocorre presumivelmente de forma específica da plataforma no sistema operativo. Pergunta Q-29345b74ba3bedf2 (aberta)
  • Notificação de despertar: caso o sistema operativo detete um evento de despertar, a notificação é comunicada ao wrapper de OS. Este executa o WakeUpHandler previamente registado. Segundo a interpretação, a chamada deve ocorrer de forma assíncrona no contexto de execução do procedimento de reativação. Pergunta (aberta)
  • Desregisto do manipulador: assim que o processo de despertar estiver concluído ou o State Management já não necessitar de notificações adicionais, o callback registado é removido do wrapper de OS através de UnregisterWakeUpHandler ([SWS_SM_71005], SWS StateManagement §C.1.2.1.1.3 «UnregisterWakeUpHandler»).
Coordenação de estados de energia e sinais de wake-upState Management (SM)PowerStateInterfaceBetriebssystem (OS)RegisterWakeUpHandler(handler)SetPowerState(state)Energiezustand weiterleitenUse Case: AufwachvorgangAufwachereignishandler()Use Case: BereinigungUnregisterWakeUpHandler()

Diagrama de sequência: sequência típica de registo de manipulador, encaminhamento de estado para o sistema operativo e desregisto. Fontes: [SWS_SM_71001], [SWS_SM_71003], [SWS_SM_71005].

Cenários de erro

Os métodos de interface RegisterWakeUpHandler, SetPowerState e UnregisterWakeUpHandler possuem o tipo de retorno void e não definem códigos de retorno de erro específicos ([SWS_SM_71001], [SWS_SM_71003], [SWS_SM_71005]). Todas as funções estão declaradas como noexcept e garantem segurança total contra exceções (exception safe).

Estados de sistema com falha podem resultar principalmente de violações de pré-condições. Isto inclui a violação da segurança de threads exigida através de chamadas de método paralelas desprotegidas. Além disso, como pré-condição para RegisterWakeUpHandler, o State Management deve assegurar que o objeto de função transmitido é válido e permanece na memória até ser removido por UnregisterWakeUpHandler ([SWS_SM_71003], [SWS_SM_71005]).

Este guia baseia-se exclusivamente nos requisitos de especificação da AUTOSAR Adaptive Platform Release R25-11.

Mapa de membros

Diagrama de classes

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

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

Vista de detalhes

Selecione uma entrada no índice.

Métodos

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
SetPowerState função

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;

Documentação dos métodos

função 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.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 55d0e17f0920 Procedência Perguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

A função RegisterWakeUpHandler da classe apext::sm::PowerStateInterface serve para registrar uma função de callback do tipo apext::sm::WakeUpHandler no wrapper do OS a fim de notificar o State Management (SM) sobre eventos de despertar [SWS_SM_71003]. A interface está definida no cabeçalho #include "apext/sm/power_state_interface.h" e atende ao requisito superior [RS_SM_00402] AUTOSAR_AP_SWS_StateManagement §C.1.2.1.1.1 «RegisterWakeUpHandler».

Utilização e contexto de chamada

A declaração é void RegisterWakeUpHandler (apext::sm::WakeUpHandler handler) noexcept [SWS_SM_71003]. A chamada ocorre de forma síncrona para a passagem do ponteiro de função ou callback por meio do parâmetro handler. Como a função não possui valor de retorno (void), ela não fornece feedback de status sobre a conclusão do registro [SWS_SM_71003].

Tratamento de erros e segurança de exceções

A interface está especificada como segura contra exceções (exception safe) e anotada com noexcept [SWS_SM_71003]. Os chamadores não precisam, portanto, capturar exceções C++. Códigos de erro específicos, valores de retorno para indicação de erros ou mensagens para gerenciadores de diagnóstico ou de falhas não estão definidos para esta API [SWS_SM_71003].

Simultaneidade e restrições

  • Segurança para threads: A função está explicitamente classificada como não segura para threads (not-threadsafe) [SWS_SM_71003]. As instâncias chamadoras devem garantir que as chamadas não ocorram desprotegidas a partir de threads concorrentes. Interpretação: O registro deve ocorrer de forma conveniente, uma única vez durante a fase sequencial de inicialização do wrapper do OS, antes que ocorram eventos de despertar. Pergunta Q-268ab61374f98e7a (aberta)
  • Status de desenvolvimento: A definição da função possui o status DRAFT no Release R25-11 AUTOSAR_AP_SWS_StateManagement §C.1.2.1.1.1 «RegisterWakeUpHandler», razão pela qual modificações em versões futuras da especificação são possíveis.

Esta nota de uso foi gerada automaticamente com base na especificação AUTOSAR para R25-11.

Guia do implementador em breve (complexidade 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#472b3fd6
Content hash
472b3fd6
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

função 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.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 527ed282abbf Procedência Perguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

A função-membro SetPowerState da classe apext::sm::PowerStateInterface serve para encaminhar uma solicitação de alteração do estado de energia do sistema para o sistema operacional [SWS_SM_71001]. Ela implementa o requisito superior [RS_SM_00402] e é disponibilizada através do cabeçalho apext/sm/power_state_interface.h (SWS StateManagement §C.1.2.1.1.2 «SetPowerState»).

Para o uso e a integração no contexto de chamada, aplicam-se as seguintes condições estruturais:

  • Parâmetros e valor de retorno: A função recebe o estado de destino state do tipo apext::sm::PowerState por valor. Não existe valor de retorno (void) [SWS_SM_71001].
  • Segurança contra exceções e tratamento de erros: A operação está declarada como noexcept e é considerada segura contra exceções (exception safe) [SWS_SM_71001]. Como não estão previstos códigos de erro específicos ou exceções, o processamento da solicitação no sistema operacional provavelmente deve ocorrer de forma assíncrona. Pergunta Q-03a3ae7693c3cfee (aberta)
  • Concorrência: A interface da função está classificada como não segura para threads (not-threadsafe) [SWS_SM_71001]. Chamadas simultâneas na mesma instância devem ser protegidas pelo chamador por meio de medidas externas de sincronização.
  • Status da especificação: A interface possui o status DRAFT (SWS StateManagement §C.1.2.1.1.2 «SetPowerState»), razão pela qual modificações futuras na assinatura ou no comportamento são possíveis.

Esta nota de uso foi criada de forma automatizada e se baseia na especificação AUTOSAR Adaptive Platform Release R25-11.

Guia do implementador em breve (complexidade 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#6589899d
Content hash
6589899d
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

função UnregisterWakeUpHandler [SWS_SM_71005] Upstream: RS_SM_00402

void UnregisterWakeUpHandler () noexcept;

Unregister wake-up handler in OS-Wrapper.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: da45ea3a78d7 Procedência Perguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

Utilização e contexto de chamada

A função UnregisterWakeUpHandler pertence ao escopo da classe apext::sm::PowerStateInterface e é fornecida por meio do arquivo de cabeçalho #include "apext/sm/power_state_interface.h" [SWS_SM_71005]. Seu propósito consiste em cancelar o registro de um handler de wake-up previamente configurado no wrapper do OS [SWS_SM_71005]. A chamada ocorre de forma síncrona, não requer parâmetros de passagem e não possui valor de retorno (void) [SWS_SM_71005].

Tratamento de erros

A operação está declarada com o identificador noexcept e especificada como segura contra exceções (exception safe) [SWS_SM_71005]. Códigos de erro específicos, entradas de DEM ou DET não estão definidos. Interpretação: Devido à ausência de tipo de retorno ou indicadores de erro, a função provavelmente não deve relatar eventuais erros internos no wrapper do OS diretamente ao chamador. Pergunta Q-0d692808f97a0fb5 (aberta)

Simultaneidade e condições marginais

Em relação ao ambiente de execução, UnregisterWakeUpHandler está explicitamente classificada como não segura para threads (not-threadsafe) [SWS_SM_71005]. Chamadas simultâneas a partir de múltiplas threads não podem ocorrer desprotegidas e devem ser sincronizadas pelo lado da aplicação.

Interação e status da especificação

A função serve para o cumprimento do requisito superior RS_SM_00402 AUTOSAR_AP_SWS_StateManagement §C.1.2.1.1.3 «UnregisterWakeUpHandler». Na integração, deve-se levar em consideração que a definição da interface na presente especificação ainda apresenta o status DRAFT AUTOSAR_AP_SWS_StateManagement §C.1.2.1.1.3 «UnregisterWakeUpHandler».

Esta nota de uso foi gerada automaticamente com base no AUTOSAR R25-11.

Guia do implementador em breve (complexidade 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#e64b139f
Content hash
e64b139f
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