DEENESPTFRRUARHIKOZHNL

فئة ara::diag::CommunicationControl

[SWS_DM_00804] Upstream: RS_Diag_04278

class CommunicationControl {...};

0x28 CommunicationControl interface

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

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

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

يتيح للتطبيقات معالجة طلبات التشخيص لخدمة UDS ذات الرمز 0x28 للتحكم في الاتصال.

تُستخدم الفئة ara::diag::CommunicationControl في AUTOSAR Adaptive كواجهة لمعالجة خدمة UDS ذات الرمز 0x28 (CommunicationControl) لتبديل قنوات الاتصال [SWS_DM_00808]. وبعد إنشاء النسخة بالاعتماد على النموذج عبر InstanceSpecifier، يفعّل Offer() إعادة توجيه الطلبات بواسطة Diagnostic Manager، والتي تتم معالجتها لاحقًا بشكل غير متزامن عبر CommCtrlRequest [SWS_DM_00806]، [SWS_DM_00809]. وباعتبارها فئة وحيدة بشكل صارم، فإنها تستبعد عمليات النسخ والنقل، وتتطلب إلغاء التسجيل عبر StopOffer() قبل الإنهاء [SWS_DM_00810].

السياق

تُعرّف الفئة ara::diag::CommunicationControl الواجهة القياسية لمعالجة خدمة تشخيص UDS رقم 0x28 (CommunicationControl) في AUTOSAR Adaptive Platform AUTOSAR_AP_SWS_Diagnostics, ص. 70. وبصفتها فئة أساسية مجردة، فإنها تتوسط بين Diagnostic Manager (DM) ووظائف التشخيص الخاصة بالتطبيق، والتي يُتحكم من خلالها في إرسال أو استقبال رسائل اتصال معينة في شبكة المركبة. يشتق برنامج التطبيق من هذه الفئة ويقوم بتنفيذ الدالة الافتراضية الصرفة CommCtrlRequest لاستقبال تعليمات التحكم الواردة وتنفيذها [SWS_DM_00808]. يتم الربط بنموذج نظام AUTOSAR عبر ara::core::InstanceSpecifier، والذي يُشير بدوره إلى PortPrototype تابع لـ DiagnosticComControlInterface [SWS_DM_00806].

دورة الحياة

يتم إنشاء مثيل صراحةً عبر الدالة الإنشائية مع تحديد ara::core::InstanceSpecifier بالإضافة إلى نموذج التزامن ConcurrencyType (kConcurrent أو kNotConcurrent) [SWS_DM_00806]. تتمتع الفئة بدلالات فريدة صارمة، وهي غير قابلة للنسخ أو النقل: حيث تم حذف كل من دالة إنشاء النسخ [SWS_DM_01677] ودالة إنشاء النقل [SWS_DM_01678]، وكذلك معامل الإسناد بالنسخ [SWS_DM_01675] ومعامل الإسناد بالنقل [SWS_DM_01676] (=delete).

بعد الإنشاء، يظل المثيل غير نشط في البداية. ولا يُصرَّح لـ Diagnostic Manager بإعادة توجيه طلبات التشخيص الواردة إلى المعالج إلا من خلال استدعاء Offer() [SWS_DM_00809]. وعلى العكس من ذلك، يلغي StopOffer() هذا الإذن ويوقف إعادة التوجيه [SWS_DM_00810]. ويتم التدمير عبر دالة الهدم الافتراضية [SWS_DM_00807]. تفسير: من المحتمل أن يكون استدعاء StopOffer() مطلوباً قبل تدمير الكائن، وذلك حتى لا يُبقي Diagnostic Manager على عمليات إعادة توجيه مهجورة. سؤال Q-f67e35c9fea508d8 (مفتوح)

