DEENESPTFRRUARHIKOZHNL

구조체 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

사용자 가이드AI 생성

SOVD 기반 소프트웨어 업데이트 시 하위 엔티티의 상태, 백분율 진행률 및 오류 코드를 기록합니다.
AI 생성 미검증 모델: gemini-3.8-flash-medium · 노력: medium · 온도: 제어 불가 · 프롬프트: 86b478c2c357 출처 열린 질문 (2)
독일어 가이드에서 번역됨gemini-3.8-flash-low · 2026-10-13 · 독일어 원문

SOVD 기반 소프트웨어 업데이트 시 하위 엔티티의 상태, 백분율 진행률 및 오류 코드를 기록합니다.

구조체 ara::diag::SovdSwUpdate::SubProgress은 SOVD 기반 소프트웨어 업데이트 동안 특정 엔티티의 현재 진행률, 상태 및 발생 가능한 오류를 캡슐화합니다([SWS_DM_01896]). 업데이트 루틴은 여기에 업데이트할 컴포넌트를 기록하고, 백분율 진행률을 갱신하며, 전체 상태를 진단 관리로 전달합니다. 업데이트가 실패하면 error 필드가 발생한 오류 코드를 명시하며, 정상적인 흐름에서는 고려되지 않습니다([SWS_DM_01901]). SubProgress는 내부 동기화가 없는 순수 데이터 값 타입이므로, 동시 수정 시 애플리케이션 측의 보호 조치가 필요합니다.

컨텍스트

구조체 ara::diag::SovdSwUpdate::SubProgress은 AUTOSAR Adaptive Platform의 diag 모듈 내 SOVD 기반 소프트웨어 업데이트를 위한 C++ 인터페이스의 일부입니다([SWS_DM_01896], AUTOSAR_AP_SWS_Diagnostics §8.58.3 “Struct: SubProgress”). SOVD(Service-Oriented Vehicle Diagnostics) 프레임워크 내에서 업데이트 프로세스는 여러 병렬 또는 순차적 하위 단계로 구성될 수 있습니다. SubProgress는 업데이트 중 특정 하위 컴포넌트의 처리 상태를 나타내는 책임을 맡습니다. 상호 작용 파트너에는 하위 업데이트를 수행하는 진단 내부 업데이트 루틴과, 업데이트의 전체 진행률을 조정하고 외부 진단 툴에 보고하는 상위 제어 인스턴스가 포함됩니다.

이 구조체는 네 개의 공개 멤버 변수를 정의합니다(AUTOSAR_AP_SWS_Diagnostics §8.58.3.1 “Public Member Variables”):

  • entity: 현재 업데이트 중인 엔티티의 이름을 지정하는 ara::core::String([SWS_DM_01898]).
  • status: 업데이트의 현재 상태를 나타내는 SovdUpdateStatus 타입의 값([SWS_DM_01899]).
  • progress: 백분율 진행률을 위한 ara::core::Optional<std::uint8_t> 타입의 선택적 값([SWS_DM_01900]).
  • error: 오류 발생 시 발생한 오류를 명시하기 위한 ara::core::ErrorCode 타입의 오류 코드([SWS_DM_01901]).

수명 주기

struct으로 설계된 SubProgress은 값 시맨틱을 가집니다(AUTOSAR_AP_SWS_Diagnostics §8.58.3.1 “Public Member Variables”). 인스턴스는 일반적으로 업데이트 처리 내에서 새로운 하위 단계가 시작되는 즉시 스택 또는 상위 상태 컨테이너 내에 생성됩니다. 관리 컴포넌트는 처음에 entity을 통해 대상 엔티티의 식별자를 인스턴스에 할당하고([SWS_DM_01898]), status에 초기 상태를 설정합니다([SWS_DM_01899]).

