DEENESPTFRRUARHIKOZHNL

فئة ara::diag::MultipleCondition

[SWS_DM_01730] Upstream: RS_Diag_04192

class MultipleCondition final {...};

Class for multiple condition operations.

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

دليل المستخدممولَّد بالذكاء الاصطناعي

يتيح تعيين شروط التشخيص المتعددة والاستعلام عنها عبر واجهة مشتركة استنادًا إلى المقابض.
مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 2f3f3f7d9426 المصدر أسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

يتيح تعيين شروط التشخيص المتعددة والاستعلام عنها عبر واجهة مشتركة استنادًا إلى المقابض.

تُستخدم الفئة ara::diag::MultipleCondition للاستعلام المجمع وتحديث شروط التشخيص المتعددة عبر واجهة منفذ مشتركة استنادًا إلى المقابض الرقمية ([SWS_DM_01730]). تقوم التطبيقات بتهيئة الكائن عبر InstanceSpecifier وتتحكم في الشروط بشكل مستهدف عبر SetCondition و GetCondition ([SWS_DM_01729]). وكشرط أساسي، فإن الفئة غير قابلة للنسخ أو النقل، ومدمّرها ليس آمنًا خيطيًا. بالإضافة إلى ذلك، يجب تكوين جميع الشروط المعنونة في النموذج بشكل متسق عبر تعيينات المنافذ (Port-Mappings) لتجنب أخطاء التهيئة ووقت التشغيل.

السياق

تتيح الفئة ara::diag::MultipleCondition للتطبيق التكيفي إدارة وتعديل شروط التشخيص المتعددة بشكل مجمع عبر واجهة مشتركة ([SWS_DM_01730]). ومن الناحية الوظيفية والدلالية، فإنها توفر نفس قدرات الشروط الفردية، لكنها توسّع العمليات لتشمل العنونة المستهدفة عبر مقبض تعريف (AUTOSAR_AP_SWS_Diagnostics ص. 237). يتطلب كل شرط تشخيص مُدار (DiagnosticCondition) في النموذج ارتباطًا عبر DiagnosticMultipleConditionPortMapping بمنفذ ذي نوع مطابق ([SWS_DM_01727]، AUTOSAR_AP_SWS_Diagnostics ص. 237). وتتم العنونة عبر النوع ConditionHandleType؛ وإذا لم تكن هناك قيمة overrideId صريحة، يخصص Diagnostic Management (DM) قيمًا رقمية تصاعدية تبدأ من 0x010000 وفقًا للترتيب الأبجدي للأسماء المختصرة ([SWS_DM_01735]).

MultipleConditionContext App Adaptive Anwendung MC ara::diag::MultipleCondition App->MC steuert / fragt ab DM Diagnostic Management MC->DM مزامنة الحالة عبر Port

مخطط السياق: تضمين ara::diag::MultipleCondition بين التطبيق التكيفي و Diagnostic Management. المصادر: [SWS_DM_01727]، [SWS_DM_01728]، AUTOSAR_AP_SWS_Diagnostics ص. 237

دورة الحياة

يتم إنشاء نسخة عبر المنشئ MultipleCondition مع تمرير ara::core::InstanceSpecifier ([SWS_DM_01727]). عملية الإنشاء آمنة خيطيًا ومُعلن عنها كـ noexcept ([SWS_DM_01727]). ويمتلك الكائن ارتباطًا صارمًا بنطاق صلاحيته المحلي: تم حذف كل من عمليات النسخ والنقل؛ مُنشئ النسخ ([SWS_DM_02072])، ومُنشئ النقل ([SWS_DM_02071])، ومعامل تعيين النسخ ([SWS_DM_02073])، ومعامل تعيين النقل ([SWS_DM_02074]) غير متاحة (=delete).

تم تحديد المدمّر ~MultipleCondition() صراحةً بأنه غير آمن خيطيًا ([SWS_DM_01737]). لذلك يجب على التطبيق التأكد من اكتمال جميع عمليات الوصول المتزامنة إلى الكائن قبل تدميره. وبالنسبة لاستدعاءات الدوال العادية، يسري أمان خيطي مشروط ([SWS_DM_01728]، [SWS_DM_01729]). تفسير: نظرًا لأن توقيع المنشئ وفقًا لـ [SWS_DM_01727] لا يقبل معامل تزامن صريحًا، فمن المحتمل أن يتم تحديد ConcurrencyType المطلوب عبر نموذج المنفذ الأساسي في البيان (Manifest). سؤال Q-f29def512a68aae9 (مفتوح)

