DEENESPTFRRUARHIKOZHNL

classe ara::diag::DiagnosticSovdArrayContentElementDataConstIterator

[SWS_DM_02221] Upstream: RS_Diag_04260

class DiagnosticSovdArrayContentElementDataConstIterator {...};

Const iterator for a DiagnosticSovdArrayContentElementData.

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 le parcours pas à pas en lecture seule d'éléments de tableau SOVD dans les applications de diagnostic.
GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 7db6b86aff46 Provenance Questions ouvertes (3)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Permet le parcours pas à pas en lecture seule d'éléments de tableau SOVD dans les applications de diagnostic.

La classe ara::diag::DiagnosticSovdArrayContentElementDataConstIterator fournit un itérateur avant en lecture seule pour les éléments de tableau dans le contexte de diagnostic SOVD ([SWS_DM_02221]). Les applications l'utilisent pour parcourir pas à pas des structures de données de type DiagnosticSovdContentElementData via des opérateurs de comparaison, de déréférencement et d'incrémentation ([SWS_DM_02222]). Toutes les opérations étant spécifiées comme noexcept, la vérification des limites d'itération incombe à l'appelant afin d'éviter tout comportement indéfini en cas de positions invalides.

Contexte

La classe ara::diag::DiagnosticSovdArrayContentElementDataConstIterator fait partie du module de diagnostic (diag) d'AUTOSAR Adaptive Platform ([SWS_DM_02221], AUTOSAR_AP_SWS_Diagnostics §8.60.2 « Class: DiagnosticSovdArrayContentElementDataConstIterator »). Elle satisfait aux exigences standard de la Service-Oriented Vehicle Diagnostics (SOVD) et fournit un itérateur avant constant pour des champs de données séquentiels. Sa responsabilité centrale est l'encapsulation de l'accès en lecture seule aux éléments individuels de type DiagnosticSovdContentElementData ([SWS_DM_02222], [SWS_DM_02223]). Les partenaires d'interaction sont des applications de diagnostic qui évaluent, via le fichier d'en-tête ara/diag/diagnostic_sovd_content_element_data.h, des contenus de tableaux conformes à SOVD sans pouvoir modifier les structures de mémoire sous-jacentes.

Cycle de vie

La spécification de classe [SWS_DM_02221] ne liste aucun constructeur public. L'instanciation de l'itérateur ne devrait donc généralement pas être effectuée par le logiciel applicatif lui-même, mais fournie par des méthodes de conteneur de l'objet de données de niveau supérieur. Question Q-a2a94d90c92beb71 (ouverte) Après sa création, l'itérateur représente une position fixe au sein de la séquence du tableau.

La transition vers la position suivante respective s'effectue via l'opérateur de pré-incrémentation operator++, qui renvoie une référence vers l'objet itérateur incrémenté lui-même ([SWS_DM_02226]). Concernant la concurrence, l'ensemble des fonctions membres de la classe sont expressément spécifiées comme thread-safe (thread-safe) ([SWS_DM_02222] à [SWS_DM_02226]). Plusieurs threads peuvent ainsi lire de manière concurrente la même position ou des positions différentes. Si une instance d'itérateur est avancée de manière modificatrice par operator++, cela nécessite une synchronisation externe en cas d'utilisation partagée. La durée de vie des données utiles référencées devrait être strictement liée à la durée de vie du conteneur de données fournisseur. Question Q-743ef89528de7a75 (ouverte)

Parcours d'utilisation

Le chemin d'utilisation typique correspond à l'idiome C++ classique pour les itérateurs constants sur une collection. Au début d'un parcours, l'appelant vérifie la validité de la position actuelle au moyen de l'opérateur d'inégalité operator!= ([SWS_DM_02225]) ou de l'opérateur d'égalité operator== ([SWS_DM_02224]) par comparaison avec l'itérateur de fin. Si l'itérateur se trouve dans la plage valide, l'application accède à l'élément en lecture :

  • Une référence constante DiagnosticSovdContentElementData const& est renvoyée via l'opérateur de déréférencement operator* ([SWS_DM_02222]).
  • Un pointeur constant DiagnosticSovdContentElementData const* est fourni via l'opérateur flèche operator-> ([SWS_DM_02223]), ce qui permet l'accès direct aux méthodes membres.

Ensuite, l'appelant avance l'itérateur d'une position avec operator++ ([SWS_DM_02226]) et répète la vérification de position jusqu'à ce que l'état final soit atteint.

Séquence d’itération de tableau en lecture seuleApplicationIteratorElementDataUse Case: Contrôle de la limite d’itérationoperator!=(end)true (élément valide)Use Case: Accès aux données en lecture seuleoperator*()Referenz ermittelnDiagnosticSovdContentElementData const&Use Case: Weiterschaltenoperator++()*this (inkrementierter Iterator)

