DEENESPTFRRUARHIKOZHNL

clase <SI-Namespace>::skeleton:: events::<Event>

Guía del usuarioGENERADO POR IA

Permite a los proveedores de servicios el envío de eventos desde el lado del servidor a las aplicaciones suscriptoras.
GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 61a657b4f5c6 Procedencia Preguntas abiertas (2)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

Permite a los proveedores de servicios el envío de eventos desde el lado del servidor a las aplicaciones suscriptoras.

La clase <SI-Namespace>::skeleton::events::<Event> sirve a los proveedores de servicios en AUTOSAR Adaptive Platform para publicar datos de eventos a aplicaciones suscriptoras. Los eventos pueden enviarse de forma eficiente sin copia, ya sea basándose en copia o mediante búferes asignados previamente mediante Allocate() ([SWS_CM_90438]). La llamada de envío a través de Send() requiere obligatoriamente que la instancia de servicio correspondiente se haya ofrecido previamente con éxito y que se respete el intervalo mínimo de envío configurado ([SWS_CM_00162]).

Contexto

La clase <SI-Namespace>::skeleton::events::<Event> representa la interfaz del lado del servidor para publicar eventos de un servicio dentro de AUTOSAR Adaptive Platform. Permite a una aplicación de servicio (Skeleton) transmitir datos de evento actualizados del tipo SampleType ([SWS_CM_11400]) de forma asíncrona a todas las aplicaciones cliente suscriptoras ([SWS_CM_00162]). El Skeleton interactúa directamente con la capa de comunicación (Communication Management), que asume la localización de instancias de servicio y la distribución física de los datos de eventos. Además de enviar datos, la instancia de Event supervisa el estado de suscripción actual y comunica los cambios en el grupo de suscriptores al proveedor del servicio ([SWS_CM_12008], [SWS_CM_12011]).

EventKontext Application Anwendungs-Skeleton Event <SI-Namespace>::skeleton::events::<Event> Application->Event Send() / Allocate() Event->Application SubscriptionState ComMgt Communication Management Event->ComMgt Datenweitergabe ComMgt->Event Abonnement-Zustand Subscribers Abonnierende Anwendungen ComMgt->Subscribers Event-Verteilung

Diagrama de contexto: interacción de la clase Event con el proveedor de servicios, Communication Management y los suscriptores. Fuentes: [SWS_CM_00162], [SWS_CM_90437], [SWS_CM_12011]

Ciclo de vida

La instanciación de la clase Event se realiza junto con la instancia de servicio Skeleton de nivel superior. Presumiblemente, la vida útil de la instancia de Event está ligada de forma fija a la vida útil del Skeleton, de modo que un objeto de evento solo se vuelve utilizable tras la construcción del servicio y finaliza con la destrucción de este. Pregunta Q-4e733f93c853a3eb (abierta) Antes de una transmisión activa de datos, el servicio debe haberse ofrecido, ya que los intentos de transmisión previos a la oferta del servicio fallan ([SWS_CM_00162]).

Durante la fase de funcionamiento, la instancia refleja el estado de las conexiones de los suscriptores. A través de GetSubscriptionState() se puede consultar el estado actual ([SWS_CM_12011]). Para reaccionar de forma asíncrona a los cambios de estado, la aplicación registra mediante SetSubscriptionStateChangeHandler() una retrollamada correspondiente ([SWS_CM_12008]), vinculada opcionalmente a un contexto de ejecución específico a través de un objeto ejecutor ([SWS_CM_12009]). Al finalizar o reorientar el servicio, este manejador puede darse de baja de nuevo a través de UnsetSubscriptionStateChangeHandler() ([SWS_CM_12010]). Todas las consultas de estado y métodos de manejador están declarados como noexcept y garantizan la seguridad frente a excepciones ([SWS_CM_12008], [SWS_CM_12011]).

Ruta de uso

Para la publicación de datos de eventos, la aplicación de servicio dispone principalmente de dos modos de transmisión: la transmisión basada en copia y el método de copia cero (zero-copy) mediante memoria gestionada (EXP ara::com API p. 10).