مسار الاستخدام

يتضمن التسلسل النموذجي عند التفاعل مع شروط التشخيص الخطوات التالية:

  1. التهيئة: يُنشئ التطبيق نسخة من الفئة مع تحديد المنفذ المستهدف ([SWS_DM_01727]).
  2. تعيين الحالة: باستخدام SetCondition(conditionHandle, condition)، يُرسل التطبيق تغييرًا في الحالة للشرط المحدد ويتحقق من ara::core::Result<void> الناتج ([SWS_DM_01729]).
  3. الاستعلام عن الحالة: عبر GetCondition(conditionHandle)، تُطلب الحالة الحالية للشرط المعنون بشكل غير متزامن كـ ara::core::Future<ConditionType> ([SWS_DM_01728]).
  4. تحرير الموارد: عند مغادرة نطاق الصلاحية، يقوم مدمّر الكائن بتفكيك الواجهة بطريقة منظمة ([SWS_DM_01737]).
تسلسل استخدام نموذجي لـ ara::diag::MultipleConditionالتطبيقMultipleConditionDiagnosticManagementUse Case: InitialisierungMultipleCondition(specifier)Use Case: Zustand setzenSetCondition(handle, condition)Bedingungszustand aktualisierenBestaetigungResult<void>Use Case: Zustand abfragenGetCondition(handle)Zustand anfordernConditionTypeFuture<ConditionType>Use Case: Bereinigung~MultipleCondition()

مخطط تسلسلي: أنماط الاستدعاء والاستجابة عند إدارة الشروط عبر MultipleCondition. المصادر: [SWS_DM_01727]، [SWS_DM_01728]، [SWS_DM_01729]، [SWS_DM_01737]

سيناريوهات الأخطاء

عند الاستخدام، يجب التمييز بين أخطاء الإنشاء المرتبطة بالنمذجة وأخطاء وقت التشغيل الوظيفية:

  • انتهاكات الإنشاء ([SWS_DM_01727]): إذا فشل حل InstanceSpecifier أو لم يُشر إلى PortPrototype، فسيتم الإبلاغ عن InstanceSpecifierMappingIntegrityViolation. ويحدث PortInterfaceMappingViolation إذا لم يكن نوع المنفذ محددًا كـ DiagnosticMultipleConditionInterface. وإذا كان النظير المنمذج مفقودًا في العملية، ينشأ ProcessMappingViolation. وإذا تم إنشاء نسخ متعددة من InstanceSpecifier نفسه داخل العملية، يؤدي ذلك إلى InstanceSpecifierAlreadyInUseViolation.
  • أخطاء وقت التشغيل عند استدعاء الدوال: إذا تم تمرير معامل غير مسموح به أو مقبض غير صالح إلى SetCondition ([SWS_DM_01729]) أو GetCondition ([SWS_DM_01728])، فإن الدوال تُرجع الخطأ DiagErrc::kInvalidArgument. وإذا كانت الوظيفة الأساسية لـ Diagnostic Management غير متاحة مؤقتًا، تؤكد GetCondition الاستدعاء بـ DiagErrc::kServiceNotAvailable ([SWS_DM_01728]).

يستند هذا الدليل حصريًا إلى مواصفات AUTOSAR Adaptive Platform R25-11.

خريطة الأعضاء

المُنشئات والمُتلف

2

الدوال الأعضاء

2

المعاملات

1

مخطط الفئة

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

G nara__diag__MultipleCondition516 MultipleCondition + MultipleCondition() + operator=() + ~MultipleCondition() + GetCondition() + SetCondition()

عرض التفاصيل

اختر عنصرًا من المخطط.

المُنشئات والمُتلف

Constructor of MultipleCondition Class.

التحميلات الزائدة MultipleCondition 3
explicit MultipleCondition (const ara::core::InstanceSpecifier &specifier) noexcept; SWS_DM_01727
MultipleCondition (MultipleCondition &&) noexcept=delete; SWS_DM_02071
MultipleCondition (MultipleCondition &)=delete; SWS_DM_02072

Destructor of class Condition .

~MultipleCondition () noexcept;

الدوال الأعضاء

GetCondition دالة

Get condition state of the requested condition.

ara::core::Future< ConditionType > GetCondition (ConditionHandleType conditionHandle) noexcept;
SetCondition دالة

Set condition state of the requested condition.

