DEENESPTFRRUARHIKOZHNL
AUTOSAR_SWS_LanguageBindingForModeledAPdatatypes FIG-7e93e938227bba12 660 × 521 px 1 Release(s)

Figure 7.2: CppImplementationDataType

SHA-256 Inhalts-Fingerabdruck: 7e93e938227bba128611663791f0eb70bda810abbbace928a982e3c05f72a4b1
✦ KI-generierte Bildanalyse & technische Beschreibung Modell: gemini-3.8-flash (via agy) · Rezept figure-series@1 · erstellt am 2026-10-08

1. Diagrammtyp & Architektur-Kontext

UML-Klassendiagramm zur Spezifikation des Metamodells für C++-Implementierungsdatentypen (CppImplementationDataType) innerhalb der AUTOSAR Adaptive Platform (Language Binding for Modeled AP Data Types). Es definiert die statische Struktur, Datenkapselung, Namensraumhierarchien, Template-Argumente sowie Speicherallokatoren für modellierte C++-Datentypen.

2. Komponenten, Entitäten & Schnittstellen

Das Diagramm definiert folgende Entitäten und Beziehungen:

  • CppImplementationDataType (spezialisiert AbstractImplementationDataType, realisiert CppImplementationDataTypeContextTarget): Zentrale Klasse mit Attributen headerFile: String [0..1], typeEmitter: NameToken [0..1] und arraySize: PositiveInteger [0..1] (mit Stereotyp «atpVariation»). Besitzt eine reflexive Assoziation +typeReference 0..1 auf sich selbst.
  • CppImplementationDataTypeElement (spezialisiert AbstractImplementationDataTypeElement, realisiert CppImplementationDataTypeContextTarget): Enthält isOptional: Boolean [0..1]. Komposition von CppImplementationDataType via +subElement 0..* {ordered}.
  • CppImplementationDataTypeElementQualifier: Attribut inplace: Boolean [0..1]. Komposition von CppImplementationDataTypeElement via +typeReference 0..1. Zielgerichtete Assoziation +typeReference 0..1 zu CppImplementationDataType.
  • CppTemplateArgument: Attribute category: CategoryString [0..1] und inplace: Boolean [0..1]. Komposition von CppImplementationDataType via +templateArgument 0..* {ordered}. Besitzt eine Assoziation +templateType 0..1 zu CppImplementationDataType sowie eine Assoziation +allocator 0..1 zu Allocator.
  • Allocator («ARElement»): Attribut headerFile: String [0..1]. Enthält eine Komposition +namespace 0..* {ordered} zu SymbolProps.
  • SymbolProps (spezialisiert ImplementationProps, erbt von Referrable): Attribut symbol: CIdentifier [0..1]. Komposition von CppImplementationDataType via +namespace 0..* {ordered} sowie von Allocator.

3. Dynamisches Verhalten & Sequenzablauf

Als statisches Metamodell-Klassendiagramm stellt das Schaubild keine dynamischen Interaktionen, Zustandsübergänge oder Laufzeitsequenzen dar. Es beschreibt die deklarative Metamodellstruktur zur Generierungs- und Entwurfszeit für C++-Datentyp-Definitionen.

4. Normative Relevanz & Entwickler-Hinweise

  • CppImplementationDataType definiert Implementierungsdatentypen in C++ inklusive optionaler Variabilität (arraySize über «atpVariation»), Header-Angaben und Typ-Emitter.
  • Geordnete Multiplizitäten ({ordered}) bei subElement, namespace und templateArgument sind bindend für die Code-Generierung und Serialisierungsreihenfolge von Struktur-Elementen, C++-Namensräumen bzw. C++-Template-Parametern.
  • CppImplementationDataTypeElementQualifier referenziert optional (0..1) den zugrundeliegenden CppImplementationDataType.
  • SymbolProps.symbol liefert den C++-Identifier für Namensraumsegmente (+namespace).

Versionsvergleich KI-generiert · gemini-3.8-flash (via agy)

R21-11 → R22-11 normative Änderung Vorgänger: FIG-7f970e0d946fb116
  • Multiplizität der Assoziation +typeReference von CppImplementationDataTypeElementQualifier zu CppImplementationDataType von 1 auf 0..1 gelockert.
  • Layout der Klasse SymbolProps und Vererbungspfeil zu ImplementationProps neu angeordnet (rechts platziert statt darüber).
R22-11 → R23-11 normative Änderung Nachfolger: FIG-72743e787c8fa244
  • Vererbungshierarchie oberhalb von CppImplementationDataType explizit modelliert: Generalisierung von AbstractImplementationDataType, dieser von AutosarDataType («ARElement», «AtpType»), und Assoziation «isOfType» +type 0..1 {redefines atpType} von AutosarDataPrototype («DataPrototype») zu AutosarDataType.
  • Neue Spezialisierungen von CppImplementationDataType eingeführt: CustomCppImplementationDataType und StdCppImplementationDataType.
  • Stereotype / Interfaces an Klassen ergänzt: «AtpBlueprint», «AtpBlueprintable» an AbstractImplementationDataType.
  • Eigenständige Komposition +namespace 0..* {ordered} direkt von CppImplementationDataType auf SymbolProps ergänzt.
  • Platzierung der Klasse Allocator in die untere Modellebene zwischen CppTemplateArgument und SymbolProps verschoben.

Zugeordnete Anforderungen

Diese Angaben zeigt der Versions-Explorer.

Aus dem Dokument extrahierter Text & Kontext

Beschriftungen im Schaubild:

AbstractImplementationDataType CppImplementationDataTypeContextTarget | CppImplementationDataType | + headerFile: String [0..1] + typeEmitter: NameToken [0..1] | «atpVariation» + arraySize: PositiveInteger [0..1] | AbstractImplementationDataTypeElement CppImplementationDataTypeContextTarget | CppImplementationDataTypeElement | + isOptional: Boolean [0..1] | SymbolProps Referrable | ImplementationProps | + symbol: CIdentifier [0..1] | ARElement | Allocator | + headerFile: String [0..1] | CppTemplateArgument | + category: CategoryString [0..1] + inplace: Boolean [0..1] | CppImplementationDataTypeElementQualifier | + inplace: Boolean [0..1] | +typeReference 0..1 +typeReference 0..1 | +namespace 0..* {ordered} | +subElement | 0..* {ordered} | +namespace 0..* {ordered} | +templateType 0..1 | +allocator 0..1 | +templateArgument 0..* {ordered} | +typeReference | 0..1

Vorkommen in AUTOSAR-Releases (1)

Release Dokument Seite Nr. Bildunterschrift im Dokument
R22-11 AUTOSAR_SWS_LanguageBindingForModeledAPdatatypes S. 19 7.2 Figure 7.2: CppImplementationDataType