DEENESPTFRRUARHIKOZHNL

بنية ara::diag::CounterBased

[SWS_DM_00538] Upstream: RS_Diag_04068

struct CounterBased {...};

Represents the parameters for counter-based debouncing.

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

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

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

يقوم بتهيئة قيم العتبات، وأحجام الخطوات، وقيم القفز لإزالة الارتداد المعتمدة على العداد للشاشات.

يحدد الهيكل ara::diag::CounterBased قيم العتبات، وأحجام الخطوات، ومعلمات القفز لإزالة الارتداد المعتمدة على العداد لأحداث التشخيص [SWS_DM_00538]. ينشئ التطبيق كائنًا منه ويمرره إلى منشئ ara::diag::Monitor لتحديد معايير تأهيل الخطأ والحالة السليمة [SWS_DM_00549]. وتستخدم Diagnostic Management هذه المعلمات لتحديث العداد، ما لم تكن هناك بيانات إزالة ارتداد ذات أولوية مخزنة في Diagnostic Extract (DEXT).

السياق

يمثل الهيكل ara::diag::CounterBased معلمات التهيئة لإزالة الارتداد المعتمدة على العداد لأحداث التشخيص [SWS_DM_00538] وفقًا لمواصفة AUTOSAR Adaptive Platform SWS Diagnostics §7.3.4.1.5.1 «Counter-based debouncing». وداخل النظام الفرعي للتشخيص، يُستخدم لتبادل معلمات إزالة الارتداد بين تطبيق الشاشة المُستخدِم وDiagnostic Management (DM).

يتم التفاعل أساسًا عبر أربعة أطراف للواجهة:

CounterBasedContext Application Diagnostic Application CounterBased ara::diag::CounterBased Application->CounterBased konfiguriert Monitor ara::diag::Monitor Application->Monitor erzeugt CounterBased->Monitor uebergibt Parameter DM Diagnostic Management Monitor->DM meldet Aktionen DEXT DEXT Konfiguration DEXT->DM konfiguriert vorrangig

مخطط السياق: التفاعل بين التطبيق والشاشة وCounterBased وDiagnostic Management وDEXT. المصادر: [SWS_DM_00538]، [SWS_DM_00549]، [SWS_DM_01099]، [SWS_DM_01101].

دورة الحياة

كهيكل بيانات C++ (struct) SWS Diagnostics §8.41.2 «Struct: CounterBased»، يتم إنشاء CounterBased كحاوية قيم صرفة بواسطة مكون البرمجيات المُستخدِم على المكدس (Stack) أو الكومة (Heap). وتقتصر دورة حياته عادةً على مرحلة التهيئة والإعداد الأولي قبل إنشاء ara::diag::Monitor.

بعد تحديد السمات، يُمرر الهيكل بالقيمة إلى منشئ Monitor [SWS_DM_00549]. ولا يحتفظ الهيكل نفسه بأي حالة ديناميكية داخلية ولا يمتلك آلة حالة؛ وتقتصر إدارة العداد المستمرة حصريًا على Diagnostic Management. وبما أن CounterBased مصمم كهيكل بيانات غير نشط ولا يمتلك آليات مزامنة داخلية، فإن التفسير يقتضي أن تتم التهيئة محليًا ضمن مؤشر الترابط أو بشكل متزامن قبل التمرير إلى الشاشة.

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

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

  1. ينشئ التطبيق كائنًا من CounterBased ويحدد القيم الحدية: failedThreshold لتأهيل الخطأ [SWS_DM_00621] وpassedThreshold لاكتشاف الحالة السليمة [SWS_DM_00622].
  2. تُعرّف أحجام الخطوات عبر failedStepsize لحالات الخطأ المُبلَّغ عنها [SWS_DM_00623] وpassedStepsize لبلاغات الحالة السليمة [SWS_DM_00624].
  3. اختياريًا، تتم تهيئة التعديلات القافزة: يتم تفعيل القفز إلى قيمة خطأ دنيا عبر useJumpToFailed [SWS_DM_00627] وfailedJumpValue [SWS_DM_00625]. وبالمثل، تتحكم useJumpToPassed [SWS_DM_00628] وpassedJumpValue [SWS_DM_00626] في القفزات باتجاه الحالة السليمة.
  4. يُمرر الهيكل بعد ملئه إلى منشئ Monitor [SWS_DM_00549]. وما لم تكن هناك تعريفات في DEXT، يستخدم DM هذه القيم [SWS_DM_01101].
  5. أثناء التشغيل، تبلغ المراقبة عن إجراءات الشاشة عبر ReportMonitorAction SWS Diagnostics §7.3.4.1.5.1 «Internal debounce counter incrementation». وعند kPrefailed، يتحقق DM من أي شروط قفز [SWS_DM_00022] ويزيد العداد بمقدار failedStepsize [SWS_DM_00875].
  6. إذا وصل العداد إلى failedThreshold، يصنف DM الحدث على أنه kFinallyDefective [SWS_DM_00024]. وينطبق الأمر نفسه على بلاغات الحالة السليمة بواسطة passedStepsize [SWS_DM_00876].