En la ruta de uso regular, el proveedor de servicios registra primero, si es necesario, una retrollamada para cambios de suscripción ([SWS_CM_12008]). En cuanto hay suscriptores presentes, la aplicación crea datos locales y los pasa por valor a Send() ([SWS_CM_00162]), en donde Communication Management crea una copia de los datos y la reenvía a todos los suscriptores (EXP ara::com API p. 10).

Como alternativa, para evitar sobrecargas de copia, la aplicación solicita directamente a la capa de comunicación a través de Allocate() un búfer de memoria en forma de un ara::com::SampleAllocateePtr<SampleType> ([SWS_CM_90438], EXP ara::com API p. 10). Tras rellenar el búfer, este se transmite a través de la sobrecarga especializada de Send() ([SWS_CM_90437]). Interpretación: con el envío, es probable que la propiedad de la memoria pase completamente a Communication Management, ya que se prohíbe expresamente a la aplicación cualquier acceso posterior a los datos tras la llamada ([SWS_CM_90437]). Pregunta Q-86aba8c6f9bf42e9 (abierta)

Flujo de transmisión de eventos en el skeletonAnwendung (Skeleton)Event-ObjektCommunication ManagementUse Case: Handler-RegistrierungSetSubscriptionStateChangeHandler(handler)Abonnement-Handler registrierenUse Case: Variante 1: Transmisión zero-copy con AllocateAllocate()Speicherpuffer reservierenSampleAllocateePtrSampleAllocateePtrPufferdaten schreibenSend(ptr)Transmitir datos a los suscriptoresResult<void>Result<void>Use Case: Variante 2: Transmisión basada en copiaSend(data)Crear copia y transmitirResult<void>Result<void>

Diagrama de secuencias: flujo típico de la transmisión de eventos, incluidos el registro de manejadores y la asignación. Fuentes: [SWS_CM_12008], [SWS_CM_90438], [SWS_CM_90437], [SWS_CM_00162]

Escenarios de error

Las llamadas a Send() devuelven un ara::core::Result<void> que, en caso de error, contiene un código de error correspondiente del tipo ara::com::ComErrc ([SWS_CM_00162], [SWS_CM_90437]). Entre los casos de error definidos se incluyen:

  • ComErrc::kServiceNotOffered: el servicio aún no se había proporcionado a través de OfferService() antes del intento de envío ([SWS_CM_00162], [SWS_CM_90437]).
  • ComErrc::kMinimumSendIntervalViolationError: no se alcanzó el intervalo mínimo de envío configurado para el evento (minimumSendInterval), debido a que se emitieron llamadas de envío con una sucesión demasiado rápida ([SWS_CM_00162], [SWS_CM_90437]).

Además, deben tenerse en cuenta condiciones previas en la asignación y la configuración de manejadores:

  • Allocate() no es seguro frente a excepciones (not exception safe) y genera una SampleAllocationViolation en caso de recursos de memoria insuficientes o una AllocateUsageViolation en caso de uso no permitido de asignadores definidos por el usuario ([SWS_CM_90438]).
  • SetSubscriptionStateChangeHandler() requiere un objeto de función válido e invocable; si se pasa un manejador nulo o inexistente, esto da lugar a una InvalidHandlerViolation ([SWS_CM_12008], [SWS_CM_12009]).

Esta guía se basa en la especificación AUTOSAR Adaptive Platform R25-11.

Mapa de miembros

Diagrama de clases

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

G n_SI_Namespace___skeleton___events___Event_831 <Event> + Allocate() + Send() + GetSubscriptionState() + SetSubscriptionStateChangeHandler() + UnsetSubscriptionStateChangeHandler()

Vista de detalle

Selecciona una entrada en el índice.

Métodos

Allocate función

Allocating data for event transfer when Communication Management is responsible for the data.

Query ara::com::SubscriptionState of an event.

ara::com::SubscriptionState GetSubscriptionState () const noexcept;
Send función 2

Send event where the application is responsible for the data. The Communication Management creates a copy of the data to send and sends it to all subscribing applications.

Sobrecargas Send 2
ara::core::Result< void > Send (<SSampleDerivedType> data) noexcept; SWS_CM_00162
ara::core::Result< void > Send (ara::com::SampleAllocateePtr< Sample Type > data) noexcept; SWS_CM_90437

Set/Register ara::com::SubscriptionState change handler

