DEENESPTFRRUARHIKOZHNL

클래스 ara::diag::DataTransferReadByPullHandler

[SWS_DM_01506] Upstream: RS_Diag_04135

class DataTransferReadByPullHandler {...};

Handles data transfers initiated by RequestReadFile/-Directory with data pulled by AraDiag from the implementation.

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

사용자 가이드AI 생성

진단 런타임 환경이 애플리케이션에서 파일 및 디렉터리 데이터를 단계적으로 가져올 수 있도록 지원합니다.
AI 생성 미검증 모델: gemini-3.8-flash-medium · 노력: medium · 온도: 제어 불가 · 프롬프트: a81aee002281 출처 열린 질문 (1)
독일어 가이드에서 번역됨gemini-3.8-flash-low · 2026-10-13 · 독일어 원문

진단 런타임 환경이 애플리케이션에서 파일 및 디렉터리 데이터를 단계적으로 가져올 수 있도록 지원합니다.

ara::diag::DataTransferReadByPullHandler 클래스는 UDS 읽기 작업의 일환으로 진단 계층 AraDiag이 애플리케이션에서 능동적으로 가져오는([SWS_DM_01506]) 파일 또는 디렉터리 데이터를 제공하는 역할을 합니다. 동작 절차에는 Read()을 통한 단계적 데이터 조회부터 ExitRead()를 통한 최종 세션 종료까지 포함됩니다. 엄격한 수명 주기 조건으로서, 정확히 단일 전송 세션에 할당된 핸들러 인스턴스는 ExitRead() 호출 전에 절대로 소멸되어서는 안 됩니다([SWS_DM_01510]).

컨텍스트

ara::diag::DataTransferReadByPullHandler 클래스([SWS_DM_01506], AUTOSAR_AP_SWS_Diagnostics §8.10.2 “Class: DataTransferReadByPullHandler”)는 파일 또는 디렉터리 읽기 진단 요청(예: RequestReadFile 또는 RequestReadDirectory)에 의해 시작된 데이터 전송을 처리합니다. 이 아키텍처는 진단 계층 AraDiag가 전송할 데이터를 구현체로부터 능동적으로 조회하는(“pulled”) 풀(Pull) 방식을 기반으로 합니다.

상호작용에는 외부 UDS 클라이언트(진단 테스터), 진단 서브시스템 AraDiag, 애플리케이션별 핸들러 구현체 등 세 가지 컴포넌트가 참여합니다. 외부 클라이언트가 읽기 요청을 전송하면, AraDiag은 핸들러의 메서드를 호출하여 점진적으로 데이터 청크를 제공하고 이를 UDS 클라이언트에 전송합니다([SWS_DM_01513]).

수명 주기

핸들러 인스턴스의 수명 주기는 단일 파일 전송 세션에 독점적으로 바인딩됩니다. 기본 생성자는 protected로 선언되어 있습니다([SWS_DM_01507]). 해석: 따라서 구체적인 애플리케이션은 파생 서브클래스를 구현하고 인스턴스화할 것으로 보입니다. 질문 Q-cb78bc4a1d40968b (열림)

복사 작업은 완전히 비활성화되어 있습니다. 핸들러는 세션 내 단방향 사용(“only one way usage i.e. per single file transfer session”)을 위해 정의되었으므로 복사 생성자([SWS_DM_01509]) 및 복사 할당 연산자([SWS_DM_01512])는 삭제(=delete)된 것으로 지정됩니다. 반면에 이동 작업(이동 생성자 및 이동 할당)은 기본 구현으로 정의되며 noexcept로 선언되어 있습니다([SWS_DM_01508], [SWS_DM_01511], AUTOSAR_AP_SWS_Diagnostics §8.10.2.1.1.1 “Move Constructor”).

해제와 관련하여 엄격한 선행 조건이 적용됩니다. 클래스 인스턴스는 메서드 ExitRead()가 호출되기 전에 절대로 소멸되어서는 안 됩니다([SWS_DM_01510], AUTOSAR_AP_SWS_Diagnostics §8.10.2.1.1.2 “Destructor”). 동시성과 관련하여 인터페이스 메서드 Read() 및 ExitRead()는 스레드 안전하지 않지만(“not thread-safe”), 예외 안전(noexcept)한 것으로 정의되어 있습니다([SWS_DM_01513], [SWS_DM_01514]).

사용 경로

