DEENESPTFRRUARHIKOZHNL

classe ara::diag::DynamicAccessListDiagServiceBuilder::ByteRange

[SWS_DM_01182] Upstream: RS_Diag_04251

class ByteRange final {...};

Represents a single byte value closed range. Type alias of a single diagnostic service pattern element in the DynamicAccessList

Header-Datei#include "ara/diag/dynamic_access_list_diag_service_builder.h"
Forwarding-Header#include "ara/diag/diag_fwd.h"
Scopeclass ara::diag::DynamicAccessListDiagServiceBuilder

Guide utilisateurGÉNÉRÉ PAR IA

Définit un intervalle fermé de valeurs d'octets pour les modèles de service de diagnostic dans les listes d'accès dynamiques.
GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 772c8ed103eb Provenance Questions ouvertes (1)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Définit un intervalle fermé de valeurs d'octets pour les modèles de service de diagnostic dans les listes d'accès dynamiques.

La classe ara::diag::DynamicAccessListDiagServiceBuilder::ByteRange représente un intervalle fermé de valeurs d'octets destiné à définir des modèles de service de diagnostic dans des listes d'accès dynamiques [SWS_DM_01182]. Les applications créent ces objets-valeurs avec des valeurs minimales et maximales et les transmettent au builder pour la configuration progressive de modèles de service [SWS_DM_01183]. De plus, les limites d'intervalle définies peuvent être consultées à tout moment via des inspecteurs. Toutes les fonctions membres sont déclarées sans exception comme noexcept, tandis que les opérateurs d'assignation modificateurs nécessitent une synchronisation spécifique en cas d'accès concurrent.

Contexte

La classe ara::diag::DynamicAccessListDiagServiceBuilder::ByteRange représente un intervalle fermé de valeurs d'octets au sein d'un modèle de service de diagnostic [SWS_DM_01182]. Dans le cadre de la gestion dynamique des accès (DynamicAccessList), elle fait office de composant élémentaire pour définir avec précision les critères et les plages de valeurs des différents octets pour les requêtes de diagnostic AUTOSAR_AP_SWS_Diagnostics §8.15.2 « Class: ByteRange ».

En tant que type valeur imbriqué, ByteRange agit en coopération directe avec le DynamicAccessListDiagServiceBuilder de niveau supérieur. Tandis que l'application de diagnostic crée des instances avec des valeurs de seuil spécifiques, le builder consomme ces objets via des méthodes telles que Add [SWS_DM_01177] ou EndsWith [SWS_DM_01180] afin de construire des séquences de motifs d'octets pour les services de diagnostic. En complément, la classe permet de lire les limites configurées via GetMin [SWS_DM_01189] et GetMax [SWS_DM_01190].

Cycle de vie

Les instances de ByteRange sont créées de manière standard via le constructeur paramétré, qui accepte la valeur minimale (min) et maximale (max) sous la forme d'un intervalle de valeurs fermé [SWS_DM_01183]. Comme il s'agit d'un objet valeur sans état et sans liaison dynamique de ressources, il n'existe pas de phases de fonctionnement internes complexes.

La classe implémente une sémantique de valeur conforme aux standards : elle fournit aussi bien un constructeur de copie [SWS_DM_01184] qu'un constructeur de déplacement [SWS_DM_01185], ce qui permet de transmettre sans difficulté des instances aux méthodes du builder par copie ou par déplacement. De manière analogue, l'opérateur d'affectation par copie [SWS_DM_01186] et l'opérateur d'affectation par déplacement [SWS_DM_01187] sont disponibles. Le cycle de vie se termine par le destructeur [SWS_DM_01188].

En ce qui concerne la concurrence, AUTOSAR spécifie des exigences différenciées : les constructeurs et les opérations de lecture sont classés comme thread-safe, alors que les opérateurs d'affectation operator= ([SWS_DM_01186], [SWS_DM_01187]) et le destructeur [SWS_DM_01188] sont expressément non thread-safe. Les opérations modificatrices sur la même instance requièrent donc des mesures de synchronisation au niveau de l'appelant.

Parcours d'utilisation