فيما يتعلق بالتزامن، فإن الدالة الإنشائية آمنة خيطياً [SWS_DM_00806]، بينما دالة الهدم [SWS_DM_00807]، وOffer() [SWS_DM_00809]، وStopOffer() [SWS_DM_00810] ليست آمنة خيطياً. ويكون تنفيذ CommCtrlRequest آمناً خيطياً بشكل مشروط (conditional): يحدد ConcurrencyType [SWS_DM_00808] المحدد في الدالة الإنشائية ما إذا كان يجب أن يكون التنفيذ آمناً خيطياً أم لا.

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

يتضمن التدفق المنتظم إنشاء مثيل للفئة المشتقة، وتسجيل الخدمة، والمعالجة غير المتزامنة لطلبات التشخيص، وإلغاء التسجيل النهائي:

  1. التهيئة: يُنشئ التطبيق مثيلاً للمعالج مع تحديد InstanceSpecifier وConcurrencyType المطلوب [SWS_DM_00806].
  2. عرض الخدمة: يتم تفعيل الخدمة لدى Diagnostic Manager عبر Offer() [SWS_DM_00809].
  3. معالجة الطلب: في حال ورود طلب UDS للخدمة 0x28 مع أي وظيفة فرعية، يستدعي Diagnostic Manager الدالة CommCtrlRequest [SWS_DM_00808]. وتشمل المعلمات ما يلي:
    • controlType (ComCtrlRequestParamsType): جميع معلمات طلب UDS بما في ذلك العناصر الاختيارية.
    • metaInfo (const MetaInfo&): معلومات وصفية تتعلق بطلب التشخيص.
    • cancellationHandler (CancellationHandler): يُستخدم للاستعلام عن الحالة عبر IsCanceled()، وكذلك لتسجيل دالة رد نداء للإلغاء عبر SetNotifier().
  4. الاستجابة: تكتمل المعالجة بشكل غير متزامن وتبلغ عن النتيجة عبر ara::core::Future<void> [SWS_DM_00808].
  5. إلغاء التسجيل: قبل إيقاف التشغيل أو الإنهاء، يوقف التطبيق عملية إعادة التوجيه باستخدام StopOffer() [SWS_DM_00810].
سير الاستدعاء والمعالجة لـ CommunicationControl (0x28)التطبيقCommunicationControlDiagnostic ManagerKonstruktor(specifier, concurrencyType)Offer()التسجيل لـ UDS 0x28التأكيد (أو kAlreadyOffered)Result<void>Use Case: Diagnoseanfrage bearbeitenCommCtrlRequest(controlType, metaInfo, cancellationHandler)Verarbeitung / Abfrage cancellationHandlerFuture<void> (نجاح أو DiagUdsNrcErrc)Use Case: Dienst deregistrierenStopOffer()Weiterleitung beenden

مخطط تسلسلي: التدفق النموذجي من التهيئة عبر معالجة طلب UDS 0x28 وحتى إلغاء التسجيل. المصادر: [SWS_DM_00806]، [SWS_DM_00808]، [SWS_DM_00809]، [SWS_DM_00810].

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

قد تؤدي حالات عدم الاتساق في نموذج AUTOSAR بالفعل أثناء الإنشاء إلى انتهاكات وقت التشغيل (Violations) [SWS_DM_00806]:

  • InstanceSpecifierMappingIntegrityViolation: يتعذر حل InstanceSpecifier في سياق الملف التنفيذي أو أنه لا يشير إلى PortPrototype.
  • PortInterfaceMappingViolation: الـ PortPrototype المحدد نوعه بواسطة DiagnosticComControlInterface لا يُشار إليه بواسطة DiagnosticServiceGenericMapping.
  • ProcessMappingViolation: يوجد مرجع مثيل مطابق، ولكن لا توجد عملية منمذجة تتطابق مع العملية الحالية.
  • InstanceSpecifierAlreadyInUseViolation: المعرّف مستخدم بالفعل بواسطة مثيل آخر في نفس العملية.

أثناء التشغيل المستمر، يُبلّغ Offer() عبر القيمة المرجعة ara::core::Result<void> عن الخطأ DiagOfferErrc::kAlreadyOffered في حال كانت الخدمة قد عُرضت سابقاً وما زالت نشطة [SWS_DM_00809]. وإذا تعذر تلبية طلب التشخيص وظيفياً في CommCtrlRequest، تُرجع الدالة عبر ara::core::Future<void> كود استجابة سلبية (NRC) وفقاً للمواصفة ISO 14229-1 باستخدام DiagUdsNrcErrc [SWS_DM_00808].

