دالة ConfigureMonitor [SWS_DM_01696] Upstream: RS_AP_00137, RS_Diag_04179, RS_AP_00121
ara::core::Result< void > ConfigureMonitor (MonitorHandleType monitor Handle, InitMonitorNotifier initMonitor, std::function< std::int8_t()> getFaultDetectionCounter) noexcept;
Configures a monitor with Monitor-internal debouncing. Any overloaded ConfigureMonitor shall be only called once per monitor. The monitor can only be used after this initialisation step.
الاستخدام
تقوم الدالة ara::diag::MultipleMonitor::ConfigureMonitor بتهيئة مرقاب تشخيصي لإزالة الارتداد داخليًا ضمن المرقاب [SWS_DM_01696]. وعبر المعامل monitorHandle يتم تحديد المرقاب المراد تهيئته، بينما يتم تسجيل دالة استدعاء راجع (Notifier-Callback) لإعادة التهيئة باستخدام initMonitor ودالة للاستعلام عن قيمة عداد الخطأ الحالية (FDC) باستخدام getFaultDetectionCounter [SWS_DM_01696]. ويتم التنفيذ بشكل متزامن ويُرجع ara::core::Result<void> AUTOSAR_AP_SWS_Diagnostics §8.44.2.1.3.4 «ConfigureMonitor».
معالجة الأخطاء والتزامن
في حالة حدوث خطأ، يتم إرجاع نتيجة الخطأ DiagErrc::kInvalidArgument [SWS_DM_01696]. ويُتوقع أن يحدث هذا بشكل خاص عند تمرير مؤشرات دوال غير صالحة أو وجود حالات غير متوافقة أثناء إزالة الارتداد الداخلي (تفسير). سؤال Q-3de0f2b0cc427ef3 (مفتوح) تم تحديد العملية بأنها noexcept وكذلك آمنة من حيث الاستثناءات (exception safe)، إلا أنه تم تمييزها صراحة بأنها غير آمنة لخيوط المعالجة (not thread-safe) [SWS_DM_01696]. لذلك، يجب مزامنة الاستدعاءات على نفس مثيل المرقاب من جانب التطبيق.
الترتيب والتفاعل
لا يجوز استدعاء كل تحميل زائد لـ ConfigureMonitor إلا مرة واحدة فقط لكل مرقاب؛ ولا يكون المرقاب جاهزًا للاستخدام إلا بعد خطوة التهيئة هذه [SWS_DM_01696]. وفي حالة إزالة الارتداد داخليًا ضمن المرقاب، يعالج تطبيق المرقاب التشخيصي منطق إزالة الارتداد بشكل مستقل وينقل النتائج النهائية فقط إلى Diagnostic Management AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.5.3 «Monitor-internal debouncing». وتتوفر لآليات إزالة الارتداد الأخرى تحميلات زائدة بديلة للمراقبات المعتمدة على الوقت [SWS_DM_01697]، أو المعتمدة على العداد [SWS_DM_01702]، أو المراقبات غير المزالة ارتدادها [SWS_DM_01973].
تم إنشاء ملاحظة الاستخدام هذه تلقائياً استناداً إلى المواصفة.
دليل المنفِّذ قيد الإعداد (التعقيد I2)
| Header-Datei | #include "ara/diag/multiple_monitor.h" |
|---|---|
| Scope | class ara::diag::MultipleMonitor |
| Exception-Sicherheit | exception safe |
| Thread-Sicherheit | not thread-safe |
Parameter (in)
| Parameter | Beschreibung |
|---|---|
| monitorHandle | Identifies the requested monitor |
| initMonitor | Possibility to register an InitMonitor callback |
| getFaultDetectionCounter | Possibility to register a function to get the current FDC for this event. |
Rückgabewert
| Typ | Beschreibung |
|---|---|
| ara::core::Result< void > | Returns nothing or an error. |
Fehler
| Fehlercode | Beschreibung |
|---|---|
| DiagErrc::kInvalidArgument | rollback_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_01696- Status
- valid/unmigrated
- Version
AUTOSAR/AP/record/SWS_DM_01696@rel:R25-11#f4a7d137- Content hash
f4a7d137- Source
- https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01696
Status: valid/unmigrated
Version: rel:R25-11#8434f254
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_01696@rel:R25-11#8434f254
Recorded Revisions (4):
- R25-11
rel:R25-11#c62b40112026-09-30 - R23-11
rel:R23-11#daa241aa2026-10-14 - R24-11
rel:R24-11#b8bb06ec2026-10-14 - R25-11
rel:R25-11#8434f2542026-10-14 active
Requirement Text as-of this release:
Curation Decisions:
Reachable Artifacts & Dependents:
| Date | Actor | Transition | Reason / Rationale | Campaign |
|---|---|---|---|---|
| 2026-08-13 | tool | none → valid/unmigrated | mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record | 2026-08-13-status-backfill |
gemini-3.8-flash-low· 2026-10-13 · الأصل الألماني