التهيئة الأولية وإزالة الارتداد المعتمدة على العدادApplicationCounterBasedMonitorDiagnostic ManagementUse Case: تهيئة المعلمات وإنشاء المراقبتعيين العتبات والخطوات وقيم القفزMonitor(specifier, notifier, counterBased)altDEXT-Parameter vorhandenDEXT-Werte nutzen (CounterBased ignoriert)لا تتوفر معلمات DEXTCounterBased-Werte verwendenUse Case: Laufzeit-EntprellungReportMonitorAction(kPrefailed)Ereignisstatus aktualisierenoptuseJumpToFailed == true && Zaehler < failedJumpValueتعيين العداد على failedJumpValueZaehler um failedStepsize inkrementierenoptZaehler >= failedThresholdحصر العداد عند failedThresholdStatus kFinallyDefective setzen

مخطط التسلسل: المسار بدءًا من تهيئة المعلمات وإعداد الشاشة الأولي وحتى تأهيل العداد. المصادر: [SWS_DM_00549]، [SWS_DM_00875]، [SWS_DM_00022]، [SWS_DM_00024].

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

عند استخدام CounterBased، يجب مراعاة العديد من الشروط الحدية وقواعد الأولوية:

  • تعارض أولوية DEXT: إذا وُجدت معلمات إزالة الارتداد في DEXT، يتجاهل DM المعلمات المحددة في CounterBased تمامًا [SWS_DM_01099]. ويحدث خطأ في التهيئة إذا توقع مطورو التطبيق تغييرًا ديناميكيًا في المعلمات عبر المنشئ، على الرغم من نشاط قيم DEXT الثابتة.
  • غياب قيم DEXT: إذا لم تتوفر أي بيانات في DEXT، يعتمد DM إلزاميًا على توفير المنشئ لكائن CounterBased صالح [SWS_DM_01101].
  • تجاوز العتبة: إذا ارتفع عداد إزالة الارتداد الداخلي نتيجة إضافة failedStepsize فوق قيمة العتبة failedThreshold، يعيد DM ضبط العداد بدقة إلى قيمة العتبة هذه ويؤهل الخلل [SWS_DM_00024]، [SWS_DM_00875].
  • منطق القفز المشروط: إذا تم تعيين useJumpToFailed، فلا يتم تنفيذ القفز إلى failedJumpValue إلا إذا كانت قيمة العداد قبل الزيادة أصغر تمامًا من failedJumpValue [SWS_DM_00022]. وبالمثل بالنسبة لـ useJumpToPassed، يجب أن يكون العداد أكبر من passedJumpValue [SWS_DM_00023].

يستند هذا الدليل إلى مواصفة AUTOSAR Adaptive Platform R25-11 ويلخص متطلبات إزالة الارتداد المعتمدة على العداد.

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

مخطط الفئة

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

G nara__diag__CounterBased25 «struct» CounterBased + failedJumpValue + failedStepsize + failedThreshold + passedJumpValue + passedStepsize + passedThreshold + useJumpToFailed + useJumpToPassed

عرض التفاصيل

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

الثوابت

failedJumpValue متغير

failed to jump value

std::int16_t failedJumpValue;
failedStepsize متغير

Stepsize per pre-failed report.

std::uint16_t failedStepsize;
failedThreshold متغير

Threshold until qualified failed.

std::int16_t failedThreshold;
passedJumpValue متغير

passed to jump value

std::int16_t passedJumpValue;
passedStepsize متغير

Stepsize per pre-passed report.

std::uint16_t passedStepsize;
passedThreshold متغير

Threshold until qualified passed.

std::int16_t passedThreshold;
useJumpToFailed متغير