데이터 조회의 정규 절차는 다음 단계로 구성됩니다:

  1. 초기화: 애플리케이션은 예정된 전송 세션을 위해 파생된 핸들러 클래스를 인스턴스화합니다.
  2. 데이터 조회: 데이터 블록을 제공하기 위해 AraDiag은 Read() 메서드를 호출합니다([SWS_DM_01513], AUTOSAR_AP_SWS_Diagnostics §8.10.2.1.3.2 “Read”). 애플리케이션은 AraDiag이 사전 할당한 버퍼에 대한 메모리 뷰 response_data(타입: ara::core::Span<const ara::core::Byte>)를 수신하고, 이를 다음 파일 내용으로 채운 뒤 기록된 바이트 수와 함께 ara::core::Future<std::uint32_t>을 완료합니다. AraDiag은 이 데이터를 블록 시퀀스 카운터(blockSequenceCounter) 뒤에 transferResponseParameterRecord로 긍정 UDS 응답에 삽입합니다([SWS_DM_01513]). 이 단계는 후속 청크에 대해 반복됩니다.
  3. 세션 종료: 전송을 정상적으로 종료하기 위해 AraDiag은 ExitRead()을 호출합니다([SWS_DM_01514], AUTOSAR_AP_SWS_Diagnostics §8.10.2.1.3.1 “ExitRead”). 종료 이유 exit_type, 제조사별 파라미터(transfer_request_parameter_record), meta_info 및 cancellation_handler이 전달됩니다. 구현체는 ara::core::Future<ara::core::Vector<ara::core::Byte>>을 통해 이를 확인하며, 그 반환값은 긍정 응답에서 SID 뒤에 전달됩니다([SWS_DM_01514]).
  4. 해제: ExitRead() 호출이 완료된 후에만 핸들러 객체를 소멸시킬 수 있습니다([SWS_DM_01510]).
풀 방식을 통한 데이터 전송 시퀀스UDS-ClientAraDiagHandlerLeseanforderung (RequestReadFile/-Directory)Read(response_data, meta_info, cancellation_handler)Datenblock in response_data schreibenFuture<uint32_t> (geschriebene Bytezahl)Positive UDS-Antwort (Datenblock)Abschlussanforderung (TransferExit)ExitRead(exit_type, transfer_request_parameter_record, ...)Future<Vector<Byte>> (확인/추가 데이터)Positive UDS-Antwort (TransferExit)

시퀀스 다이어그램: AraDiag를 통한 풀(Pull) 방식 데이터 조회의 일반적인 흐름. 출처: [SWS_DM_01513], [SWS_DM_01514]

오류 시나리오

데이터 준비 또는 종료 중 오류가 발생하면, 애플리케이션은 이를 ISO 14229-1에 따른 UDS 오류 코드(DiagUdsNrcErrc)와 함께 반환된 Future을 통해 보고합니다([SWS_DM_01513], [SWS_DM_01514]). 그런 다음 AraDiag는 테스터에 해당하는 부정 UDS 응답(NRC)을 생성합니다.

조기 취소를 위해 두 메서드 모두에 CancellationHandler이 전달됩니다([SWS_DM_01513], [SWS_DM_01514]). 애플리케이션은 대화가 취소되었는지 여부를 cancellation_handler.IsCanceled()을 통해 확인하거나 cancellation_handler.SetNotifier()를 통해 콜백 함수를 등록할 수 있습니다. 제공된 버퍼(response_data 및 transfer_request_parameter_record)는 프라미스가 충족되거나 핸들러를 통해 취소될 때까지 유효하게 유지됩니다.

ExitRead() 호출 전에 인스턴스가 소멸되면 규격 요구사항 위반([SWS_DM_01510])이며, 불완전한 전송 세션 및 정의되지 않은 시스템 상태로 이어질 수 있습니다.

이 클래스 가이드는 AUTOSAR Adaptive R25-11 규격을 기반으로 하며 ara::diag::DataTransferReadByPullHandler 인터페이스에 대한 요구사항을 요약합니다.

멤버 맵

클래스 다이어그램

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

G nara__diag__DataTransferReadByPullHandler313 DataTransferReadByPullHandler + DataTransferReadByPullHandler() + ~DataTransferReadByPullHandler() + ExitRead() + Read() + operator=()

상세 보기

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

생성자 및 소멸자

Constructs an instance of this class.