L'utilisation typique de ByteRange s'effectue dans le cadre de la configuration séquentielle de motifs de service via le builder :

  1. L'application crée un objet ByteRange en indiquant les bornes min et max [SWS_DM_01183].
  2. L'intervalle est transmis à DynamicAccessListDiagServiceBuilder::Add afin d'étendre le motif à la position actuelle [SWS_DM_01177].
  3. EndsWith permet de définir un intervalle final qui constitue la clôture du motif [SWS_DM_01180].
  4. Si nécessaire, l'application lit les valeurs limites via GetMin [SWS_DM_01189] et GetMax [SWS_DM_01190] à des fins de vérification.
Définition de motif avec ByteRange et DynamicAccessListDiagServiceBuilderApplicationByteRangeDynamicAccessListDiagServiceBuilderByteRange(min, max)InstanzAdd(range)EndsWith(range)GetMin() / GetMax()Grenzwerte (Byte)

Diagramme de séquence : interaction typique lors de la définition d'un motif de diagnostic avec ByteRange. Sources : [SWS_DM_01183], [SWS_DM_01177], [SWS_DM_01180], [SWS_DM_01189], [SWS_DM_01190].

Scénarios d'erreur

Toutes les fonctions membres de la classe sont déclarées avec noexcept et sont ainsi totalement sûres du point de vue des exceptions (exception safe) [SWS_DM_01183]. Ni la construction, ni les affectations, ni les consultations ne lèvent d'exceptions C++.

Les situations d'erreur potentielles concernent principalement des erreurs logiques de paramétrage : si une application transmet une valeur minimale min supérieure à la valeur maximale max, la spécification ne définit aucun comportement d'erreur explicite (interprétation : une telle paire de valeurs non valide ne devrait vraisemblablement être rejetée que lors du traitement ultérieur du motif dans le builder ou aboutir à un motif de correspondance vide). Question Q-ea9c65d175d48946 (ouverte) Un autre risque d'erreur réside dans l'affectation non protégée via operator= en cas d'accès concurrent de plusieurs threads au même objet, car les affectations ne sont pas thread-safe [SWS_DM_01186].

Ce guide de classe est basé sur la spécification AUTOSAR Adaptive R25-11 pour le module diag.

Carte des membres

Constructeurs et destructeur

2

Méthodes

2

Opérateurs

1

Diagramme de classes

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

G nara__diag__DynamicAccessListDiagServiceBuilder__ByteRange410 ByteRange + ByteRange() + ~ByteRange() + GetMax() + GetMin() + operator=()

Vue détaillée

Sélectionnez une entrée dans le plan.

Constructeurs et destructeur

ByteRange fonction 3

Constructs a value range.

Surcharges ByteRange 3
ByteRange (Byte min, Byte max) noexcept; SWS_DM_01183
ByteRange (ByteRange const &other) noexcept; SWS_DM_01184
ByteRange (ByteRange &&other) noexcept; SWS_DM_01185
~ByteRange fonction

Destructor of ByteRange.

~ByteRange () noexcept;

Méthodes

GetMax fonction

Reports the highest value to match.

auto GetMax () const noexcept -> Byte;
GetMin fonction

Reports the lowest value to match.

auto GetMin () const noexcept -> Byte;

Opérateurs

operator= fonction 2

Copy assignment operator of ByteRange.

Surcharges = 2
auto operator= (ByteRange const &other) & noexcept -> ByteRange &; SWS_DM_01186
auto operator= (ByteRange &&other) & noexcept -> ByteRange &; SWS_DM_01187

Documentation des méthodes

fonction ByteRange [SWS_DM_01183] Upstream: RS_Diag_04251

ByteRange (Byte min, Byte max) noexcept;

Constructs a value range.

Header-Datei#include "ara/diag/dynamic_access_list_diag_service_builder.h"
Scopeclass ara::diag::DynamicAccessListDiagServiceBuilder::ByteRange
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Parameter (in)

ParameterBeschreibung
minThe minimum value to match.
maxThe maximum value to match.

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

