DEENESPTFRRUARHIKOZHNL

estructura ara::diag::SovdSwUpdate::SubProgress

[SWS_DM_01896] Upstream: RS_Diag_04265

struct SubProgress {...};

Definition of Sovd Progress type.

Header-Datei#include "ara/diag/sovd_sw_update.h"
Forwarding-Header#include "ara/diag/diag_fwd.h"
Scopeclass ara::diag::SovdSwUpdate

Guía del usuarioGENERADO POR IA

Registra el estado, el progreso porcentual y el código de error de una subentidad en actualizaciones de software basadas en SOVD.
GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 86b478c2c357 Procedencia Preguntas abiertas (2)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

Registra el estado, el progreso porcentual y el código de error de una subentidad en actualizaciones de software basadas en SOVD.

La estructura ara::diag::SovdSwUpdate::SubProgress encapsula el progreso actual, el estado y los posibles errores de una entidad específica durante una actualización de software basada en SOVD ([SWS_DM_01896]). Las rutinas de actualización registran en ella el componente a actualizar, actualizan el progreso porcentual y transmiten el estado general a la gestión de diagnóstico. Si la actualización falla, el campo error especifica el código de error producido, mientras que en el flujo normal no se tiene en cuenta ([SWS_DM_01901]). Dado que SubProgress es un tipo de valor de datos puro sin sincronización interna, la modificación concurrente requiere protección del lado de la aplicación.

Contexto

La estructura ara::diag::SovdSwUpdate::SubProgress forma parte de la interfaz de C++ para actualizaciones de software basadas en SOVD en el módulo diag de AUTOSAR Adaptive Platform ([SWS_DM_01896], AUTOSAR_AP_SWS_Diagnostics §8.58.3 «Struct: SubProgress»). En el marco de Service-Oriented Vehicle Diagnostics (SOVD), los procesos de actualización pueden constar de varios subpasos paralelos o secuenciales. SubProgress asume la responsabilidad de representar el estado de procesamiento de un subcomponente específico durante la actualización. Entre los interlocutores se incluyen las rutinas de actualización internas de diagnóstico que ejecutan actualizaciones parciales, así como entidades de control superiores que coordinan el progreso general de una actualización y lo notifican a herramientas de diagnóstico externas.

La estructura define cuatro variables miembro públicas (AUTOSAR_AP_SWS_Diagnostics §8.58.3.1 «Public Member Variables»):

  • entity: Un ara::core::String que identifica la entidad que se está actualizando actualmente ([SWS_DM_01898]).
  • status: Un valor de tipo SovdUpdateStatus que representa el estado actual de la actualización ([SWS_DM_01899]).
  • progress: Un valor opcional de tipo ara::core::Optional<std::uint8_t> para el progreso en porcentaje ([SWS_DM_01900]).
  • error: Un código de error de tipo ara::core::ErrorCode para especificar los errores ocurridos en caso de fallo ([SWS_DM_01901]).

Ciclo de vida

Diseñado como struct, SubProgress posee semántica de valor (AUTOSAR_AP_SWS_Diagnostics §8.58.3.1 «Public Member Variables»). Típicamente, se crea una instancia en la pila o dentro de un contenedor de estado superior tan pronto como comienza un nuevo subpaso dentro del procesamiento de la actualización. Al inicio, el componente de gestión asigna a la instancia el identificador de la entidad de destino mediante entity ([SWS_DM_01898]) y establece el estado inicial en status ([SWS_DM_01899]).

Durante el proceso, el progreso porcentual y los cambios de estado se actualizan continuamente en la estructura. Una vez completada o cancelada la actualización parcial, la estructura se transfiere o se lee y, finalmente, se destruye automáticamente al salir del ámbito. Dado que la especificación no define métodos propios ni primitivas de sincronización, la estructura probablemente actúe como un mero contenedor de datos sin seguridad para subprocesos propia (interpretación). Pregunta Q-92b3fcc698f7bab8 (abierta) Por tanto, el acceso concurrente de varios subprocesos requiere sincronización del lado de la aplicación.

Ruta de uso

El flujo regular para la notificación del progreso se divide en una secuencia fija de pasos:\nEn primer lugar, la lógica de actualización que ejecuta la operación instancia un objeto de tipo SubProgress y establece el identificador de la entidad correspondiente en entity ([SWS_DM_01898]). Al mismo tiempo, se establece el valor inicial para status, por ejemplo, para señalizar el inicio del procesamiento ([SWS_DM_01899]). En pasos continuos, la lógica escribe periódicamente el progreso en porcentaje en el campo progress ([SWS_DM_01900], AUTOSAR_AP_SWS_Diagnostics §8.58.3.1.3 «progress»). Dado que progress está declarado como ara::core::Optional, el campo permanece vacío mientras el progreso sea indeterminado. Finalmente, la estructura se transfiere a la interfaz central SovdSwUpdate para que los clientes SOVD externos puedan consultar el estado ([SWS_DM_01896]).

Actualización del progreso de un subpaso de actualización de softwareUpdate-LogikSubProgressSovdSwUpdateInstanciar con entity y estado inicialEjecutar actualización parcialActualizar status y progress (en porcentaje)SubProgress bereitstellenaltFallo durante la actualización parcialEstablecer status en fallido y rellenar errorTransmitir SubProgress con código de error