오버로드 DataTransferReadByPullHandler 3
DataTransferReadByPullHandler () noexcept=default; SWS_DM_01507
DataTransferReadByPullHandler (DataTransferReadByPullHandler &&other) noexcept=default; SWS_DM_01508
DataTransferReadByPullHandler (DataTransferReadByPullHandler const &)=delete; SWS_DM_01509

Destructs an instance of this class. An instance of this class must not be destroyed before ExitRead() is called.

virtual ~DataTransferReadByPullHandler () noexcept=default;

메서드

ExitRead 함수

Exits an ongoing data transfer session.

virtual auto ExitRead (DataTransferExitType exit_type, ara::core::Span< const ara::core::Byte > transfer_request_parameter_ record, MetaInfo const &meta_info, CancellationHandler cancellation_ handler) noexcept -> ara::core::Future< ara::core::Vector< ara::core::Byte > >=0;
Read 함수

Reads data chunk from the application. The first or subsequent file/directory info content chunk to be sent back to the UDS client will be composed by the application and copied into the provided by ara::diag Span with up to the requested Span size.

virtual auto Read (ara::core::Span< const ara::core::Byte > response_ data, MetaInfo const &meta_info, CancellationHandler cancellation_ handler) noexcept -> ara::core::Future< std::uint32_t >=0;

연산자

operator= 함수 2

Move assigns an instance of this class.

오버로드 = 2
auto operator= (DataTransferReadByPullHandler &&other) & noexcept -> DataTransferReadByPullHandler & =default; SWS_DM_01511
auto operator= (DataTransferReadByPullHandler const &) -> DataTransfer ReadByPullHandler &=delete; SWS_DM_01512

메서드 문서

함수 DataTransferReadByPullHandler [SWS_DM_01507] Upstream: RS_Diag_04135

DataTransferReadByPullHandler () noexcept=default;

Constructs an instance of this class.

Header-Datei#include "ara/diag/data_transfer.h"
Scopeclass ara::diag::DataTransferReadByPullHandler
Exception-Sicherheitexception safe
Sichtbarkeitprotected

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

Record
AUTOSAR/AP/record/SWS_DM_01507
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01507@rel:R25-11#77c95903
Content hash
77c95903
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01507
Status: valid/unmigrated Version: rel:R25-11#60e90ec2 Versionshistorie & Revisions (1 transition, 5 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_01507@rel:R25-11#60e90ec2
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#326df67e2026-09-30
  • R22-11rel:R22-11#5e0a297b2026-10-14
  • R23-11rel:R23-11#c1526a6f2026-10-14
  • R24-11rel:R24-11#c9a8ba842026-10-14
  • R25-11rel:R25-11#60e90ec22026-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

함수 DataTransferReadByPullHandler [SWS_DM_01508] Upstream: RS_Diag_04135

DataTransferReadByPullHandler (DataTransferReadByPullHandler &&other) noexcept=default;

Move constructs an instance of this class.

Header-Datei#include "ara/diag/data_transfer.h"
Scopeclass ara::diag::DataTransferReadByPullHandler
Exception-Sicherheitexception safe

Parameter (out)

ParameterBeschreibung
otherThe other object

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

Record
AUTOSAR/AP/record/SWS_DM_01508
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01508@rel:R25-11#82d72f2d
Content hash
82d72f2d
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01508
Status: valid/unmigrated Version: rel:R25-11#86fd98f3 Versionshistorie & Revisions (1 transition, 5 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_01508@rel:R25-11#86fd98f3
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#017f4b222026-09-30
  • R22-11rel:R22-11#2ef417eb2026-10-14
  • R23-11rel:R23-11#11faa0bb2026-10-14
  • R24-11rel:R24-11#8d1119962026-10-14
  • R25-11rel:R25-11#86fd98f32026-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

함수 DataTransferReadByPullHandler [SWS_DM_01509] Upstream: RS_Diag_04135

DataTransferReadByPullHandler (DataTransferReadByPullHandler const &)=delete;

Handlers shall not be copyable since only one way usage i.e. per single file transfer session.

Header-Datei#include "ara/diag/data_transfer.h"
Scopeclass ara::diag::DataTransferReadByPullHandler

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

