DEENESPTFRRUARHIKOZHNL

classe ara::diag::DiagnosticSovdArrayContentElementDataConstView

[SWS_DM_02248] Upstream: RS_Diag_04260

class DiagnosticSovdArrayContentElementDataConstView {...};

Const view on a DiagnosticSovdContentElementData with Array type.

Header-Datei#include "ara/diag/diagnostic_sovd_content_element_data.h"
Forwarding-Header#include "ara/diag/diag_fwd.h"
Scopenamespace ara::diag

Guide utilisateurGÉNÉRÉ PAR IA

Permet un accès sécurisé vis-à-vis des threads et en lecture seule aux éléments d'un tableau d'un objet de données de diagnostic SOVD.
GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 46670b91e1ad Provenance Questions ouvertes (2)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Permet un accès sécurisé vis-à-vis des threads et en lecture seule aux éléments d'un tableau d'un objet de données de diagnostic SOVD.

La classe ara::diag::DiagnosticSovdArrayContentElementDataConstView offre une vue en lecture seule sur un DiagnosticSovdContentElementData de type tableau pour une interrogation de diagnostic efficace [SWS_DM_02248]. Les applications vérifient d'abord l'état d'intégrité à l'aide de HasError(), puis accèdent aux éléments du tableau soit de manière aléatoire via operator[], soit de manière itérative via CBegin() et CEnd() [SWS_DM_02253]. Toutes les opérations sont exécutées de manière thread-safe et sûre vis-à-vis des exceptions (noexcept), mais supposent la validité continue de l'élément de base référencé.

Contexte

La classe ara::diag::DiagnosticSovdArrayContentElementDataConstView fournit une vue en lecture seule (const view) sur un élément de données de diagnostic de type tableau au sein de l'architecture de diagnostic Adaptive AUTOSAR pour SOVD (Service-Oriented Vehicle Diagnostics) [SWS_DM_02248] (AUTOSAR_AP_SWS_Diagnostics §8.60.3 « Class: DiagnosticSovdArrayContentElementDataConstView »). Elle permet un accès contrôlé en lecture aux éléments séquentiels d'un contenu de diagnostic, sans nécessiter la copie du tampon de données sous-jacent.

Parmi les partenaires d'interaction principaux de la classe figurent :

  • l'application de diagnostic appelante, qui évalue les données du tableau,
  • le DiagnosticSovdContentElementData référencé, qui stocke les éléments de tableau concrets et vers lequel une référence est établie lors d'un accès aléatoire via [SWS_DM_02253],
  • le type auxiliaire DiagnosticSovdArrayContentElementDataConstIterator, qui est généré pour des itérations conformes aux standards sur les éléments du tableau [SWS_DM_02254].
diag_kontext anwendung Diagnose-Anwendung view DiagnosticSovdArrayContentElementDataConstView anwendung->view liest element DiagnosticSovdContentElementData view->element referenziert const iterator DiagnosticSovdArrayContentElementDataConstIterator view->iterator erzeugt iterator->element traversiert

Diagramme de contexte : Intégration de la vue entre l'application de diagnostic, l'élément de base et les itérateurs. Sources : [SWS_DM_02248], [SWS_DM_02253], [SWS_DM_02254].

Cycle de vie

La classe est disponible via le fichier d'en-tête #include "ara/diag/diagnostic_sovd_content_element_data.h" [SWS_DM_02248]. En tant que pure classe de vue, elle ne possède aucune propriété sur les données de tableau effectives. Interprétation : La durée de vie d'une instance de vue est liée à la validité du DiagnosticSovdContentElementData sous-jacent ; l'objet de données doit rester en mémoire pendant toute la durée d'utilisation de la vue. Question Q-1a3079bdd09b4ddd (ouverte)

En matière de concurrence, l'ensemble des fonctions membres de la classe sont explicitement déclarées comme thread-safe [SWS_DM_02250], [SWS_DM_02253]. Plusieurs threads peuvent ainsi accéder simultanément en lecture à la même instance de vue (interprétation : tant que l'objet de données sous-jacent n'est pas modifié de manière concurrente par des opérations d'écriture). Question Q-61e5fa3990052e70 (ouverte) De plus, toutes les méthodes garantissent une sécurité totale vis-à-vis des exceptions (exception safe) et sont spécifiées sans exception avec noexcept [SWS_DM_02249], [SWS_DM_02251]. S'agissant d'une vue immuable, la classe ne présente aucune transition d'état interne ni phase complexe de cycle de vie.