Sobrecargas SetSubscriptionStateChangeHandler 2
void SetSubscriptionStateChangeHandler (ara::com::SubscriptionState ChangeHandler handler) noexcept; SWS_CM_12008
template <typename ExecutorT> void SetSubscriptionStateChangeHandler (ara::com::SubscriptionState ChangeHandler handler, ExecutorT &&executor) noexcept; SWS_CM_12009

Unset/Deregister the ara::com::SubscriptionState change handler

void UnsetSubscriptionStateChangeHandler () noexcept;

Alias de tipo

SampleType alias de tipo

Data type for the value of an event sample (the CppImplementationDataType of the Event, i.e. for the CppImplementationDataType which is either referenced by the VariableDataPrototype in the role type directly or via the indirection of a DataTypeMap)

using SampleType = <SSampleCppidt>;

Documentación de los métodos

función Allocate [SWS_CM_90438] Upstream: RS_CM_00201, RS_AP_00114, RS_AP_00115, RS_AP_00120

ara::com::SampleAllocateePtr< SampleType > Allocate ();

Allocating data for event transfer when Communication Management is responsible for the data.

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: fc3608719061 Procedencia
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

El método Allocate se invoca a nivel de Skeleton para un evento ([SWS_CM_90438]; AUTOSAR_AP_EXP_ARAComAPI §5.4.1 «Skeleton Class API’s») con el fin de asignar memoria para la transferencia de datos de eventos cuando el Communication Management (ara::com) es responsable de la gestión de los datos ([SWS_CM_90438]). Devuelve una instancia de tipo ara::com::SampleAllocateePtr<SampleType> ([SWS_CM_90438]). Conceptualmente, este tipo de puntero se comporta como un std::unique_ptr<T>, de modo que solo una parte es propietaria del puntero en cada momento (ARAComAPI §6 «Event Allocate/Send sample Binding implementer hint»).

En cuanto al tratamiento de errores y la seguridad frente a excepciones, Allocate está especificado como not exception safe ([SWS_CM_90438]). La especificación define dos posibles infracciones (violations):

  • SampleAllocationViolation: No hay suficientes recursos de memoria disponibles para asignar los datos ([SWS_CM_90438]).
  • AllocateUsageViolation: La asignación se realizó de forma inadmisible a través de un asignador personalizado ([SWS_CM_90438]).

El concepto tras Allocate tiene como objetivo primordial admitir mecanismos de copia cero (zero-copy), en particular con transporte IPC basado en memoria compartida, presuponiendo una sincronización estricta entre lectores y escritores (ARAComAPI §6 «Event Allocate/Send sample Binding implementer hint»). Los implementadores deben tener en cuenta que los requisitos de serialización pueden anular la copia cero si los tipos de datos no están configurados como compatibles binariamente en el despliegue o si una lógica de detección lo descarta (ARAComAPI §6 «Event Allocate/Send sample Binding implementer hint»).

En interacción con el envío de eventos, el puntero de memoria obtenido a través de Allocate se pasa a Send(ara::com::SampleAllocateePtr<SampleType> data) ([SWS_CM_90437]). Tras la invocación de Send, la aplicación de servicio ya no debe acceder a los datos una vez que el Communication Management envía los datos a todas las aplicaciones suscritas ([SWS_CM_90437]).

Este texto ha sido generado por una IA y se basa exclusivamente en los documentos de especificación de la versión R25-11 de AUTOSAR.

Guía del implementador pendiente (complejidad I2)

Header-Datei#include "<SiNamespaceDerivedDirectoryPath>/<SiShortname>_skeleton.h"
Scopeclass <SI-Namespace>::skeleton:: events::<Event>
Exception-Sicherheitnot exception safe
Verletzungen (Violations)SampleAllocation- Not enough memory resources can be allocated Violation AllocateUsageVio- The allocation was illegally done via custom allocator lation

Rückgabewert

TypBeschreibung
ara::com::SampleA ara::com::SampleAllocateePtr to an event sample AllocateePtr< Sample Type >

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

