CLASSIC
Modul: comstack
Rolle: constitutive
Konfidenz: 95%
SNIP_CLASSIC_COMSTACK_SECTION_8_3_4_4_PduR__User_LoTp_CopyTxData
Wortlaut
8.3.4.4 PduR_<User:LoTp>CopyTxData
[SWS_PduR_00518] Definition of callback function PduR_<User:LoTp>CopyTx
Data
Upstream requirements: SRS_GTW_06026, SRS_GTW_06121, SRS_BSW_00310
⌈
Service Name
PduR_<User:LoTp>CopyTxData
Syntax
BufReq_ReturnType PduR_<User:LoTp>CopyTxData (
PduIdType id,
const PduInfoType* info,
const RetryInfoType* retry,
PduLengthType* availableDataPtr
)
Service ID [hex]
0x43
Sync/Async
Synchronous
Reentrancy
Reentrant
id
Identification of the transmitted I-PDU.
info
Provides the destination buffer (SduDataPtr) and the number of
bytes to be copied (SduLength). If not enough transmit data is
available, no data is copied by the upper layer module and
BUFREQ_E_BUSY is returned. The lower layer module may
retry the call. An SduLength of 0 can be used to indicate state
changes in the retry parameter or to query the current amount of
available data in the upper layer module. In this case, the Sdu
DataPtr may be a NULL_PTR.
Parameters (in)
retry
This parameter is used to acknowledge transmitted data or to
retransmit data after transmission problems.
If the retry parameter is a NULL_PTR, it indicates that the
transmit data can be removed from the buffer immediately after it
has been copied. Otherwise, the retry parameter must point to a
valid RetryInfoType element.
If TpDataState indicates TP_CONFPENDING, the previously
copied data must remain in the TP buffer to be available for error
recovery. TP_DATACONF indicates that all data that has been
copied before this call is confirmed and can be removed from the
TP buffer. Data copied by this API call is excluded and will be
confirmed later. TP_DATARETRY indicates that this API call shall
copy previously copied data in order to recover from an error. In
this case TxTpDataCnt specifies the offset in bytes from the
current data copy position.
Parameters (inout)
None
Parameters (out)
availableDataPtr
Indicates the remaining number of bytes that are available in the
upper layer module’s Tx buffer. availableDataPtr can be used by
TP modules that support dynamic payload lengths (e.g. FrIsoTp)
to determine the size of the following CFs.
▽
△
Return value
BufReq_ReturnType
BUFREQ_OK: Data has been copied to the transmit buffer
completely as requested.
BUFREQ_E_BUSY: Request could not be fulfilled, because the
required amount of Tx data is not available. The lower layer
module may retry this call later on. No data has been copied.
BUFREQ_E_NOT_OK: Data has not been copied. Request failed.
Description
This function is called to acquire the transmit data of an I-PDU segment (N-PDU). Each call to
this function provides the next part of the I-PDU data unless retry->TpDataState is TP_
DATARETRY. In this case the function restarts to copy the data beginning at the offset from the
current position indicated by retry->TxTpDataCnt. The size of the remaining data is written to
the position indicated by availableDataPtr.
Available via
PduR_<module>.h
⌋
Versionen & Provenienz · Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.
Begründung & Zuweisungs-Evidenz
Cited verbatim in the snippet (deterministic citation).
Dokumenten-Herkunft & Rückverfolgbarkeit
| Spezifikations-Dokument | SWS_PDURouter.pdf |
|---|---|
| Dokumentseite | Seite 93 |
| Ziel-Modul | comstack (classic) |
| Ziel-Anforderung | SWS_PduR_00518 |
| Semantische Rolle | constitutive |
| Automatisierungs-Konfidenz | 0.95 |