ara::core::Result< void > SetCondition (ConditionHandleType condition Handle, ConditionType condition) noexcept;

المعاملات

operator= دالة 2

Copy assignment operator of MultipleCondition.

التحميلات الزائدة = 2

توثيق الدوال

دالة GetCondition [SWS_DM_01728] Upstream: RS_AP_00139, RS_Diag_04192

ara::core::Future< ConditionType > GetCondition (ConditionHandleType conditionHandle) noexcept;

Get condition state of the requested condition.

Header-Datei#include "ara/diag/multiple_condition.h"
Scopeclass ara::diag::MultipleCondition
Exception-Sicherheitexception safe
Thread-Sicherheitconditional whether the function has to be implemented thread safe or non-thread safe is determined by the ConcurrencyType given in the constructor

Parameter (in)

ParameterBeschreibung
conditionHandleIdentifies the requested condition

Rückgabewert

TypBeschreibung
ara::core::Future<ConditionType >the current condition

Fehler

FehlercodeBeschreibung
DiagErrc::kInvalidArgumentrollback_semantics e.g. kPreFailed with internal debouncing
DiagErrc::kServiceNotAvailablerollback_semantics The call cannot be executed, because essential DM functionality is currently not available.

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

Record
AUTOSAR/AP/record/SWS_DM_01728
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01728@rel:R25-11#94d5319f
Content hash
94d5319f
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01728
Status: valid/unmigrated Version: rel:R25-11#1021a13e Versionshistorie & Revisions (1 transition, 4 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_01728@rel:R25-11#1021a13e
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#ffd9efe62026-09-30
  • R23-11rel:R23-11#cefb75d12026-10-14
  • R24-11rel:R24-11#e36eef822026-10-14
  • R25-11rel:R25-11#1021a13e2026-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

دالة MultipleCondition [SWS_DM_01727] Upstream: RS_AP_00137, RS_Diag_04192, RS_AP_00170, RS_AP_00171, RS_AP_00172, RS_AP_00173

explicit MultipleCondition (const ara::core::InstanceSpecifier &specifier) noexcept;

Constructor of MultipleCondition Class.

Header-Datei#include "ara/diag/multiple_condition.h"
Scopeclass ara::diag::MultipleCondition
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe
Verletzungen (Violations)InstanceSpeci- InstanceSpecifier either cannot be resolved in the model in the fierMappingIn- context of your executable, or it refers to a model element other tegrityViolation than a PortPrototype. PortInterfaceMap- A PortPrototype that is referenced by a pingViolation DiagnosticMultipleConditionPortMapping needs to be typed by a DiagnosticMultipleConditionInterface. ProcessMappingVio- Matching InstanceRef exists, but no matching (modelled) Process lation found that matches the (runtime) process. InstanceSpecifier- Violation message that is sent in case a constructor in the ara AlreadyInUseViola- framework was called with an InstanceSpecifier already in use in tion this process.

Parameter (in)

ParameterBeschreibung
specifierInstanceSpecifier to a PortPrototype of a DiagnosticMultipleConditionInterface

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

Record
AUTOSAR/AP/record/SWS_DM_01727
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01727@rel:R25-11#83b2a654
Content hash
83b2a654
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01727
Status: valid/unmigrated Version: rel:R25-11#65e51852 Versionshistorie & Revisions (1 transition, 4 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_01727@rel:R25-11#65e51852
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#2c9de7bb2026-09-30
  • R23-11rel:R23-11#3179b5462026-10-14
  • R24-11rel:R24-11#8f45ca0e2026-10-14
  • R25-11rel:R25-11#65e518522026-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

دالة MultipleCondition [SWS_DM_02071] Upstream: RS_AP_00147

MultipleCondition (MultipleCondition &&) noexcept=delete;

Move constructor of MultipleCondition.

Header-Datei#include "ara/diag/multiple_condition.h"
Scopeclass ara::diag::MultipleCondition

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

Record
AUTOSAR/AP/record/SWS_DM_02071
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02071@rel:R25-11#beb890ee
Content hash
beb890ee
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02071
Status: valid/unmigrated Version: rel:R25-11#73d20be9 Versionshistorie & Revisions (1 transition, 3 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_02071@rel:R25-11#73d20be9
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#05fd4e5b2026-09-30
  • R24-11rel:R24-11#73d20be92026-10-14
  • R25-11rel:R25-11#73d20be92026-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

دالة MultipleCondition [SWS_DM_02072] Upstream: RS_AP_00147

