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

사용자 가이드AI 생성

모니터의 카운터 기반 디바운싱을 위한 임계값, 스텝 크기 및 점프 값을 구성합니다.
AI 생성 미검증 모델: 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 구조체는 AUTOSAR Adaptive Platform 사양SWS Diagnostics §7.3.4.1.5.1 “Counter-based debouncing”에 따른 진단 이벤트의 카운터 기반 디바운싱[SWS_DM_00538]을 위한 구성 매개변수를 나타냅니다. 진단 하위 시스템 내에서 이는 적용되는 모니터 구현과 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

컨텍스트 다이어그램: 애플리케이션, Monitor, 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는 순수 값 컨테이너로서 적용 소프트웨어 컴포넌트에 의해 스택 또는 힙에 생성됩니다. 해당 수명주기는 일반적으로 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)DEXT 파라미터 없음CounterBased-Werte verwendenUse Case: Laufzeit-EntprellungReportMonitorAction(kPrefailed)Ereignisstatus aktualisierenoptuseJumpToFailed == true && Zaehler < failedJumpValue카운터를 failedJumpValue로 설정Zaehler um failedStepsize inkrementierenoptZaehler >= failedThreshold카운터를 failedThreshold로 제한Status 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

상세 보기

개요에서 항목을 선택하세요.

상수

failed to jump value

std::int16_t failedJumpValue;

Stepsize per pre-failed report.

std::uint16_t failedStepsize;

Threshold until qualified failed.

std::int16_t failedThreshold;

passed to jump value

std::int16_t passedJumpValue;

Stepsize per pre-passed report.

std::uint16_t passedStepsize;

Threshold until qualified passed.

std::int16_t passedThreshold;

is jump supported

bool useJumpToFailed;

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#ff24b3e2
Content hash
ff24b3e2
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#f1c3c48d
Content hash
f1c3c48d
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#3d53b2ac
Content hash
3d53b2ac
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#05891251
Content hash
05891251
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#798cbec2
Content hash
798cbec2
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#628face5
Content hash
628face5
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#845e264e
Content hash
845e264e
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#f1854749
Content hash
f1854749
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