Parcours d'utilisation

Le déroulement normal d'utilisation des données du tableau s'articule en vérification d'intégrité, interrogation des dimensions et extraction des données :

  1. Vérification d'intégrité : Avant l'accès, l'application devrait vérifier via HasError() si l'élément de contenu se présente sans erreur [SWS_DM_02249].
  2. Interrogation des dimensions : Empty() permet de vérifier si le tableau contient des éléments ([SWS_DM_02252], AUTOSAR_AP_SWS_Diagnostics §8.60.3.1.1.5 « Empty »). Le nombre actuel d'éléments est fourni par Size() [SWS_DM_02250], tandis que Capacity() renvoie la capacité réservée du tableau ([SWS_DM_02251], AUTOSAR_AP_SWS_Diagnostics §8.60.3.1.1.4 « Capacity »).
  3. Accès aux données : Deux voies sont disponibles pour accéder aux éléments du tableau :
Déroulement typique de lecture et d’itérationDiagnose-AnwendungDiagnosticSovdArrayContentElementDataConstViewHasError()ara::core::Result<void> (Erfolg)Size()std::size_t (Elementanzahl)altDirektzugriff per Indexoperator[](index)ara::core::Result<reference_wrapper<...>>Sequenzielle IterationCBegin()DiagnosticSovdArrayContentElementDataConstIteratorCEnd()DiagnosticSovdArrayContentElementDataConstIterator

Diagramme de séquence : Déroulement typique de la vérification des erreurs, de la détermination de la taille et de l'interrogation des éléments. Sources : [SWS_DM_02249], [SWS_DM_02250], [SWS_DM_02253], [SWS_DM_02256], [SWS_DM_02257].

Scénarios d'erreur

La classe n'utilise pas d'exceptions C++ et signale les erreurs fonctionnelles via ara::core::Result :

  • Contenu de données erroné : Si l'élément de contenu comporte des données erronées, HasError() ne renvoie pas un résultat de succès vide, mais un code d'erreur de type ara::diag::DiagSovdErrc [SWS_DM_02249].
  • Conflit de type lors de l'accès par index : Le operator[] exige impérativement que l'élément référencé soit effectivement de type ArrayContentElementData [SWS_DM_02253]. Si ce n'est pas le cas, l'appel échoue et renvoie un objet d'erreur correspondant dans le Result au lieu d'une référence.
  • Limites de l'index : Étant donné que operator[] ne doit être appelé que dans la plage valide, les appelants devraient s'assurer au préalable via Size() [SWS_DM_02250] ou Empty() [SWS_DM_02252] que l'index demandé existe.

Ce guide est basé sur la spécification AUTOSAR Adaptive R25-11.

Carte des membres

Diagramme de classes

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

G nara__diag__DiagnosticSovdArrayContentElementDataConstView162 DiagnosticSovdArrayContentElementDataConstView + Begin() + CBegin() + CEnd() + Capacity() + Empty() + End() + HasError() + Size() + operator[]()

Vue détaillée

Sélectionnez une entrée dans le plan.

Méthodes

Begin fonction

Returns the begin operator of an array. This DiagnosticSovdContentElementData shall be of type ArrayContentElementData

auto Begin () noexcept -> DiagnosticSovdArrayContentElementDataConst Iterator;
Capacity fonction

Returns the capacity of the Array content element. This DiagnosticSovdContentElementData shall be of type ArrayContentElementData

auto Capacity () const noexcept -> std::size_t;
CBegin fonction

Returns the begin operator of an array. This DiagnosticSovdContentElementData shall be of type ArrayContentElementData

auto CBegin () noexcept -> DiagnosticSovdArrayContentElementDataConst Iterator;
CEnd fonction

Returns the end operator of an array. This DiagnosticSovdContentElementData shall be of type ArrayContentElementData

auto CEnd () noexcept -> DiagnosticSovdArrayContentElementDataConst Iterator;
Empty fonction

Returns if the Array is empty. This DiagnosticSovdContentElementData shall be of type ArrayContentElementData