Diagrama de secuencia: Flujo típico de la notificación de progreso y tratamiento de errores para un subpaso de actualización. Fuentes: [SWS_DM_01896], [SWS_DM_01898], [SWS_DM_01899], [SWS_DM_01900], [SWS_DM_01901].

Escenarios de error

En caso de irregularidades o errores durante el procesamiento de una subentidad, interviene el escenario de error de la estructura. Si se produce un error, el valor en status pasa a un estado de error ([SWS_DM_01899]). Conforme a [SWS_DM_01901], la variable error especifica el código de error exacto solo si el estado es fallido («Specifies the error if status is failed»). Esto representa un acoplamiento lógico vinculante entre status y error: los receptores de la estructura solo deben evaluar el campo error como significativo si status notifica efectivamente un estado fallido; de lo contrario, el contenido probablemente no se tenga en cuenta o represente un valor por defecto (interpretación). Pregunta Q-3caa7622672dcb8e (abierta)

Otro escenario de error concierne a los progresos indeterminados: si la entidad de procesamiento no puede determinar un valor porcentual concreto o el cálculo se interrumpe prematuramente, el campo opcional progress permanece sin valor (ara::core::nullopt), lo que evita que valores numéricos inválidos se interpreten erróneamente como indicación porcentual ([SWS_DM_01900]).

Esta guía se basa en la especificación AUTOSAR Adaptive Platform Release R25-11 y resume los requisitos para la estructura ara::diag::SovdSwUpdate::SubProgress.

Mapa de miembros

Diagrama de clases

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

G nara__diag__SovdSwUpdate__SubProgress643 «struct» SubProgress + entity + error + progress + status

Vista de detalle

Selecciona una entrada en el índice.

Constantes

entity variable

Specifies the entity that is currently being updated.

error variable

Specifies the error if status is failed.

progress variable

Specifies the Update progress in percent.

status variable

Specifies the Update Status.

Documentación de las constantes / variables

variable entity [SWS_DM_01898] Upstream: RS_Diag_04265

ara::core::String entity;

Specifies the entity that is currently being updated.

Header-Datei#include "ara/diag/sovd_sw_update.h"
Scopestruct ara::diag::SovdSwUpdate::SubProgress
Symbolentity
Typara::core::String

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

Record
AUTOSAR/AP/record/SWS_DM_01898
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01898@rel:R25-11#df033395
Content hash
df033395
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01898
Status: valid/unmigrated Version: rel:R25-11#ae29483e 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_DM_01898@rel:R25-11#ae29483e
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#df0333952026-09-30
  • R23-11rel:R23-11#ae29483e2026-10-14
  • R24-11rel:R24-11#ae29483e2026-10-14
  • R25-11rel:R25-11#ae29483e2026-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

variable error [SWS_DM_01901] Upstream: RS_Diag_04265

ara::core::ErrorCode error;

Specifies the error if status is failed.

Header-Datei#include "ara/diag/sovd_sw_update.h"
Scopestruct ara::diag::SovdSwUpdate::SubProgress
Symbolerror
Typara::core::ErrorCode

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

Record
AUTOSAR/AP/record/SWS_DM_01901
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01901@rel:R25-11#00555222
Content hash
00555222
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01901
Status: valid/unmigrated Version: rel:R25-11#dc82b576 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_DM_01901@rel:R25-11#dc82b576
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#005552222026-09-30
  • R23-11rel:R23-11#dc82b5762026-10-14
  • R24-11rel:R24-11#dc82b5762026-10-14
  • R25-11rel:R25-11#dc82b5762026-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

variable progress [SWS_DM_01900] Upstream: RS_Diag_04265

ara::core::Optional<std::uint8_t> progress;

Specifies the Update progress in percent.

Header-Datei#include "ara/diag/sovd_sw_update.h"
Scopestruct ara::diag::SovdSwUpdate::SubProgress
Symbolprogress
Typara::core::Optional< std::uint8_t >

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

Record
AUTOSAR/AP/record/SWS_DM_01900
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01900@rel:R25-11#33476bd6
Content hash
33476bd6
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01900
Status: valid/unmigrated Version: rel:R25-11#28ed7b01 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_DM_01900@rel:R25-11#28ed7b01
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#33476bd62026-09-30
  • R23-11rel:R23-11#28ed7b012026-10-14
  • R24-11rel:R24-11#28ed7b012026-10-14
  • R25-11rel:R25-11#28ed7b012026-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

variable status [SWS_DM_01899] Upstream: RS_Diag_04265

SovdUpdateStatus status;

Specifies the Update Status.

Header-Datei#include "ara/diag/sovd_sw_update.h"
Scopestruct ara::diag::SovdSwUpdate::SubProgress
Symbolstatus
TypSovdUpdateStatus

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

Record
AUTOSAR/AP/record/SWS_DM_01899
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01899@rel:R25-11#74900940
Content hash
74900940
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01899
Status: valid/unmigrated Version: rel:R25-11#2a27d32e 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_DM_01899@rel:R25-11#2a27d32e
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#749009402026-09-30
  • R23-11rel:R23-11#2a27d32e2026-10-14
  • R24-11rel:R24-11#2a27d32e2026-10-14
  • R25-11rel:R25-11#2a27d32e2026-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