is jump supported

bool useJumpToFailed;
useJumpToPassed متغير

is jump supported

bool useJumpToPassed;

توثيق الثوابت / المتغيرات

متغير failedJumpValue [SWS_DM_00625] Upstream: RS_Diag_04068

std::int16_t failedJumpValue;

failed to jump value

Header-Datei#include "ara/diag/monitor_types.h"
Scopestruct ara::diag::CounterBased
SymbolfailedJumpValue
Typstd::int16_t

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

Record
AUTOSAR/AP/record/SWS_DM_00625
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00625@rel:R25-11#d83e1b52
Content hash
d83e1b52
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00625
Status: valid/unmigrated Version: rel:R25-11#dce9c004 Versionshistorie & Revisions (1 transition, 7 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_00625@rel:R25-11#dce9c004
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#3d8ec9702026-09-30
  • R20-11rel:R20-11#f08528012026-10-14
  • R21-11rel:R21-11#3d8d66772026-10-14
  • R22-11rel:R22-11#4e10bb362026-10-14
  • R23-11rel:R23-11#dce9c0042026-10-14
  • R24-11rel:R24-11#dce9c0042026-10-14
  • R25-11rel:R25-11#dce9c0042026-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

متغير failedStepsize [SWS_DM_00623] Upstream: RS_Diag_04068

std::uint16_t failedStepsize;

Stepsize per pre-failed report.

Header-Datei#include "ara/diag/monitor_types.h"
Scopestruct ara::diag::CounterBased
SymbolfailedStepsize
Typstd::uint16_t

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

Record
AUTOSAR/AP/record/SWS_DM_00623
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00623@rel:R25-11#55c5a4ac
Content hash
55c5a4ac
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00623
Status: valid/unmigrated Version: rel:R25-11#dafec4f4 Versionshistorie & Revisions (1 transition, 7 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_00623@rel:R25-11#dafec4f4
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#d4a093e42026-09-30
  • R20-11rel:R20-11#d8c07df52026-10-14
  • R21-11rel:R21-11#00dbada62026-10-14
  • R22-11rel:R22-11#ad00343e2026-10-14
  • R23-11rel:R23-11#dafec4f42026-10-14
  • R24-11rel:R24-11#dafec4f42026-10-14
  • R25-11rel:R25-11#dafec4f42026-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

متغير failedThreshold [SWS_DM_00621] Upstream: RS_Diag_04068

std::int16_t failedThreshold;

Threshold until qualified failed.

Header-Datei#include "ara/diag/monitor_types.h"
Scopestruct ara::diag::CounterBased
SymbolfailedThreshold
Typstd::int16_t

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

Record
AUTOSAR/AP/record/SWS_DM_00621
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00621@rel:R25-11#f3753993
Content hash
f3753993
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00621
Status: valid/unmigrated Version: rel:R25-11#08353fef Versionshistorie & Revisions (1 transition, 7 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_00621@rel:R25-11#08353fef
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#c3037cc02026-09-30
  • R20-11rel:R20-11#25e7cfaa2026-10-14
  • R21-11rel:R21-11#196f4ac32026-10-14
  • R22-11rel:R22-11#6af287f12026-10-14
  • R23-11rel:R23-11#08353fef2026-10-14
  • R24-11rel:R24-11#08353fef2026-10-14
  • R25-11rel:R25-11#08353fef2026-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

متغير passedJumpValue [SWS_DM_00626] Upstream: RS_Diag_04068

std::int16_t passedJumpValue;

passed to jump value

Header-Datei#include "ara/diag/monitor_types.h"
Scopestruct ara::diag::CounterBased
SymbolpassedJumpValue
Typstd::int16_t

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

Record
AUTOSAR/AP/record/SWS_DM_00626
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00626@rel:R25-11#31ccc072
Content hash
31ccc072
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00626
Status: valid/unmigrated Version: rel:R25-11#ced89aeb Versionshistorie & Revisions (1 transition, 7 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_00626@rel:R25-11#ced89aeb
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#48fa9fd72026-09-30
  • R20-11rel:R20-11#bca12a352026-10-14
  • R21-11rel:R21-11#ffcfafd22026-10-14
  • R22-11rel:R22-11#06c86bc12026-10-14
  • R23-11rel:R23-11#ced89aeb2026-10-14
  • R24-11rel:R24-11#ced89aeb2026-10-14
  • R25-11rel:R25-11#ced89aeb2026-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