تم إعداد دليل الفئات هذا بواسطة مساعد إشراف يعمل بالذكاء الاصطناعي استناداً إلى AUTOSAR Adaptive R25-11.

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

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

2

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

3

المعاملات

1

الأنواع المضمنة

1

مخطط الفئة

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

G nara__diag__CommunicationControl599 CommunicationControl + CommunicationControl() + operator=() + ~CommunicationControl() + CommCtrlRequest() + Offer() + StopOffer()

عرض التفاصيل

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

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

Constructor of CommunicationControl.

التحميلات الزائدة CommunicationControl 3
explicit CommunicationControl (const ara::core::InstanceSpecifier &specifier, ConcurrencyType concurrencyType) noexcept; SWS_DM_00806
CommunicationControl (CommunicationControl &)=delete; SWS_DM_01677
CommunicationControl (CommunicationControl &&) noexcept=delete; SWS_DM_01678

Destructor of class CommunicationControl.

virtual ~CommunicationControl () noexcept;

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

Called for CommunicationControl (0x28) with any subfunction as subfunction value is part of the argument list.

virtual ara::core::Future< void > CommCtrlRequest (ComCtrlRequest ParamsType controlType, const MetaInfo &metaInfo, CancellationHandler cancellationHandler) noexcept=0;
Offer دالة

This Offer will enable the DM to forward request messages to this handler.

ara::core::Result< void > Offer () noexcept;
StopOffer دالة

This StopOffer will disable the forwarding of request messages from DM.

void StopOffer () noexcept;

المعاملات

operator= دالة 2

CommunicationControl shall be a single not assignable instance.

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

الأنواع المضمنة

توثيق الدوال

دالة CommCtrlRequest [SWS_DM_00808] Upstream: RS_AP_00119, RS_AP_00138, RS_Diag_04170, RS_Diag_04278

virtual ara::core::Future< void > CommCtrlRequest (ComCtrlRequest ParamsType controlType, const MetaInfo &metaInfo, CancellationHandler cancellationHandler) noexcept=0;

Called for CommunicationControl (0x28) with any subfunction as subfunction value is part of the argument list.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 8fa21d673414 المصدر أسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

يتم استدعاء الطريقة الافتراضية الصرفة ara::diag::CommunicationControl::CommCtrlRequest ([SWS_DM_00808]) بواسطة مثيل Diagnostic Server لمعالجة طلبات التشخيص لخدمة UDS ذات الرمز 0x28 (CommunicationControl) ([SWS_DM_00865]، SWS Diagnostics §7.3.2.8.10 «Service 0x28 – CommunicationControl»). يتم تمرير جميع معلمات طلب UDS بما في ذلك الوظيفة الفرعية مجمعة عبر الهيكل controlType ([SWS_DM_00808]). يعيد الاستدعاء ara::core::Future<void>، مما يجعل المعالجة تتم بشكل غير متزامن. عبر المعلمة cancellationHandler، يمكن للتطبيق الاستعلام عن حالة الإلغاء بواسطة IsCanceled() أو تسجيل رد اتصال لإلغاء المحادثة عبر SetNotifier() ([SWS_DM_00808]).

إذا أكمل التطبيق المعالجة دون خطأ، يرسل Diagnostic Server استجابة UDS إيجابية ([SWS_DM_00199]). في حال حدوث خطأ، يجب الإبلاغ عنه كرمز استجابة سلبية (NRC) مناسب وفقاً للمعيار ISO 14229-1 عبر ara::diag::DiagUdsNrcErrc ([SWS_DM_00808])؛ ويرد الخادم على طلب الخدمة بعد ذلك سلبياً برمز الخطأ هذا ([SWS_DM_00866]). يرفض الخادم الوظائف الفرعية غير المهيأة مسبقاً برمز NRC 0x12 (kSubFunctionNotSupported) ([SWS_DM_00252]).