Record
AUTOSAR/AP/record/SWS_CM_90438
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CM_90438@rel:R25-11#c15164f3
Content hash
c15164f3
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_CommunicationManagement.pdf#nameddest=SWS_CM_90438
Status: valid/unmigrated Version: rel:R25-11#3059e6d8 Versionshistorie & Revisions (1 transition, 8 revision)
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_CM_90438@rel:R25-11#3059e6d8
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#b02a325f2026-09-30
  • R19-11rel:R19-11#b404edd72026-10-14
  • R20-11rel:R20-11#8f3783f62026-10-14
  • R21-11rel:R21-11#a234befb2026-10-14
  • R22-11rel:R22-11#340e44dd2026-10-14
  • R23-11rel:R23-11#340e44dd2026-10-14
  • R24-11rel:R24-11#2e4120f42026-10-14
  • R25-11rel:R25-11#3059e6d82026-10-14 active
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

función GetSubscriptionState [SWS_CM_12011]

ara::com::SubscriptionState GetSubscriptionState () const noexcept;

Query ara::com::SubscriptionState of an event.

Header-Datei#include "<SiNamespaceDerivedDirectoryPath>/<SiShortname>_skeleton.h"
Scopeclass <SI-Namespace>::skeleton:: events::<Event>
Exception-Sicherheitexception safe

Rückgabewert

TypBeschreibung
ara::com::SubscriptionStateThe state of the subscription (as per [SWS_CM_12008]).

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

Record
AUTOSAR/AP/record/SWS_CM_12011
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CM_12011@rel:R25-11#b88cd50f
Content hash
b88cd50f
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_CommunicationManagement.pdf#nameddest=SWS_CM_12011
Status: valid/unmigrated Version: rel:R25-11#dec03137 Versionshistorie & Revisions (1 transition, 4 revision)
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_CM_12011@rel:R25-11#dec03137
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#83254be02026-09-30
  • R23-11rel:R23-11#ca04b0b12026-10-14
  • R24-11rel:R24-11#504de02a2026-10-14
  • R25-11rel:R25-11#dec031372026-10-14 active
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

función Send [SWS_CM_00162] Upstream: RS_CM_00201, RS_AP_00114, RS_AP_00121

ara::core::Result< void > Send (<SSampleDerivedType> data) noexcept;

Send event where the application is responsible for the data. The Communication Management creates a copy of the data to send and sends it to all subscribing applications.

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: b00b88b264c7 Procedencia
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

La función [SWS_CM_00162] sirve, en el lado del proveedor del servicio y dentro de <SI-Namespace>::skeleton::events::<Event>, para enviar datos de eventos a todas las aplicaciones suscritas. En esta variante, la responsabilidad de la asignación de datos recae por completo en la aplicación usuaria. El objeto de datos se transfiere a través del parámetro data, tras lo cual la implementación del binding realiza una copia interna durante la llamada (ARAComAPI, Figure 6.17 «BrakeEvent Class»). Tras el retorno de la llamada síncrona al método, la aplicación puede modificar o liberar inmediatamente el área de memoria original.

El método está declarado con noexcept y especificado como seguro frente a excepciones. Devuelve un ara::core::Result<void> que, en caso de éxito, contiene void y, en caso de error, reporta códigos de error de [SWS_CM_10432] ([SWS_CM_00162]):

  • ComErrc::kServiceNotOffered: Se produce si la instancia de servicio aún no se ha puesto a disposición mediante OfferService().
  • ComErrc::kMinimumSendIntervalViolationError: Se produce si la solicitud de envío se ha emitido con mayor rapidez que el intervalo mínimo de envío configurado (ServiceInterfaceDeploymentElement.minimumSendInterval).

A diferencia de la alternativa de copia cero [SWS_CM_90437], la cual requiere punteros de tipo ara::com::SampleAllocateePtr obtenidos a través de Allocate(), esta llamada no requiere vincular memoria al framework. El mismo comportamiento de transmisión y las mismas condiciones de error se aplican también, según [SWS_CM_00119], al método de actualización Update de campos.

Esta nota de uso se generó de forma automatizada sobre la base de la especificación.

Guía del implementador pendiente (complejidad I2)

Header-Datei#include "<SiNamespaceDerivedDirectoryPath>/<SiShortname>_skeleton.h"
Scopeclass <SI-Namespace>::skeleton:: events::<Event>
Exception-Sicherheitexception safe

Parameter (in)

ParameterBeschreibung
dataThe data to send out to the subscribed applications.

Rückgabewert