متغير passedStepsize [SWS_DM_00624] Upstream: RS_Diag_04068

std::uint16_t passedStepsize;

Stepsize per pre-passed report.

Header-Datei#include "ara/diag/monitor_types.h"
Scopestruct ara::diag::CounterBased
SymbolpassedStepsize
Typstd::uint16_t

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

Record
AUTOSAR/AP/record/SWS_DM_00624
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00624@rel:R25-11#96164cc0
Content hash
96164cc0
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00624
Status: valid/unmigrated Version: rel:R25-11#9a3eeb83 Versionshistorie & Revisions (1 transition, 7 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_00624@rel:R25-11#9a3eeb83
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#fe1d69922026-09-30
  • R20-11rel:R20-11#1453700f2026-10-14
  • R21-11rel:R21-11#c63f63342026-10-14
  • R22-11rel:R22-11#4d2e11a52026-10-14
  • R23-11rel:R23-11#9a3eeb832026-10-14
  • R24-11rel:R24-11#9a3eeb832026-10-14
  • R25-11rel:R25-11#9a3eeb832026-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

متغير passedThreshold [SWS_DM_00622] Upstream: RS_Diag_04068

std::int16_t passedThreshold;

Threshold until qualified passed.

Header-Datei#include "ara/diag/monitor_types.h"
Scopestruct ara::diag::CounterBased
SymbolpassedThreshold
Typstd::int16_t

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

Record
AUTOSAR/AP/record/SWS_DM_00622
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00622@rel:R25-11#12fb4a12
Content hash
12fb4a12
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00622
Status: valid/unmigrated Version: rel:R25-11#24f4cdaa Versionshistorie & Revisions (1 transition, 7 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_00622@rel:R25-11#24f4cdaa
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#ce4c070e2026-09-30
  • R20-11rel:R20-11#a6d5e9c72026-10-14
  • R21-11rel:R21-11#72e5c6f22026-10-14
  • R22-11rel:R22-11#8565f7cc2026-10-14
  • R23-11rel:R23-11#24f4cdaa2026-10-14
  • R24-11rel:R24-11#24f4cdaa2026-10-14
  • R25-11rel:R25-11#24f4cdaa2026-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

متغير useJumpToFailed [SWS_DM_00627] Upstream: RS_Diag_04068

bool useJumpToFailed;

is jump supported

Header-Datei#include "ara/diag/monitor_types.h"
Scopestruct ara::diag::CounterBased
SymboluseJumpToFailed
Typbool

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

Record
AUTOSAR/AP/record/SWS_DM_00627
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00627@rel:R25-11#1531fb62
Content hash
1531fb62
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00627
Status: valid/unmigrated Version: rel:R25-11#3b6a9b1e Versionshistorie & Revisions (1 transition, 7 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_00627@rel:R25-11#3b6a9b1e
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#4e142f5c2026-09-30
  • R20-11rel:R20-11#500659252026-10-14
  • R21-11rel:R21-11#b0c513c82026-10-14
  • R22-11rel:R22-11#fa011c9a2026-10-14
  • R23-11rel:R23-11#3b6a9b1e2026-10-14
  • R24-11rel:R24-11#3b6a9b1e2026-10-14
  • R25-11rel:R25-11#3b6a9b1e2026-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

متغير useJumpToPassed [SWS_DM_00628] Upstream: RS_Diag_04068

bool useJumpToPassed;

is jump supported

Header-Datei#include "ara/diag/monitor_types.h"
Scopestruct ara::diag::CounterBased
SymboluseJumpToPassed
Typbool

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

Record
AUTOSAR/AP/record/SWS_DM_00628
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00628@rel:R25-11#c1d6cae4
Content hash
c1d6cae4
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00628
Status: valid/unmigrated Version: rel:R25-11#6b5a1179 Versionshistorie & Revisions (1 transition, 7 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_00628@rel:R25-11#6b5a1179
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#2b7444452026-09-30
  • R20-11rel:R20-11#a21e0a812026-10-14
  • R21-11rel:R21-11#fac6d4792026-10-14
  • R22-11rel:R22-11#a2c3b6d22026-10-14
  • R23-11rel:R23-11#6b5a11792026-10-14
  • R24-11rel:R24-11#6b5a11792026-10-14
  • R25-11rel:R25-11#6b5a11792026-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