تم التصريح عن الطريقة بـ noexcept وهي آمنة من الاستثناءات ([SWS_DM_00808]، SWS Diagnostics §8.7.1.1.3.1 «CommCtrlRequest»). وأمان مؤشرات الترابط الخاص بها مشروط: يتم تحديد ما إذا كان يجب تنفيذ الدالة بأمان مؤشرات الترابط عبر معلمة المُنشئ ConcurrencyType للمثيل ([SWS_DM_00808]). يُرجح أن يحدث التبديل الفعلي لأنماط الاتصال بشكل غير متزامن في الخلفية قبل حل الـ Future. سؤال Q-8a8e1bd2585fa859 (مفتوح)

تم إنشاء هذا النص ومراجعته بواسطة ذكاء اصطناعي. تستند جميع البيانات حصرياً إلى وثائق مواصفات AUTOSAR R25-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

Header-Datei#include "ara/diag/communication_control.h"
Scopeclass ara::diag::CommunicationControl
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
controlTypeAll UDS request parameters packed into a structure since it holds optional elements
metaInfoMetaInfo of the request.
cancellationHandlerThis parameter is used to • Query the current cancellation status by calling cancellationHandler.IsCanceled. Returns TRUE in case, the current conversation has been cancelled and FALSE otherwise. • Register a notifier function by calling cancellationHandler.SetNotifier. The registered notifier is called if the current conversation is cancelled.

Rückgabewert

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

Fehler

FehlercodeBeschreibung
Please use an applicable NRC, as defined in ISO 14229-1, using DiagUdsNrcErrc.

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

Record
AUTOSAR/AP/record/SWS_DM_00808
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00808@rel:R25-11#1486490d
Content hash
1486490d
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00808
Status: valid/unmigrated Version: rel:R25-11#727dd05b Versionshistorie & Revisions (1 transition, 8 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_00808@rel:R25-11#727dd05b
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#424df4222026-09-30
  • R19-11rel:R19-11#70e59b9a2026-10-14
  • R20-11rel:R20-11#35c65b602026-10-14
  • R21-11rel:R21-11#aa3f917f2026-10-14
  • R22-11rel:R22-11#21c3e83e2026-10-14
  • R23-11rel:R23-11#62deb4992026-10-14
  • R24-11rel:R24-11#f7c711472026-10-14
  • R25-11rel:R25-11#727dd05b2026-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

دالة CommunicationControl [SWS_DM_00806] Upstream: RS_AP_00137, RS_Diag_04278, RS_AP_00170, RS_AP_00171, RS_AP_00172, RS_AP_00173

explicit CommunicationControl (const ara::core::InstanceSpecifier &specifier, ConcurrencyType concurrencyType) noexcept;

Constructor of CommunicationControl.

Header-Datei#include "ara/diag/communication_control.h"
Scopeclass ara::diag::CommunicationControl
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 typed by a pingViolation DiagnosticComControlInterface needs to be referenced by a DiagnosticServiceGenericMapping. 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 DiagnosticComControlInterface.
concurrencyTypeSpecifies if the interface is implemented as thread safe ( kConcurrent) or non-thread safe (kNotConcurrent)..

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

Record
AUTOSAR/AP/record/SWS_DM_00806
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00806@rel:R25-11#517a083a
Content hash
517a083a
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00806
Status: valid/unmigrated Version: rel:R25-11#b906b7ef Versionshistorie & Revisions (1 transition, 8 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_00806@rel:R25-11#b906b7ef
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#ca8fdfa92026-09-30
  • R19-11rel:R19-11#d7fe0baa2026-10-14
  • R20-11rel:R20-11#036e26a62026-10-14
  • R21-11rel:R21-11#036e26a62026-10-14
  • R22-11rel:R22-11#b571889a2026-10-14
  • R23-11rel:R23-11#934addf22026-10-14
  • R24-11rel:R24-11#726b2cfe2026-10-14
  • R25-11rel:R25-11#b906b7ef2026-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