Record
AUTOSAR/AP/record/SWS_DM_01183
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01183@rel:R25-11#f51db689
Content hash
f51db689
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01183
Status: valid/unmigrated Version: rel:R25-11#76d910b8 Versionshistorie & Revisions (1 transition, 6 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_01183@rel:R25-11#76d910b8
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#88ee71502026-09-30
  • R21-11rel:R21-11#5b6ad4402026-10-14
  • R22-11rel:R22-11#e5a417102026-10-14
  • R23-11rel:R23-11#188249a92026-10-14
  • R24-11rel:R24-11#cbf06b7e2026-10-14
  • R25-11rel:R25-11#76d910b82026-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

fonction ByteRange [SWS_DM_01184] Upstream: RS_Diag_04251

ByteRange (ByteRange const &other) noexcept;

Copy constructor of ByteRange.

Header-Datei#include "ara/diag/dynamic_access_list_diag_service_builder.h"
Scopeclass ara::diag::DynamicAccessListDiagServiceBuilder::ByteRange
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Parameter (in)

ParameterBeschreibung
otherObject to construct-assign from.

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

Record
AUTOSAR/AP/record/SWS_DM_01184
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01184@rel:R25-11#2f98acca
Content hash
2f98acca
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01184
Status: valid/unmigrated Version: rel:R25-11#70b42108 Versionshistorie & Revisions (1 transition, 6 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_01184@rel:R25-11#70b42108
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#d2c778d92026-09-30
  • R21-11rel:R21-11#8a73de022026-10-14
  • R22-11rel:R22-11#b28526062026-10-14
  • R23-11rel:R23-11#5de9db872026-10-14
  • R24-11rel:R24-11#b95826bf2026-10-14
  • R25-11rel:R25-11#70b421082026-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

fonction ByteRange [SWS_DM_01185] Upstream: RS_Diag_04251

ByteRange (ByteRange &&other) noexcept;

Move constructor of ByteRange.

Header-Datei#include "ara/diag/dynamic_access_list_diag_service_builder.h"
Scopeclass ara::diag::DynamicAccessListDiagServiceBuilder::ByteRange
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Parameter (in)

ParameterBeschreibung
otherObject to move-assign from.

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

Record
AUTOSAR/AP/record/SWS_DM_01185
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01185@rel:R25-11#726a130e
Content hash
726a130e
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01185
Status: valid/unmigrated Version: rel:R25-11#7783f97f Versionshistorie & Revisions (1 transition, 6 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_01185@rel:R25-11#7783f97f
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#05f7580e2026-09-30
  • R21-11rel:R21-11#2b85b98e2026-10-14
  • R22-11rel:R22-11#82eb01f52026-10-14
  • R23-11rel:R23-11#206730ae2026-10-14
  • R24-11rel:R24-11#5e5486b62026-10-14
  • R25-11rel:R25-11#7783f97f2026-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

fonction GetMax [SWS_DM_01190] Upstream: RS_Diag_04251

auto GetMax () const noexcept -> Byte;

Reports the highest value to match.

Header-Datei#include "ara/diag/dynamic_access_list_diag_service_builder.h"
Scopeclass ara::diag::DynamicAccessListDiagServiceBuilder::ByteRange
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Rückgabewert

TypBeschreibung
ByteReturns the the highest value.

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

Record
AUTOSAR/AP/record/SWS_DM_01190
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01190@rel:R25-11#55ffab13
Content hash
55ffab13
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01190
Status: valid/unmigrated Version: rel:R25-11#ed1cf150 Versionshistorie & Revisions (1 transition, 6 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_01190@rel:R25-11#ed1cf150
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#97213c3a2026-09-30
  • R21-11rel:R21-11#9b134c052026-10-14
  • R22-11rel:R22-11#3b0338f22026-10-14
  • R23-11rel:R23-11#110ac01b2026-10-14
  • R24-11rel:R24-11#d75516992026-10-14
  • R25-11rel:R25-11#ed1cf1502026-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

fonction GetMin [SWS_DM_01189] Upstream: RS_Diag_04251

auto GetMin () const noexcept -> Byte;

Reports the lowest value to match.

Header-Datei#include "ara/diag/dynamic_access_list_diag_service_builder.h"
Scopeclass ara::diag::DynamicAccessListDiagServiceBuilder::ByteRange
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Rückgabewert