auto Empty () const noexcept -> bool;
End fonction

Returns the end operator of an array. This DiagnosticSovdContentElementData shall be of type ArrayContentElementData

auto End () noexcept -> DiagnosticSovdArrayContentElementDataConst Iterator;
HasError fonction

Returns if the content contains an error.

auto HasError () const noexcept -> ara::core::Result< void >;
Size fonction

Returns the size of the Array content element. This DiagnosticSovdContentElementData shall be of type ArrayContentElementData

auto Size () const noexcept -> std::size_t;

Opérateurs

operator[] fonction

Access the content element with specified index of an array. This DiagnosticSovdContentElementData shall be of type ArrayContentElementData

auto operator[] (std::size_t index) const noexcept -> ara::core::Result< std::reference_wrapper< DiagnosticSovdContent ElementData const > >; DIRECTION NOT index -- DEFINED

Documentation des méthodes

fonction Begin [SWS_DM_02254] Upstream: RS_Diag_04260

auto Begin () noexcept -> DiagnosticSovdArrayContentElementDataConst Iterator;

Returns the begin operator of an array. This DiagnosticSovdContentElementData shall be of type ArrayContentElementData

Header-Datei#include "ara/diag/diagnostic_sovd_content_element_data.h"
Scopeclass ara::diag::DiagnosticSovdArrayContentElementDataConstView
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Rückgabewert

TypBeschreibung
DiagnosticSovdArrayContentElementDataConstIteratorThe iterator

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

Record
AUTOSAR/AP/record/SWS_DM_02254
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02254@rel:R25-11#09580012
Content hash
09580012
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02254
Status: valid/unmigrated Version: rel:R25-11#656898ea 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_DM_02254@rel:R25-11#656898ea
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

fonction CBegin [SWS_DM_02256] Upstream: RS_Diag_04260

auto CBegin () noexcept -> DiagnosticSovdArrayContentElementDataConst Iterator;

Returns the begin operator of an array. This DiagnosticSovdContentElementData shall be of type ArrayContentElementData

Header-Datei#include "ara/diag/diagnostic_sovd_content_element_data.h"
Scopeclass ara::diag::DiagnosticSovdArrayContentElementDataConstView
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Rückgabewert

TypBeschreibung
DiagnosticSovdArrayContentElementDataConstIteratorThe iterator

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

Record
AUTOSAR/AP/record/SWS_DM_02256
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02256@rel:R25-11#0863d172
Content hash
0863d172
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02256
Status: valid/unmigrated Version: rel:R25-11#b1016bc5 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_DM_02256@rel:R25-11#b1016bc5
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

fonction CEnd [SWS_DM_02257] Upstream: RS_Diag_04260

auto CEnd () noexcept -> DiagnosticSovdArrayContentElementDataConst Iterator;

Returns the end operator of an array. This DiagnosticSovdContentElementData shall be of type ArrayContentElementData

Header-Datei#include "ara/diag/diagnostic_sovd_content_element_data.h"
Scopeclass ara::diag::DiagnosticSovdArrayContentElementDataConstView
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Rückgabewert

TypBeschreibung
DiagnosticSovdArrayContentElementDataConstIteratorThe iterator

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

Record
AUTOSAR/AP/record/SWS_DM_02257
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02257@rel:R25-11#c01773a3
Content hash
c01773a3
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02257
Status: valid/unmigrated Version: rel:R25-11#5c191314 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_DM_02257@rel:R25-11#5c191314
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

fonction Capacity [SWS_DM_02251] Upstream: RS_Diag_04260

auto Capacity () const noexcept -> std::size_t;

Returns the capacity of the Array content element. This DiagnosticSovdContentElementData shall be of type ArrayContentElementData

Header-Datei#include "ara/diag/diagnostic_sovd_content_element_data.h"
Scopeclass ara::diag::DiagnosticSovdArrayContentElementDataConstView
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Rückgabewert

TypBeschreibung
std::size_tThe capacity of the ArrayContentElementData

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

Record
AUTOSAR/AP/record/SWS_DM_02251
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02251@rel:R25-11#e9f058c9
Content hash
e9f058c9
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02251
Status: valid/unmigrated Version: rel:R25-11#dd87bdcc 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_DM_02251@rel:R25-11#dd87bdcc
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