TypBeschreibung
ara::core::Result< void >• If successful: an ara::core::Result containing a ara:: core::Result::value_type containing a void • If unsuccessful: an ara::core::Result containing an ara:: core::Result::error_type i.e. a corresponding ara:: com::ComErrc

Fehler

FehlercodeBeschreibung
ComErrc::kServiceNotOfferedrollback_semantics Service has not yet been offered via OfferService()
ComErrc::kMinimumSendIntervalViolationErrorrollback_semantics Minimum Send Interval violation, because a transmission request for a service instance element (event, field or method call) was issued faster than allowed, i.e., the configured minimum send interval ServiceInterfaceDeploymentElement. minimumSendInterval for the service instance element has not yet expired.

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

Record
AUTOSAR/AP/record/SWS_CM_00162
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CM_00162@rel:R25-11#be5c3474
Content hash
be5c3474
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_CommunicationManagement.pdf#nameddest=SWS_CM_00162
Status: valid/unmigrated Version: rel:R25-11#ba1342ed Versionshistorie & Revisions (1 transition, 8 revision)
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_CM_00162@rel:R25-11#ba1342ed
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#862d13312026-09-30
  • R19-11rel:R19-11#13bfaa4c2026-10-14
  • R20-11rel:R20-11#1f8e5ce62026-10-14
  • R21-11rel:R21-11#dda704792026-10-14
  • R22-11rel:R22-11#d72ec9682026-10-14
  • R23-11rel:R23-11#eda889842026-10-14
  • R24-11rel:R24-11#ec951a632026-10-14
  • R25-11rel:R25-11#ba1342ed2026-10-14 active
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

función Send [SWS_CM_90437] Upstream: RS_CM_00201, RS_AP_00114, RS_AP_00121

ara::core::Result< void > Send (ara::com::SampleAllocateePtr< Sample Type > data) noexcept;

Send event where Communication Management is responsible for the data. The data is allocated using Allocate(). The application is not allowed to access the data after Communication Management sends it to all subscribing applications.

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: b8026be0eee1 Procedencia
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

Uso y contexto de llamada

El método Send se invoca en una instancia de evento en el skeleton del servicio (<SI-Namespace>::skeleton::events::<Event>) ([SWS_CM_90437]). Transmite datos de eventos de cuya gestión de memoria se encarga Communication Management. El parámetro data de tipo ara::com::SampleAllocateePtr<SampleType> debe haberse obtenido previamente mediante Allocate() ([SWS_CM_90437]). Este tipo de puntero se comporta semánticamente como un std::unique_ptr, con lo cual la propiedad de los datos se transfiere a la capa de comunicación durante la invocación (ARAComAPI §6.17 «BrakeEvent Class»). Tras la transferencia, se prohíbe cualquier acceso posterior a los datos a la aplicación emisora ([SWS_CM_90437]).

Tratamiento de errores y condiciones límite

La función está declarada como noexcept y devuelve un ara::core::Result<void> ([SWS_CM_90437]). Si el envío falla, el resultado contiene un código de error de ara::com::ComErrc ([SWS_CM_10432]):

  • ComErrc::kServiceNotOffered: El servicio correspondiente aún no se ha ofrecido previamente con OfferService() ([SWS_CM_90437]).
  • ComErrc::kMinimumSendIntervalViolationError: El intervalo mínimo de envío configurado para el elemento de servicio (minimumSendInterval) aún no ha transcurrido desde la última transmisión ([SWS_CM_90437]).

Ambos casos de error poseen semántica de reversión ([SWS_CM_90437]). Por lo tanto, el servicio debe haberse ofrecido obligatoriamente antes de la invocación, y las llamadas de envío sucesivas deben respetar la distancia mínima configurada.

Interacción y optimización

En comparación con la signatura [SWS_CM_00162], en la que se transfieren datos gestionados por la aplicación y el Communication Management los copia, esta variante tiene como objetivo la comunicación de copia cero (zero-copy) mediante memoria compartida (ARAComAPI §6.18 «Event Allocate/Send sample»). Para ello se presupone una estricta sincronización entre escritores y lectores, debiendo tenerse en cuenta los posibles requisitos de serialización entre los interlocutores de comunicación (ARAComAPI §6.18 «Event Allocate/Send sample»).

Nota: Esta nota de uso se ha generado de forma automatizada sobre la base del estado de la especificación R25-11.