TypBeschreibung
ByteReturns the lowest value.

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

Record
AUTOSAR/AP/record/SWS_DM_01189
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01189@rel:R25-11#7723f8b1
Content hash
7723f8b1
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01189
Status: valid/unmigrated Version: rel:R25-11#9261124f Versionshistorie & Revisions (1 transition, 6 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_01189@rel:R25-11#9261124f
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#aec0b79b2026-09-30
  • R21-11rel:R21-11#bac056062026-10-14
  • R22-11rel:R22-11#88ffd3472026-10-14
  • R23-11rel:R23-11#8bdcbed02026-10-14
  • R24-11rel:R24-11#817c457f2026-10-14
  • R25-11rel:R25-11#9261124f2026-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

fonction operator= [SWS_DM_01186] Upstream: RS_Diag_04251

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

Copy assignment operator of ByteRange.

Header-Datei#include "ara/diag/dynamic_access_list_diag_service_builder.h"
Scopeclass ara::diag::DynamicAccessListDiagServiceBuilder::ByteRange
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Parameter (in)

ParameterBeschreibung
otherObject to copy-assign from.

Rückgabewert

TypBeschreibung
ByteRangeByteRange& Reference to self.

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

Record
AUTOSAR/AP/record/SWS_DM_01186
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01186@rel:R25-11#e87f6228
Content hash
e87f6228
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01186
Status: valid/unmigrated Version: rel:R25-11#eb4ce14e Versionshistorie & Revisions (1 transition, 6 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_01186@rel:R25-11#eb4ce14e
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#317708572026-09-30
  • R21-11rel:R21-11#1a6ff2002026-10-14
  • R22-11rel:R22-11#a6f24ffc2026-10-14
  • R23-11rel:R23-11#b7a9b8882026-10-14
  • R24-11rel:R24-11#7faa27852026-10-14
  • R25-11rel:R25-11#eb4ce14e2026-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

fonction operator= [SWS_DM_01187] Upstream: RS_Diag_04251

auto operator= (ByteRange &&other) & noexcept -> ByteRange &;

Move assignment operator of ByteRange.

Header-Datei#include "ara/diag/dynamic_access_list_diag_service_builder.h"
Scopeclass ara::diag::DynamicAccessListDiagServiceBuilder::ByteRange
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Parameter (in)

ParameterBeschreibung
otherObject to move-assign from.

Rückgabewert

TypBeschreibung
ByteRangeByteRange& Reference to self.

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

Record
AUTOSAR/AP/record/SWS_DM_01187
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01187@rel:R25-11#6ebf6777
Content hash
6ebf6777
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01187
Status: valid/unmigrated Version: rel:R25-11#53c83f22 Versionshistorie & Revisions (1 transition, 6 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_01187@rel:R25-11#53c83f22
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#3ce3241d2026-09-30
  • R21-11rel:R21-11#b903f9b62026-10-14
  • R22-11rel:R22-11#050a1aeb2026-10-14
  • R23-11rel:R23-11#3eb7f9782026-10-14
  • R24-11rel:R24-11#6a83a6b32026-10-14
  • R25-11rel:R25-11#53c83f222026-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

fonction ~ByteRange [SWS_DM_01188] Upstream: RS_Diag_04251

~ByteRange () noexcept;

Destructor of ByteRange.

Header-Datei#include "ara/diag/dynamic_access_list_diag_service_builder.h"
Scopeclass ara::diag::DynamicAccessListDiagServiceBuilder::ByteRange
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

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

Record
AUTOSAR/AP/record/SWS_DM_01188
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01188@rel:R25-11#bd60c120
Content hash
bd60c120
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01188
Status: valid/unmigrated Version: rel:R25-11#955d556b Versionshistorie & Revisions (1 transition, 6 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_01188@rel:R25-11#955d556b
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#06913fd72026-09-30
  • R21-11rel:R21-11#353666752026-10-14
  • R22-11rel:R22-11#a69400002026-10-14
  • R23-11rel:R23-11#a2058a942026-10-14
  • R24-11rel:R24-11#5947fcb12026-10-14
  • R25-11rel:R25-11#955d556b2026-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