Record
AUTOSAR/AP/record/SWS_DM_01509
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01509@rel:R25-11#8432b327
Content hash
8432b327
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01509
Status: valid/unmigrated Version: rel:R25-11#23947b98 Versionshistorie & Revisions (1 transition, 5 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_01509@rel:R25-11#23947b98
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#22037eeb2026-09-30
  • R22-11rel:R22-11#8ff68aa32026-10-14
  • R23-11rel:R23-11#f186fbd82026-10-14
  • R24-11rel:R24-11#3c2842b72026-10-14
  • R25-11rel:R25-11#23947b982026-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

함수 ExitRead [SWS_DM_01514] Upstream: RS_Diag_04135

virtual auto ExitRead (DataTransferExitType exit_type, ara::core::Span< const ara::core::Byte > transfer_request_parameter_ record, MetaInfo const &meta_info, CancellationHandler cancellation_ handler) noexcept -> ara::core::Future< ara::core::Vector< ara::core::Byte > >=0;

Exits an ongoing data transfer session.

AI 생성 미검증 모델: gemini-3.8-flash-medium · 노력: medium · 온도: 제어 불가 · 프롬프트: 7a822a7b2a3d 출처
독일어 가이드에서 번역됨gemini-3.8-flash-low · 2026-10-13 · 독일어 원문

순수 가상 메서드 ExitRead은(는) ara::diag::DataTransferReadByPullHandler [SWS_DM_01514] (AUTOSAR_AP_SWS_Diagnostics §8.10.2.1.3.1 “ExitRead”)의 프레임워크 내에서 진행 중인 데이터 전송 세션을 종료합니다. 이 메서드는 매개변수로 종료 이유 exit_type(타입 DataTransferExitType), transfer_request_parameter_record의 차량 제조업체별 매개변수(ara::core::Span<const ara::core::Byte> 형태), 요청 컨텍스트 meta_info 및 cancellation_handler을(를) 받습니다. 매개변수 transfer_request_parameter_record은(는) 관련 Promise가 충족되거나 Cancellation-Handler를 통해 실행이 취소될 때까지 유효하게 유지됩니다 [SWS_DM_01514].

호출은 비동기식으로 수행되며 ara::core::Future<ara::core::Vector<ara::core::Byte>>을(를) 반환합니다 [SWS_DM_01514]:

  • 성공 시 Future는 긍정 응답 메시지를 위해 제공되며, OperationOutput.response_data의 데이터는 서비스 ID 뒤에 transferResponseParameterRecord(으)로 배치됩니다.
  • 오류 발생 시 Future는 부정 응답 메시지를 위해 DiagUdsNrcErrc의 ISO 14229-1에 따른 UDS 오류 코드(NRC)로 충족됩니다.

이 함수는 noexcept(으)로 선언되어 예외 안전(exception safe)하지만, 스레드 안전하지 않습니다(not thread-safe) [SWS_DM_01514]. cancellation_handler을(를) 통해 cancellation_handler.IsCanceled()(으)로 취소 상태를 쿼리하거나 cancellation_handler.SetNotifier()을(를) 통해 대화 취소에 대한 알림 함수를 등록할 수 있습니다 [SWS_DM_01514].

순서와 관련하여 ExitRead()이(가) 호출되기 전에는 DataTransferReadByPullHandler 인스턴스를 어떠한 경우에도 소멸시켜서는 안 됩니다 [SWS_DM_01510]. 해당 종료 함수 및 소멸자 조건은 ara::diag::DataTransferReadSharedDataHandler::ExitRead [SWS_DM_01505] ([SWS_DM_01499]) 및 ara::diag::DataTransferReadByPushHandler::ExitRead [SWS_DM_01523] ([SWS_DM_01519])에 대해서도 병렬로 존재합니다.

이 텍스트는 AI에 의해 작성되었으며, 사양만이 구속력을 갖습니다.

구현자 가이드 준비 중 (복잡도 I2)

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

Parameter (in)

ParameterBeschreibung
exit_typeSpecifies the exit reason
transfer_request_This parameter record contains parameter(s), which are required
parameter_recordby the server to support the transfer of data. Format and length of this parameter(s) are vehicle manufacturer specific. Lifetime: Valid until Promise is fulfilled or the processing is cancelled by the cancellationHandler.
meta_infoMetaInfo of the request.
cancellation_handlerThis parameter is used to • Query the current cancellation status by calling cancellation_ handler.IsCanceled(). Returns true in case, the current conversation has been cancelled and false otherwise. • Register a notifier function by calling cancellation_handler.Set Notifier(). The registered notifier is called if the current conversation is cancelled.

Rückgabewert