Guía del implementador pendiente (complejidad I2)

Header-Datei#include "<SiNamespaceDerivedDirectoryPath>/<SiShortname>_skeleton.h"
Scopeclass <SI-Namespace>::skeleton:: events::<Event>
Exception-Sicherheitexception safe

Parameter (in)

ParameterBeschreibung
datathe data to send.

Rückgabewert

TypBeschreibung
ara::core::Result< void >• If successful: an ara::core::Result containing a ara:: core::Result::value_type containing a void • If unsuccessful: an ara::core::Result containing an ara:: core::Result::error_type i.e. a corresponding ara:: com::ComErrc

Fehler

FehlercodeBeschreibung
ComErrc::kServiceNotOfferedrollback_semantics Service has not yet been offered via OfferService()
ComErrc::kMinimumSendIntervalViolationErrorrollback_semantics Minimum Send Interval violation, because a transmission request for a service instance element (event, field or method call) was issued faster than allowed, i.e., the configured minimum send interval ServiceInterfaceDeploymentElement. minimumSendInterval for the service instance element has not yet expired.

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

Record
AUTOSAR/AP/record/SWS_CM_90437
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CM_90437@rel:R25-11#409a5d6f
Content hash
409a5d6f
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_CommunicationManagement.pdf#nameddest=SWS_CM_90437
Status: valid/unmigrated Version: rel:R25-11#b7d5aba8 Versionshistorie & Revisions (1 transition, 8 revision)
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_CM_90437@rel:R25-11#b7d5aba8
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#396a1de42026-09-30
  • R19-11rel:R19-11#943893002026-10-14
  • R20-11rel:R20-11#a05235692026-10-14
  • R21-11rel:R21-11#928b87cd2026-10-14
  • R22-11rel:R22-11#7fc4ccbc2026-10-14
  • R23-11rel:R23-11#7b2bb5e12026-10-14
  • R24-11rel:R24-11#0010eeba2026-10-14
  • R25-11rel:R25-11#b7d5aba82026-10-14 active
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

función SetSubscriptionStateChangeHandler [SWS_CM_12008]

void SetSubscriptionStateChangeHandler (ara::com::SubscriptionState ChangeHandler handler) noexcept;

Set/Register ara::com::SubscriptionState change handler

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: ae7a884485e1 Procedencia Preguntas abiertas (1)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

usar

La función SetSubscriptionStateChangeHandler registra en el ámbito del skeleton (skeleton::events) un manejador de callback para supervisar el estado de suscripción de un evento [SWS_CM_12008]. El parámetro handler debe ser un objeto invocable según el tipo SubscriptionStateChangeHandler conforme a [SWS_CM_00311]. El método no devuelve ningún valor de retorno y está especificado como noexcept [SWS_CM_12008].

Communication Management invoca el manejador registrado en cuanto cambia el estado de suscripción del evento [SWS_CM_12012]. En el lado del skeleton, esto ocurre con el estado kSubscribed tan pronto como el número de suscripciones activas pasa a ser mayor que cero [SWS_CM_12013], o bien con kNotSubscribed cuando ya no existen suscripciones activas [SWS_CM_12014] SWS CommunicationManagement §7.5.4 «Query Service Event Subscription State on Skeleton side».

Tratamiento de errores y concurrencia

La operación está clasificada como exception safe [SWS_CM_12008]. Si el callable transferido no es válido o es nulo, se produce una InvalidHandlerViolation [SWS_CM_12008]. Interpretación: Dado que la función no lanza excepciones ni devuelve un código de error, es de suponer que esta vulneración de la especificación se capture a través de mecanismos del entorno de ejecución específicos de la plataforma. Pregunta Q-a7b7b54f0d538b40 (abierta)

El manejador puede sobrescribirse en tiempo de ejecución [SWS_CM_12012]. Para la ejecución en un contexto dedicado de hilo o de tareas, existe la sobrecarga con el parámetro de plantilla executor [SWS_CM_12009]. [SWS_CM_01110] define un registro análogo para elementos trigger del skeleton.

Este texto ha sido generado por una IA a partir de la especificación de AUTOSAR.

Guía del implementador pendiente (complejidad I2)

