DEENESPTFRRUARHIKOZHNL

class ara::shwa::PropertyList

Diese Seite wurde vollständig KI-generiert auf Basis von SWS Safe Hardware Acceleration (R25-11) — kein offizieller AUTOSAR-Text und keine automatisch extrahierte API-Seite wie die übrigen Module. Als Interpretation gekennzeichnete Aussagen sind Schlussfolgerungen aus den Quellen.

[AP_SWS_SHWA_00801] wording not yet imported Upstream: RS_SHWA_00001, RS_SHWA_00014

class PropertyList final {...};

Die Spezifikation definiert diesen Klassentyp mit der gezeigten Schnittstelle.

Header-Datei#include "ara/shwa/property_list.h"
Scopenamespace ara::shwa

User GuideAI-GENERATED

Bundles properties for hardware actuators into an exception-safe value object for passing to SHWA interfaces.
AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 5dbb1d61ed77 Provenance Open questions (3)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

Bundles properties for hardware actuators into an exception-safe value object for passing to SHWA interfaces.

The final class ara::shwa::PropertyList is used in the AUTOSAR Adaptive module shwa for aggregating and passing properties. It is created via a variadic template constructor declared as noexcept and is therefore exception-safe ([AP_SWS_SHWA_00802]). Interpretation: Instances are likely to be used primarily as short-lived value objects to pass configuration attributes bundled to hardware interfaces. Question Q-6303ee8ec36bf3e3 (open) As a central constraint, the class is not thread-safe (not thread-safe), which is why concurrent accesses from multiple threads must be synchronized externally ([AP_SWS_SHWA_00802]).

Context

The class ara::shwa::PropertyList is part of the module shwa (Smart Hardware Actuator) within the AUTOSAR Adaptive Platform. The specification defines this type as a final class (class PropertyList final), which precludes derivation by user classes in advance. The primary role of the class is the bundling and structured passing of properties. Via the constructor template [AP_SWS_SHWA_00802], the class accepts a variable number of property objects. Interpretation: Within the module, the class is likely to serve as a type-safe aggregation container that combines heterogeneous configurations or hardware attributes for actuators and sensors and passes them on to processing interfaces. Question Q-70687f2df4a18776 (open)

In interaction with other components, the class acts as an information carrier. The caller aggregates application-specific properties, while the SHWA subsystem accepts these lists to control hardware-related operations. Since the class definition is final, PropertyList forms a closed data structure that prevents a direct inheritance hierarchy and thus enforces uniform semantics during parameter passing.

Lifecycle

The lifecycle of an instance of ara::shwa::PropertyList begins with direct initialization via the variadic constructor template <typename... Properties> PropertyList(Properties... props) according to [AP_SWS_SHWA_00802]. Due to the declaration with noexcept, it is guaranteed that the creation of an instance proceeds completely exception-safe with respect to exception safety ([AP_SWS_SHWA_00802]). If errors occur during parameter passing or internal processing, this leads to direct program termination via std::terminate due to the noexcept guarantee, provided that underlying operations throw exceptions.

Regarding concurrency behavior, the specification stipulates that the class is not thread-safe (not thread-safe) ([AP_SWS_SHWA_00802]). This means that instances must not be used concurrently by multiple threads during their creation and in all subsequent operations without external synchronization mechanisms. Interpretation: Instances of PropertyList are typically expected to be allocated as local value objects on the stack or passed to called functions via move semantics, thereby realizing thread-local ownership without shared state. Question (open)

The end of the lifecycle follows the regular rules for automatic or dynamic C++ objects. Since no virtual destructors or inheritance are provided, all contained resources are released deterministically upon destruction of the object.

Usage Path

The regular usage path of ara::shwa::PropertyList comprises compiling relevant properties and passing the aggregated object to the SHWA subsystem:

  • Instantiation: The user creates an object of the class by passing the desired properties directly to the variadic constructor ([AP_SWS_SHWA_00802]). Through the template, different property types can be combined type-conformantly in a single call.
  • Passing: The created instance is passed to the corresponding target methods or interfaces of module shwa. Interpretation: After construction, access to the bundled values is presumably purely read-only by the processing components of the hardware subsystem. Question Q-350de0ec77d53e28 (open)
  • Cleanup: After completion of processing or upon leaving the scope, the instance is automatically destroyed without requiring explicit deinitialization steps.

Error Scenarios

Since the constructor of ara::shwa::PropertyList is explicitly declared as noexcept, no C++ exceptions occur upon invocation ([AP_SWS_SHWA_00802]). Exception safety is explicitly stated as exception safe in the requirement specification ([AP_SWS_SHWA_00802]). Users therefore do not need to place try-catch blocks around the construction of property lists.

A major failure scenario lies in disregarding thread safety. Since PropertyList is classified as not thread-safe according to [AP_SWS_SHWA_00802], unprotected concurrent access to the same instance by multiple threads of execution results in race conditions and undefined behavior. Developers must ensure that instances are either operated strictly thread-locally or protected from concurrent accesses using suitable synchronization primitives such as mutexes.

This guide was generated by an artificial intelligence based on the AUTOSAR specification R25-11.

Constructors and destructor

PropertyList function

Die Spezifikation definiert diese Deklaration mit der in der Signatur ausgewiesenen Semantik.

template <typename... Properties> PropertyList (Properties... props) noexcept;

Details

function PropertyList [AP_SWS_SHWA_00802] Upstream: RS_SHWA_00001, RS_SHWA_00007, RS_SHWA_00014

template <typename... Properties> PropertyList (Properties... props) noexcept;

Die Spezifikation definiert diese Deklaration mit der in der Signatur ausgewiesenen Semantik.

Scopeclass ara::shwa::PropertyList
Thread Safetynot thread-safe
Exception Safetyexception safe

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

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