TypBeschreibung
ara::core::Future<ara::core::Vector<ara::core::Byte > >A Future, which either gets readied to OperationOutput (transfer ResponseParameterRecord for a positive response message) or readied with UDS ErrorCode from DiagUdsNrcErrc (for an negative response message). Data in OperationOutput.response_data will be placed after SID as transferResponseParameterRecord in the positive response.

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_01514
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01514@rel:R25-11#d9fd7ec4
Content hash
d9fd7ec4
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01514
Status: valid/unmigrated Version: rel:R25-11#5862e917 Versionshistorie & Revisions (1 transition, 5 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_01514@rel:R25-11#5862e917
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#b7df1d392026-09-30
  • R22-11rel:R22-11#a8dad66b2026-10-14
  • R23-11rel:R23-11#bb1c081f2026-10-14
  • R24-11rel:R24-11#8447e69b2026-10-14
  • R25-11rel:R25-11#5862e9172026-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

함수 Read [SWS_DM_01513] Upstream: RS_Diag_04135

virtual auto Read (ara::core::Span< const ara::core::Byte > response_ data, MetaInfo const &meta_info, CancellationHandler cancellation_ handler) noexcept -> ara::core::Future< std::uint32_t >=0;

Reads data chunk from the application. The first or subsequent file/directory info content chunk to be sent back to the UDS client will be composed by the application and copied into the provided by ara::diag Span with up to the requested Span size.

AI 생성 미검증 모델: gemini-3.8-flash-medium · 노력: medium · 온도: 제어 불가 · 프롬프트: 104f857aa59e 출처
독일어 가이드에서 번역됨gemini-3.8-flash-low · 2026-10-13 · 독일어 원문

사용법 및 호출 시맨틱

ara::diag::DataTransferReadByPullHandler 클래스의 메서드 Read은(는) UDS 데이터 전송 프레임워크 내에서 애플리케이션이 데이터 블록을 읽어오는 데 사용됩니다[SWS_DM_01513]. 애플리케이션은 첫 번째 또는 후속 파일 또는 디렉터리 콘텐츠 블록을 조합하고, 이를 ara::diag에서 전달된 버퍼 response_data(유형 ara::core::Span<const ara::core::Byte>)에 스팬 크기까지 복사합니다.

호출은 비동기식으로 수행되며 ara::core::Future<std::uint32_t>을(를) 반환합니다[SWS_DM_01513]. 성공 시 Future는 실제로 제공된 바이트 수로 충족되며, 이 데이터는 긍정 UDS 응답에서 blockSequenceCounter 뒤에 transferResponseParameterRecord(으)로 배치됩니다. 매개변수 cancellation_handler을(를) 통해 애플리케이션은 IsCanceled()을(를) 사용하여 중단 상태를 쿼리하거나 SetNotifier()을(를) 통해 중단에 대한 알림 함수를 등록할 수 있습니다.

오류 처리 및 제약 조건

오류가 발생하면 Future는 ISO 14229-1에 따라 DiagUdsNrcErrc의 적용 가능한 UDS NRC로 완료됩니다[SWS_DM_01513]. 인터페이스가 offer()을(를) 통해 제공되지 않거나 더 이상 제공되지 않는 경우, DM은 NRC 0x94(ResourceTemporarilyNotAvailable)(으)로 응답합니다[SWS_DM_01257].

동시성 및 상호 작용

이 인터페이스는 스레드 안전하지 않음(not thread-safe)이지만 예외 안전(exception safe)으로 지정되어 있습니다[SWS_DM_01513]. response_data의 메모리 영역은 관련 Promise가 충족되거나 작업이 중단될 때까지만 유효합니다. 데이터 전송을 위한 풀(pull) 패턴의 대안으로 DataTransferReadByPushHandler::Read [SWS_DM_01522]을(를) 통한 푸시(push) 방식 및 DataTransferReadSharedOwnershipHandler::Read [SWS_DM_01504]을(를) 통한 공유 소유권 전송이 존재합니다.

이 사용 지침은 AUTOSAR Adaptive 사양 문서를 기반으로 자동 생성되었습니다.

구현자 가이드 준비 중 (복잡도 I1)

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

Parameter (in)