Header-Datei#include "<SiNamespaceDerivedDirectoryPath>/<SiShortname>_skeleton.h"
Scopeclass <SI-Namespace>::skeleton:: events::<Event>
Exception-Sicherheitexception safe
Verletzungen (Violations)InvalidHandlerVio- Provided Callable handler does not exist or is null lation

Parameter (in)

ParameterBeschreibung
handlerThe handler (as per [SWS_CM_00311]) that shall be called by Communication Management as soon as the ara::com:: SubscriptionState of the event has changed.

Rückgabewert

TypBeschreibung
None

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

Record
AUTOSAR/AP/record/SWS_CM_12008
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CM_12008@rel:R25-11#796ff4df
Content hash
796ff4df
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_CommunicationManagement.pdf#nameddest=SWS_CM_12008
Status: valid/unmigrated Version: rel:R25-11#e64cfb4e Versionshistorie & Revisions (1 transition, 4 revision)
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_CM_12008@rel:R25-11#e64cfb4e
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#5a03f4292026-09-30
  • R23-11rel:R23-11#d6b69d732026-10-14
  • R24-11rel:R24-11#a914158e2026-10-14
  • R25-11rel:R25-11#e64cfb4e2026-10-14 active
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

función SetSubscriptionStateChangeHandler [SWS_CM_12009]

template <typename ExecutorT> void SetSubscriptionStateChangeHandler (ara::com::SubscriptionState ChangeHandler handler, ExecutorT &&executor) noexcept;

As per [SWS_CM_12008] but the method shall execute in a provided context

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: db9c8806b4e9 Procedencia Preguntas abiertas (1)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

La función de plantilla SetSubscriptionStateChangeHandler sirve a nivel de skeleton ([SWS_CM_12009]), en el espacio de nombres de un evento, para registrar una retrollamada ante cambios de estado de suscripciones entrantes. Frente a la función básica sin ejecutor ([SWS_CM_12008]), recibe adicionalmente un contexto de ejecución (executor) en el que se ejecuta el manejador registrado ([SWS_CM_12009]). La función no tiene valor de retorno, está declarada como noexcept y se considera segura frente a excepciones ([SWS_CM_12009]).

En cuanto al comportamiento ante errores, la transferencia de un callable no válido o nulo conduce a una InvalidHandlerViolation ([SWS_CM_12009]). El manejador registrado puede sobrescribirse en cualquier momento durante el tiempo de ejecución de la aplicación mediante una nueva llamada ([SWS_CM_12012]).

Communication Management invoca al manejador en cuanto cambia el estado de las suscripciones para el evento respectivo (SWS CommunicationManagement §7.5.4 «Query Service Event Subscription State on Skeleton side», [SWS_CM_12012]):

  • La llamada se realiza con el estado kSubscribed cuando el número de suscripciones activas pasa de cero a más de cero ([SWS_CM_12013]).
  • Si el número de suscriptores activos vuelve a descender a cero, se notifica al manejador con kNotSubscribed ([SWS_CM_12014]).

Interpretación: Al transferir executor, la ejecución del manejador probablemente se vincule de forma dirigida a contextos de hilos o de despacho propios de la aplicación ([SWS_CM_12009]), con el fin de desacoplar limpiamente la notificación concurrente del código del skeleton respecto de los hilos de comunicación internos. Pregunta Q-b11f3bc97069f2ec (abierta)

Este texto fue creado por una IA y se basa en las especificaciones de la Release R25-11.

Guía del implementador pendiente (complejidad I2)

Header-Datei#include "<SiNamespaceDerivedDirectoryPath>/<SiShortname>_skeleton.h"
Scopeclass <SI-Namespace>::skeleton:: events::<Event>
Exception-Sicherheitexception safe
Verletzungen (Violations)InvalidHandlerVio- Provided Callable handler does not exist or is null lation

Template-Parameter

ParameterBeschreibung
ExecutorTAs per [SWS_CM_11360]

Parameter (in)

ParameterBeschreibung
handlerAs per [SWS_CM_12008]
executorAs per [SWS_CM_11360]

Rückgabewert

TypBeschreibung
None

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