fonction Empty [SWS_DM_02252] Upstream: RS_Diag_04260

auto Empty () const noexcept -> bool;

Returns if the Array is empty. This DiagnosticSovdContentElementData shall be of type ArrayContentElementData

Header-Datei#include "ara/diag/diagnostic_sovd_content_element_data.h"
Scopeclass ara::diag::DiagnosticSovdArrayContentElementDataConstView
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Rückgabewert

TypBeschreibung
boolIf the array is empty

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

Record
AUTOSAR/AP/record/SWS_DM_02252
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02252@rel:R25-11#7aff94bc
Content hash
7aff94bc
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02252
Status: valid/unmigrated Version: rel:R25-11#a85c7949 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_DM_02252@rel:R25-11#a85c7949
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

fonction End [SWS_DM_02255] Upstream: RS_Diag_04260

auto End () noexcept -> DiagnosticSovdArrayContentElementDataConst Iterator;

Returns the end operator of an array. This DiagnosticSovdContentElementData shall be of type ArrayContentElementData

Header-Datei#include "ara/diag/diagnostic_sovd_content_element_data.h"
Scopeclass ara::diag::DiagnosticSovdArrayContentElementDataConstView
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Rückgabewert

TypBeschreibung
DiagnosticSovdArrayContentElementDataConstIteratorThe iterator

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

Record
AUTOSAR/AP/record/SWS_DM_02255
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02255@rel:R25-11#17805272
Content hash
17805272
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02255
Status: valid/unmigrated Version: rel:R25-11#5d7352d1 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_DM_02255@rel:R25-11#5d7352d1
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

fonction HasError [SWS_DM_02249] Upstream: RS_Diag_04260

auto HasError () const noexcept -> ara::core::Result< void >;

Returns if the content contains an error.

Header-Datei#include "ara/diag/diagnostic_sovd_content_element_data.h"
Scopeclass ara::diag::DiagnosticSovdArrayContentElementDataConstView
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Rückgabewert

TypBeschreibung
ara::core::Result< void >void result if it doesn’t contain an error, otherwise the ara::diag::DiagSovdErrc

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

Record
AUTOSAR/AP/record/SWS_DM_02249
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02249@rel:R25-11#70956a72
Content hash
70956a72
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02249
Status: valid/unmigrated Version: rel:R25-11#9d7e1ea6 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_DM_02249@rel:R25-11#9d7e1ea6
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

fonction Size [SWS_DM_02250] Upstream: RS_Diag_04260

auto Size () const noexcept -> std::size_t;

Returns the size of the Array content element. This DiagnosticSovdContentElementData shall be of type ArrayContentElementData

Header-Datei#include "ara/diag/diagnostic_sovd_content_element_data.h"
Scopeclass ara::diag::DiagnosticSovdArrayContentElementDataConstView
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Rückgabewert

TypBeschreibung
std::size_tThe size of the ArrayContentElementData

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

Record
AUTOSAR/AP/record/SWS_DM_02250
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02250@rel:R25-11#ec992361
Content hash
ec992361
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02250
Status: valid/unmigrated Version: rel:R25-11#e76f7f29 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_DM_02250@rel:R25-11#e76f7f29
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

fonction operator[] [SWS_DM_02253] Upstream: RS_Diag_04260

auto operator[] (std::size_t index) const noexcept -> ara::core::Result< std::reference_wrapper< DiagnosticSovdContent ElementData const > >; DIRECTION NOT             index                       -- DEFINED

Access the content element with specified index of an array. This DiagnosticSovdContentElementData shall be of type ArrayContentElementData

Header-Datei#include "ara/diag/diagnostic_sovd_content_element_data.h"
Scopeclass ara::diag::DiagnosticSovdArrayContentElementDataConstView
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Rückgabewert

TypBeschreibung
ara::core::Result<std::reference_wrapper<DiagnosticSovdContentElementData const > >reference to the content element or an error if DiagnosticSovdContentElementData is not of type ArrayContentElementData

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

Record
AUTOSAR/AP/record/SWS_DM_02253
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02253@rel:R25-11#6bff4bf0
Content hash
6bff4bf0
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02253
Status: valid/unmigrated Version: rel:R25-11#9a0c8a2c 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_DM_02253@rel:R25-11#9a0c8a2c
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