ParameterBeschreibung
response_dataThe view over a pre-allocated by AraDiag memory to write in this data chunk. Lifetime: Valid until Promise is fulfilled or the processing is cancelled by the cancellationHandler.
meta_infoMetaInfo of the request.
cancellation_handlerThis parameter is used to • Query the current cancellation status by calling cancellation_ handler.IsCanceled(). Returns true in case, the current conversation has been cancelled and false otherwise. • Register a notifier function by calling cancellation_handler.Set Notifier(). The registered notifier is called if the current conversation is cancelled.

Rückgabewert

TypBeschreibung
ara::core::Future<std::uint32_t >A Future, which either gets readied to actual amount of data provided in the Span (for a positive response message) or readied with UDS ErrorCode from DiagUdsNrcErrc (for an negative response message). Data in response_data will be placed after blockSequenceCounter as transferResponseParameterRecord in the positive response.

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_01513
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01513@rel:R25-11#89cb2746
Content hash
89cb2746
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01513
Status: valid/unmigrated Version: rel:R25-11#63972da5 Versionshistorie & Revisions (1 transition, 5 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_01513@rel:R25-11#63972da5
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#1d9ca4162026-09-30
  • R22-11rel:R22-11#75393c2a2026-10-14
  • R23-11rel:R23-11#ca5dc2382026-10-14
  • R24-11rel:R24-11#8cc6dd042026-10-14
  • R25-11rel:R25-11#63972da52026-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_01511] Upstream: RS_Diag_04135

auto operator= (DataTransferReadByPullHandler &&other) & noexcept -> DataTransferReadByPullHandler & =default;

Move assigns an instance of this class.

Header-Datei#include "ara/diag/data_transfer.h"
Scopeclass ara::diag::DataTransferReadByPullHandler
Exception-Sicherheitexception safe

Parameter (out)

ParameterBeschreibung
otherThe other object

Rückgabewert

TypBeschreibung
DataTransferReadByPullHandlerReference to self

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

Record
AUTOSAR/AP/record/SWS_DM_01511
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01511@rel:R25-11#ff409f78
Content hash
ff409f78
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01511
Status: valid/unmigrated Version: rel:R25-11#b782b337 Versionshistorie & Revisions (1 transition, 5 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_01511@rel:R25-11#b782b337
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#c6a866242026-09-30
  • R22-11rel:R22-11#4b9d42d12026-10-14
  • R23-11rel:R23-11#44c930122026-10-14
  • R24-11rel:R24-11#5df4ff4d2026-10-14
  • R25-11rel:R25-11#b782b3372026-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_01512] Upstream: RS_Diag_04135

auto operator= (DataTransferReadByPullHandler const &) -> DataTransfer ReadByPullHandler &=delete;

Handlers shall not be copy-able since only one way usage i.e. per single file transfer session.

Header-Datei#include "ara/diag/data_transfer.h"
Scopeclass ara::diag::DataTransferReadByPullHandler

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

Record
AUTOSAR/AP/record/SWS_DM_01512
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01512@rel:R25-11#b99cb818
Content hash
b99cb818
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01512
Status: valid/unmigrated Version: rel:R25-11#c19a0a89 Versionshistorie & Revisions (1 transition, 5 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_01512@rel:R25-11#c19a0a89
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#9cf22d9e2026-09-30
  • R22-11rel:R22-11#8bde9da32026-10-14
  • R23-11rel:R23-11#e27d97752026-10-14
  • R24-11rel:R24-11#fef1656d2026-10-14
  • R25-11rel:R25-11#c19a0a892026-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

함수 ~DataTransferReadByPullHandler [SWS_DM_01510] Upstream: RS_Diag_04135

virtual ~DataTransferReadByPullHandler () noexcept=default;

Destructs an instance of this class. An instance of this class must not be destroyed before ExitRead() is called.

Header-Datei#include "ara/diag/data_transfer.h"
Scopeclass ara::diag::DataTransferReadByPullHandler
Exception-Sicherheitexception safe

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

Record
AUTOSAR/AP/record/SWS_DM_01510
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01510@rel:R25-11#462aeef1
Content hash
462aeef1
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01510
Status: valid/unmigrated Version: rel:R25-11#b0161e65 Versionshistorie & Revisions (1 transition, 5 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_01510@rel:R25-11#b0161e65
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#aa3b8d842026-09-30
  • R22-11rel:R22-11#66de4fbf2026-10-14
  • R23-11rel:R23-11#ac8a6a602026-10-14
  • R24-11rel:R24-11#6759ad7c2026-10-14
  • R25-11rel:R25-11#b0161e652026-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