Record
AUTOSAR/AP/record/SWS_CM_12009
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CM_12009@rel:R25-11#02c0bdaa
Content hash
02c0bdaa
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_CommunicationManagement.pdf#nameddest=SWS_CM_12009
Status: valid/unmigrated Version: rel:R25-11#2c78e37d Versionshistorie & Revisions (1 transition, 4 revision)
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_CM_12009@rel:R25-11#2c78e37d
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#9ab0c0f92026-09-30
  • R23-11rel:R23-11#35fb91a02026-10-14
  • R24-11rel:R24-11#7040342f2026-10-14
  • R25-11rel:R25-11#2c78e37d2026-10-14 active
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

función UnsetSubscriptionStateChangeHandler [SWS_CM_12010]

void UnsetSubscriptionStateChangeHandler () noexcept;

Unset/Deregister the ara::com::SubscriptionState change handler

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 7e38e0032e54 Procedencia Preguntas abiertas (1)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

La función UnsetSubscriptionStateChangeHandler sirve en el nivel de skeleton, dentro del espacio de nombres ::skeleton::events::{<event-name>}, para dar de baja un manejador de cambios de estado registrado previamente para el ara::com::SubscriptionState de un evento [SWS_CM_12010]. La función no acepta parámetros y no devuelve ningún valor (void) [SWS_CM_12010]. La inclusión se realiza mediante la cabecera #include "<SiNamespaceDerivedDirectoryPath>/<SiShortname>_skeleton.h" [SWS_CM_12010].

En cuanto al comportamiento frente a excepciones, el método está declarado con noexcept y especificado como seguro frente a excepciones (exception safe) [SWS_CM_12010]. No se devuelven códigos de error específicos ni se lanzan excepciones de C++ [SWS_CM_12010]. Interpretación: es probable que cualquier condición de error interna durante la baja de registro sea interceptada internamente por la gestión de comunicaciones, ya que la firma no contempla notificación de errores. Pregunta Q-7e986a15e552ca19 (abierta)

En la interacción con interfaces relacionadas, existen funciones análogas para la baja de registro de manejadores:

Este texto ha sido generado por una IA y se basa en el estado de especificación AUTOSAR Adaptive Release R25-11.

Guía del implementador pendiente (complejidad I2)

Header-Datei#include "<SiNamespaceDerivedDirectoryPath>/<SiShortname>_skeleton.h"
Scopeclass <SI-Namespace>::skeleton:: events::<Event>
Exception-Sicherheitexception safe

Rückgabewert

TypBeschreibung
None

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

Record
AUTOSAR/AP/record/SWS_CM_12010
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CM_12010@rel:R25-11#c6bcdc7c
Content hash
c6bcdc7c
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_CommunicationManagement.pdf#nameddest=SWS_CM_12010
Status: valid/unmigrated Version: rel:R25-11#05477f97 Versionshistorie & Revisions (1 transition, 4 revision)
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_CM_12010@rel:R25-11#05477f97
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#e1b9df132026-09-30
  • R23-11rel:R23-11#0217aa9b2026-10-14
  • R24-11rel:R24-11#1066f1922026-10-14
  • R25-11rel:R25-11#05477f972026-10-14 active
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

Documentación de los alias de tipo

alias de tipo SampleType [SWS_CM_11400] Upstream: RS_CM_00201, RS_AP_00114

using SampleType = <SSampleCppidt>;

Data type for the value of an event sample (the CppImplementationDataType of the Event, i.e. for the CppImplementationDataType which is either referenced by the VariableDataPrototype in the role type directly or via the indirection of a DataTypeMap)

Header-Datei#include "<SiNamespaceDerivedDirectoryPath>/<SiShortname>_skeleton.h"
Scopeclass <SI-Namespace>::skeleton:: events::<Event>
SymbolSampleType

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

Record
AUTOSAR/AP/record/SWS_CM_11400
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CM_11400@rel:R25-11#6933936f
Content hash
6933936f
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_CommunicationManagement.pdf#nameddest=SWS_CM_11400
Status: valid/unmigrated Version: rel:R25-11#6376c0a1 Versionshistorie & Revisions (1 transition, 5 revision)
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_CM_11400@rel:R25-11#6376c0a1
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#6078d79a2026-09-30
  • R22-11rel:R22-11#9e7787d62026-10-14
  • R23-11rel:R23-11#9e7787d62026-10-14
  • R24-11rel:R24-11#b98c990b2026-10-14
  • R25-11rel:R25-11#6376c0a12026-10-14 active
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