دالة CommunicationControl [SWS_DM_01677] Upstream: RS_AP_00147

CommunicationControl (CommunicationControl &)=delete;

CommunicationControl shall be a single not copy-able instance.

Header-Datei#include "ara/diag/communication_control.h"
Scopeclass ara::diag::CommunicationControl

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

Record
AUTOSAR/AP/record/SWS_DM_01677
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01677@rel:R25-11#a24b9d42
Content hash
a24b9d42
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01677
Status: valid/unmigrated Version: rel:R25-11#5a19d864 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_01677@rel:R25-11#5a19d864
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#e585da4b2026-09-30
  • R23-11rel:R23-11#0dccfa442026-10-14
  • R24-11rel:R24-11#5a19d8642026-10-14
  • R25-11rel:R25-11#5a19d8642026-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

دالة CommunicationControl [SWS_DM_01678] Upstream: RS_AP_00147

CommunicationControl (CommunicationControl &&) noexcept=delete;

Move constructor of CommunicationControl.

Header-Datei#include "ara/diag/communication_control.h"
Scopeclass ara::diag::CommunicationControl

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

Record
AUTOSAR/AP/record/SWS_DM_01678
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01678@rel:R25-11#d16bbf27
Content hash
d16bbf27
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01678
Status: valid/unmigrated Version: rel:R25-11#6048a835 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_01678@rel:R25-11#6048a835
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#2554e0632026-09-30
  • R23-11rel:R23-11#dd6e581d2026-10-14
  • R24-11rel:R24-11#6048a8352026-10-14
  • R25-11rel:R25-11#6048a8352026-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

دالة Offer [SWS_DM_00809] Upstream: RS_AP_00119, RS_AP_00139, RS_Diag_04278

ara::core::Result< void > Offer () noexcept;

This Offer will enable the DM to forward request messages to this handler.

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

الاستخدام