진행되는 동안 백분율 진행률 및 상태 변경이 구조체 내에 지속적으로 업데이트됩니다. 하위 업데이트가 완료되거나 중단된 후 구조체가 전달되거나 판독되며, 최종적으로 유효 범위를 벗어나면서 자동으로 소멸됩니다. 사양에서 자체 메서드나 동기화 프리미티브를 규정하지 않으므로, 이 구조체는 자체 스레드 안전성이 없는 순수 데이터 홀더 역할을 할 것으로 추정됩니다(해석). 질문 Q-92b3fcc698f7bab8 (열림) 따라서 여러 스레드의 동시 접근에는 애플리케이션 측 동기화가 필요합니다.

사용 경로

진행률 보고를 위한 정규 흐름은 정해진 일련의 단계로 구분됩니다:\n먼저 실행 중인 업데이트 로직이 SubProgress 타입의 객체를 인스턴스화하고 해당 엔티티의 식별자를 entity에 설정합니다([SWS_DM_01898]). 동시에 예를 들어 처리 시작을 알리기 위해 status의 시작 값이 설정됩니다([SWS_DM_01899]). 연속적인 단계에서 로직은 주기적으로 백분율 진행률을 progress 필드에 기록합니다([SWS_DM_01900], AUTOSAR_AP_SWS_Diagnostics §8.58.3.1.3 “progress”). progress이 ara::core::Optional로 선언되어 있으므로, 진행률이 아직 결정되지 않은 동안에는 필드가 비어 있습니다. 마지막으로 외부 SOVD 클라이언트가 상태를 쿼리할 수 있도록 구조체가 중앙 인터페이스 SovdSwUpdate으로 전달됩니다([SWS_DM_01896]).

소프트웨어 업데이트 하위 단계의 진행률 업데이트Update-LogikSubProgressSovdSwUpdateentity 및 초기 상태로 인스턴스화부분 업데이트 실행status 및 progress(백분율) 업데이트SubProgress bereitstellenalt부분 업데이트 중 실패status를 실패로 설정하고 error 채우기오류 코드와 함께 SubProgress 전송

시퀀스 다이어그램: 하위 업데이트 단계를 위한 진행률 보고 및 오류 처리의 일반적인 흐름. 출처: [SWS_DM_01896], [SWS_DM_01898], [SWS_DM_01899], [SWS_DM_01900], [SWS_DM_01901].

오류 시나리오

하위 엔티티 처리 중 이상 또는 오류가 발생하는 경우 구조체의 오류 시나리오가 적용됩니다. 오류가 발생하면 status의 값이 오류 상태로 전환됩니다([SWS_DM_01899]). [SWS_DM_01901]에 따라 error 변수는 상태가 실패한 경우에만 정확한 오류 코드를 명시합니다(“Specifies the error if status is failed”). 이는 status와 error 사이의 구속력 있는 논리적 결합을 나타냅니다: 구조체의 수신자는 status이 실제로 실패 상태를 보고하는 경우에만 error 필드를 유의미한 것으로 평가해야 하며, 그렇지 않은 경우 해당 내용은 아마도 고려되지 않거나 기본값을 나타낼 것입니다(해석). 질문 Q-3caa7622672dcb8e (열림)

또 다른 오류 시나리오는 불확정 진행률과 관련됩니다: 처리 엔티티가 구체적인 백분율 값을 판별할 수 없거나 계산이 조기에 중단되는 경우, 선택적 필드 progress은 값 없이 유지되며(ara::core::nullopt), 이는 유효하지 않은 숫자 값이 백분율 표시로 잘못 해석되는 것을 방지합니다([SWS_DM_01900]).

이 가이드는 AUTOSAR Adaptive Platform 릴리스 R25-11 사양을 기반으로 하며 ara::diag::SovdSwUpdate::SubProgress 구조체에 대한 요구사항을 요약합니다.

멤버 맵

클래스 다이어그램

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

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

상세 보기

개요에서 항목을 선택하세요.

상수

entity 변수

Specifies the entity that is currently being updated.

error 변수

Specifies the error if status is failed.

progress 변수

Specifies the Update progress in percent.

status 변수

Specifies the Update Status.

상수 / 변수 문서

변수 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#c168da60
Content hash
c168da60
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

변수 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#dafe6d51
Content hash
dafe6d51
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

변수 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#3e8aeb95
Content hash
3e8aeb95
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

변수 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#892e120c
Content hash
892e120c
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