MultipleCondition (MultipleCondition &)=delete;

Copy constructor of MultipleCondition.

Header-Datei#include "ara/diag/multiple_condition.h"
Scopeclass ara::diag::MultipleCondition

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

Record
AUTOSAR/AP/record/SWS_DM_02072
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02072@rel:R25-11#26ef07de
Content hash
26ef07de
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02072
Status: valid/unmigrated Version: rel:R25-11#1739c435 Versionshistorie & Revisions (1 transition, 3 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_02072@rel:R25-11#1739c435
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#5a4143a82026-09-30
  • R24-11rel:R24-11#1739c4352026-10-14
  • R25-11rel:R25-11#1739c4352026-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

دالة SetCondition [SWS_DM_01729] Upstream: RS_AP_00139, RS_Diag_04192

ara::core::Result< void > SetCondition (ConditionHandleType condition Handle, ConditionType condition) noexcept;

Set condition state of the requested condition.

Header-Datei#include "ara/diag/multiple_condition.h"
Scopeclass ara::diag::MultipleCondition
Exception-Sicherheitexception safe
Thread-Sicherheitconditional whether the function has to be implemented thread safe or non-thread safe is determined by the ConcurrencyType given in the constructor

Parameter (in)

ParameterBeschreibung
conditionHandleIdentifies the requested condition
conditioncurrent condition

Rückgabewert

TypBeschreibung
ara::core::Result< void >Returns nothing or an error.

Fehler

FehlercodeBeschreibung
DiagErrc::kInvalidArgumentrollback_semantics e.g. kPreFailed with internal debouncing

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

Record
AUTOSAR/AP/record/SWS_DM_01729
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01729@rel:R25-11#0140d2b1
Content hash
0140d2b1
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01729
Status: valid/unmigrated Version: rel:R25-11#465faec8 Versionshistorie & Revisions (1 transition, 4 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_01729@rel:R25-11#465faec8
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#0d9cc8512026-09-30
  • R23-11rel:R23-11#fd3bc3f32026-10-14
  • R24-11rel:R24-11#b9d84d0f2026-10-14
  • R25-11rel:R25-11#465faec82026-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

دالة operator= [SWS_DM_02073] Upstream: RS_AP_00147

MultipleCondition & operator= (MultipleCondition &)=delete;

Copy assignment operator of MultipleCondition.

Header-Datei#include "ara/diag/multiple_condition.h"
Scopeclass ara::diag::MultipleCondition

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

Record
AUTOSAR/AP/record/SWS_DM_02073
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02073@rel:R25-11#bff56b70
Content hash
bff56b70
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02073
Status: valid/unmigrated Version: rel:R25-11#694180d9 Versionshistorie & Revisions (1 transition, 3 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_02073@rel:R25-11#694180d9
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#68cfe0ab2026-09-30
  • R24-11rel:R24-11#532b816e2026-10-14
  • R25-11rel:R25-11#694180d92026-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

دالة operator= [SWS_DM_02074] Upstream: RS_AP_00147

MultipleCondition & operator= (MultipleCondition &&)=delete;

Move assignment operator of MultipleCondition.

Header-Datei#include "ara/diag/multiple_condition.h"
Scopeclass ara::diag::MultipleCondition

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

Record
AUTOSAR/AP/record/SWS_DM_02074
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02074@rel:R25-11#1a32766f
Content hash
1a32766f
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02074
Status: valid/unmigrated Version: rel:R25-11#2e913496 Versionshistorie & Revisions (1 transition, 3 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_02074@rel:R25-11#2e913496
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#1378d07a2026-09-30
  • R24-11rel:R24-11#2e9134962026-10-14
  • R25-11rel:R25-11#2e9134962026-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

دالة ~MultipleCondition [SWS_DM_01737] Upstream: RS_AP_00134, RS_Diag_04192

~MultipleCondition () noexcept;

Destructor of class Condition .

Header-Datei#include "ara/diag/multiple_condition.h"
Scopeclass ara::diag::MultipleCondition
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_01737
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01737@rel:R25-11#6b97fc35
Content hash
6b97fc35
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01737
Status: valid/unmigrated Version: rel:R25-11#7547ee94 Versionshistorie & Revisions (1 transition, 4 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_01737@rel:R25-11#7547ee94
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#7e5bd5342026-09-30
  • R23-11rel:R23-11#19037ca62026-10-14
  • R24-11rel:R24-11#7547ee942026-10-14
  • R25-11rel:R25-11#7547ee942026-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