تتيح الطريقة Offer للفئة ara::diag::CommunicationControl (ملف الترويسة #include "ara/diag/communication_control.h") لـ Diagnostic Management (DM) إعادة توجيه طلبات التشخيص الواردة للتحكم في الاتصال إلى مثيل المعالج الموفر [SWS_DM_00809]. يتم الاستدعاء بدون معاملات ويُعيد النوع ara::core::Result<void> [SWS_DM_00809]. ونظرًا لعدم استخدام ara::core::Future أو آلية استدعاء رجعي (Callback)، فيجب تفسير التنفيذ على أنه متزامن.

معالجة الأخطاء

في حالة النجاح، تُعيد الدالة ara::core::Result فارغًا. وإذا كانت الخدمة قد عُرضت بالفعل لهذا المثيل من قبل، يفشل الاستدعاء ويُعيد رمز الخطأ DiagOfferErrc::kAlreadyOffered مع دلالات التراجع [SWS_DM_00809]. تتطابق حالة الخطأ هذه مع المعالجة الموحدة للأخطاء لعروض التشخيص في Adaptive AUTOSAR، كما هو محدد على سبيل المثال في DiagErrc [SWS_DM_00514] وكذلك DiagReportingErrc [SWS_DM_00560].

التزامن والقيود

تم التصريح عن الدالة بأنها noexcept وآمنة من الاستثناءات (exception safe)، ولكنها صراحة غير آمنة لخيوط المعالجة (not thread-safe) [SWS_DM_00809]. ولذلك يجب مزامنة الاستدعاءات على نفس المثيل بواسطة التطبيق المستدعي لمنع حالات التسابق (Race Conditions) أثناء التسجيل.

تفاعل

يُعد نمط التسجيل المحقق بواسطة Offer أسلوبًا برمجيًا مركزيًا في Diagnostic Management ويُستخدم باتساق عبر المعالجات، على سبيل المثال في الإجراءات الروتينية [SWS_DM_00557]، وخدمات UDS العامة [SWS_DM_00619]، وواجهات الوصول الأمني (Security Access) [SWS_DM_00766]، وكذلك خدمات الرفع والتنزيل [SWS_DM_00792] [SWS_DM_00802]. ويجب الانتباه في هذا الصدد إلى الفصل عن البنية التحتية للاتصالات: كما هو موضح في AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 «Monitors»، فإن هذا تنفيذ خاص بالتشخيص ولا يجوز الخلط بينه وبين ara::com.

تم تنسيق ملاحظة الاستخدام هذه بواسطة ذكاء اصطناعي للإصدار R25-11 وتستند حصريًا إلى وثائق مواصفات AUTOSAR Adaptive.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

Header-Datei#include "ara/diag/communication_control.h"
Scopeclass ara::diag::CommunicationControl
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Rückgabewert

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

Fehler

FehlercodeBeschreibung
DiagOfferErrc::kAlreadyOfferedrollback_semantics The service is already offered.

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

Record
AUTOSAR/AP/record/SWS_DM_00809
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00809@rel:R25-11#0d634b36
Content hash
0d634b36
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00809
Status: valid/unmigrated Version: rel:R25-11#5af0f990 Versionshistorie & Revisions (1 transition, 8 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_00809@rel:R25-11#5af0f990
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#a85f13212026-09-30
  • R19-11rel:R19-11#9f02ccdb2026-10-14
  • R20-11rel:R20-11#2be7c40f2026-10-14
  • R21-11rel:R21-11#6e3abbe82026-10-14
  • R22-11rel:R22-11#65d2217e2026-10-14
  • R23-11rel:R23-11#bbb1cf592026-10-14
  • R24-11rel:R24-11#246db6952026-10-14
  • R25-11rel:R25-11#5af0f9902026-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

دالة StopOffer [SWS_DM_00810] Upstream: RS_Diag_04278

void StopOffer () noexcept;

This StopOffer will disable the forwarding of request messages from DM.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 5bbcf442e7ca المصدر أسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

تُستخدم الدالة العضو StopOffer للفئة ara::diag::CommunicationControl لإلغاء تفعيل إعادة توجيه رسائل طلبات التشخيص (Request Messages) الواردة من Diagnostic Management (DM) إلى النسخة [SWS_DM_00810]. ويتم تضمين الواجهة عبر ملف الترويسة ara/diag/communication_control.h AUTOSAR_AP_SWS_Diagnostics §8.7.1.1.3.3 «StopOffer». ولا تقبل الطريقة أي معلمات تمرير وليس لها قيمة إرجاع (void).

فيما يتعلق بمعالجة الأخطاء، تم التصريح عن الدالة بـ noexcept وتحديدها كآمنة من الاستثناءات (exception safe) [SWS_DM_00810]. ولا يتم إرجاع رموز أخطاء ولا إطلاق رسائل خطأ محددة (مثل أحداث DEM أو DET) في حالة الخطأ.

فيما يتعلق بالتزامن، تم تصنيف StopOffer صراحةً على أنها غير آمنة خيطياً (not thread-safe) [SWS_DM_00810]. وبالتالي، يجب مزامنة الاستدعاءات المتزامنة على نفس النسخة من CommunicationControl من جانب التطبيق. علاوة على ذلك، يُرجح بشكل منطقي ألا يتم الاستدعاء إلا بعد تقديم سابق للخدمة، على سبيل المثال عندما لا يكون التحكم في الاتصال متاحاً مؤقتاً أو عند إيقاف تشغيل التطبيق. سؤال Q-c9079c49581363f7 (مفتوح)

يتبع المفهوم المخطط القياسي لخدمات التشخيص التكيفية: كما تستخدم أيضاً الفئات ذات الصلة مثل ara::diag::Authentication [SWS_DM_01131]، وara::diag::DownloadService [SWS_DM_00793]، وara::diag::EcuResetRequest [SWS_DM_01017]، وara::diag::GenericUDSService [SWS_DM_00620] StopOffer بدلالات مماثلة. وكما هو موضح في المواصفة، على الرغم من أن التسمية مستوحاة من تقديم الخدمة من ara::com، إلا أنها تمثل تنفيذاً مستقلاً لواجهات التشخيص ولا يجوز الخلط بينهما AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 «Monitors».

تم إنشاء ملاحظة الاستخدام هذه بواسطة ذكاء اصطناعي بناءً على مواصفة AUTOSAR Adaptive R25-11.

دليل المنفِّذ قيد الإعداد (التعقيد I2)

Header-Datei#include "ara/diag/communication_control.h"
Scopeclass ara::diag::CommunicationControl
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Rückgabewert

TypBeschreibung
None

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

Record
AUTOSAR/AP/record/SWS_DM_00810
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00810@rel:R25-11#ebfb62c5
Content hash
ebfb62c5
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00810
Status: valid/unmigrated Version: rel:R25-11#c84b3f30 Versionshistorie & Revisions (1 transition, 8 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_00810@rel:R25-11#c84b3f30
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#e7d48b8a2026-09-30
  • R19-11rel:R19-11#28eab4cf2026-10-14
  • R20-11rel:R20-11#ee8709992026-10-14
  • R21-11rel:R21-11#ff87dbf12026-10-14
  • R22-11rel:R22-11#ae33a1b32026-10-14
  • R23-11rel:R23-11#4f252d562026-10-14
  • R24-11rel:R24-11#be84a84f2026-10-14
  • R25-11rel:R25-11#c84b3f302026-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_01675] Upstream: RS_AP_00147

CommunicationControl & operator= (CommunicationControl &)=delete;

CommunicationControl shall be a single not assignable instance.

Header-Datei#include "ara/diag/communication_control.h"
Scopeclass ara::diag::CommunicationControl

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

Record
AUTOSAR/AP/record/SWS_DM_01675
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01675@rel:R25-11#cc16edb8
Content hash
cc16edb8
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01675
Status: valid/unmigrated Version: rel:R25-11#6b33e9a5 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_01675@rel:R25-11#6b33e9a5
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#732d4ac82026-09-30
  • R23-11rel:R23-11#d435003d2026-10-14
  • R24-11rel:R24-11#6b33e9a52026-10-14
  • R25-11rel:R25-11#6b33e9a52026-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_01676] Upstream: RS_AP_00147

CommunicationControl & operator= (CommunicationControl &&)=delete;

Move assignment operator of CommunicationControl.

Header-Datei#include "ara/diag/communication_control.h"
Scopeclass ara::diag::CommunicationControl

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

Record
AUTOSAR/AP/record/SWS_DM_01676
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01676@rel:R25-11#e950028a
Content hash
e950028a
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01676
Status: valid/unmigrated Version: rel:R25-11#3330d235 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_01676@rel:R25-11#3330d235
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#cfa3ff932026-09-30
  • R23-11rel:R23-11#fd2c0d6a2026-10-14
  • R24-11rel:R24-11#3330d2352026-10-14
  • R25-11rel:R25-11#3330d2352026-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

دالة ~CommunicationControl [SWS_DM_00807] Upstream: RS_AP_00134, RS_Diag_04278

virtual ~CommunicationControl () noexcept;

Destructor of class CommunicationControl.

Header-Datei#include "ara/diag/communication_control.h"
Scopeclass ara::diag::CommunicationControl
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_00807
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00807@rel:R25-11#373936b3
Content hash
373936b3
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00807
Status: valid/unmigrated Version: rel:R25-11#fef30cdd Versionshistorie & Revisions (1 transition, 8 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_00807@rel:R25-11#fef30cdd
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#0d1c8e412026-09-30
  • R19-11rel:R19-11#50d5e63a2026-10-14
  • R20-11rel:R20-11#83d511c52026-10-14
  • R21-11rel:R21-11#3df09df82026-10-14
  • R22-11rel:R22-11#cf774c8f2026-10-14
  • R23-11rel:R23-11#b59cefc12026-10-14
  • R24-11rel:R24-11#058998e02026-10-14
  • R25-11rel:R25-11#fef30cdd2026-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