Diagramme de séquence : déroulement typique de l'itération pas à pas sur des éléments de tableau SOVD. Sources : [SWS_DM_02222], [SWS_DM_02225], [SWS_DM_02226]

Scénarios d'erreur

L'interface ne définit aucun code d'erreur spécifique ni retour d'état sous forme de ara::core::Result. Toutes les opérations sont spécifiées comme sûres vis-à-vis des exceptions (exception safe) et dotées du spécificateur noexcept ([SWS_DM_02222] à [SWS_DM_02226]). Aucune exception C++ n'est levée en cours de fonctionnement.

Une précondition essentielle pour les appels de operator* et operator-> est que l'itérateur doit être déréférençable. Le déréférencement d'un itérateur invalide ou de l'itérateur de fin devrait conduire à un comportement indéfini en raison de l'absence de mécanismes de traitement d'erreurs. Question Q-9144a319e654f27a (ouverte) Il incombe de même à l'appelant de s'assurer que deux itérateurs comparés proviennent de la même séquence.

Ce guide a été généré par un modèle d'IA sur la base de la spécification AUTOSAR R25-11.

Carte des membres

Diagramme de classes

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

G nara__diag__DiagnosticSovdArrayContentElementDataConstIterator518 DiagnosticSovdArrayContentElementDataConstIterator + operator!=() + operator*() + operator++() + operator->() + operator==()

Vue détaillée

Sélectionnez une entrée dans le plan.

Opérateurs

operator!= fonction

Not equal operator.

auto operator!= (DiagnosticSovdArrayContentElementDataConstIterator const &other) noexcept -> bool;
operator* fonction

Dereference operator.

auto operator* () noexcept -> DiagnosticSovdContentElementData const &;
operator++ fonction

Increment operator.

auto operator++ () noexcept -> DiagnosticSovdArrayContentElementData ConstIterator &;
operator-> fonction

Dereference operator.

auto operator-> () noexcept -> DiagnosticSovdContentElementData const *;
operator== fonction

Equal operator.

auto operator== (DiagnosticSovdArrayContentElementDataConstIterator const &other) noexcept -> bool;

Documentation des méthodes

fonction operator!= [SWS_DM_02225] Upstream: RS_Diag_04260

auto operator!= (DiagnosticSovdArrayContentElementDataConstIterator const &other) noexcept -> bool;

Not equal operator.

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

Parameter (in)

ParameterBeschreibung
otherThe other iterator to test equality with

Rückgabewert

TypBeschreibung
boolTrue if operator are equals, false otherwise

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

Record
AUTOSAR/AP/record/SWS_DM_02225
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02225@rel:R25-11#ee832a19
Content hash
ee832a19
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02225
Status: valid/unmigrated Version: rel:R25-11#d81fc3aa 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_02225@rel:R25-11#d81fc3aa
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_02222] Upstream: RS_Diag_04260

auto operator* () noexcept -> DiagnosticSovdContentElementData const &;

Dereference operator.

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

Rückgabewert

TypBeschreibung
DiagnosticSovdContentReturn a reference to the DiagnosticSovdContentElementData ElementData const

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

Record
AUTOSAR/AP/record/SWS_DM_02222
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02222@rel:R25-11#b47fc77e
Content hash
b47fc77e
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02222
Status: valid/unmigrated Version: rel:R25-11#6ba06c2c 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_02222@rel:R25-11#6ba06c2c
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_02226] Upstream: RS_Diag_04260

auto operator++ () noexcept -> DiagnosticSovdArrayContentElementData ConstIterator &;

Increment operator.

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

Rückgabewert

TypBeschreibung
DiagnosticSovdArrayContentElementDataConstIteratorReference to the incremented iterator

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

Record
AUTOSAR/AP/record/SWS_DM_02226
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02226@rel:R25-11#9e468639
Content hash
9e468639
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02226
Status: valid/unmigrated Version: rel:R25-11#da77b20e 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_02226@rel:R25-11#da77b20e
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_02223] Upstream: RS_Diag_04260

auto operator-> () noexcept -> DiagnosticSovdContentElementData const *;

Dereference operator.

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

Rückgabewert

TypBeschreibung
DiagnosticSovdContent Return a pointer to the DiagnosticSovdContentElementData ElementData const *

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

Record
AUTOSAR/AP/record/SWS_DM_02223
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02223@rel:R25-11#371258b2
Content hash
371258b2
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02223
Status: valid/unmigrated Version: rel:R25-11#54f084a2 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_02223@rel:R25-11#54f084a2
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_02224] Upstream: RS_Diag_04260

auto operator== (DiagnosticSovdArrayContentElementDataConstIterator const &other) noexcept -> bool;

Equal operator.

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

Parameter (in)

ParameterBeschreibung
otherThe other iterator to test equality with

Rückgabewert

TypBeschreibung
boolTrue if operator are equals, false otherwise

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

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