General Transformer Specification (Xfrm)
AUTOSAR Classic Communication Services-Modul General Transformer Specification (Xfrm, Spezifikation: AUTOSAR_ASWS_TransformerGeneral.pdf, AUTOSAR_CP_ASWS_TransformerGeneral.pdf).
Funktionen — Übersicht
uint8 <Mip>_<transformerId> (uint8* buffer, uint32* bufferLength, <paramtype> dataElement);This function is the interface of the first transformer in a transformer chain of Sender/Receiver communication.uint8 <Mip>_<transformerId> ([ const <datatype>* csTransactionHandle ], const Rte_Cs_TransactionHandleType* TransactionHandle, uint8* buffer, uint32* bufferLength, [ Std_ReturnType returnValue ], [ <paramtype> data_1, ... <paramtype> data_n ]);This function is the interface of the first transformer in a transformer chain of Client/Server communication.uint8 <Mip>_<transformerId> ([ Std_ExtractProtocolHeaderFieldsType extractProtocolHeaderFields ], [ const <datatype>* csTransactionHandle ], uint8* buffer, uint32* bufferLength, [ const uint8* inputBuffer ], uint32 inputBufferLength, [ <paramtype> originalData ]);This function is the interface of the first transformer in a transformer chain of Sender/Receiver communication.uint8 <Mip>_Inv_<transformerId> (const uint8* buffer, uint32 bufferLength, <type>* dataElement);This function is the interface of a first transformer in a transformer chain of Sender/Receiver communication (this is the...uint8 <Mip>_Inv_<transformerId> ([ <datatype>* csTransactionHandle ], Rte_Cs_TransactionHandleType* TransactionHandle, const uint8* buffer, uint32 bufferLength, [ Std_ReturnType* returnValue ], [ <paramtype> data ]);This function is the interface of the first transformer in a transformer chain of Client/Server communication (this is the...uint8 <Mip>_Inv_<transformerId> ([ Std_ExtractProtocolHeaderFieldsType extractProtocolHeaderFields ], [ <datatype>* csTransactionHandle ], uint8* buffer, uint32* bufferLength, [ const uint8* inputBuffer ], uint32 inputBufferLength);This function is the interface of a transformer which is not the first transformer in a transformer chain.void <Mip>_GetVersionInfo (Std_VersionInfoType* VersionInfo);This service returns the version information of the called transformer module.void <Mip>_Init (const {Mip}_ConfigType* config);This service initializes the transformer for the further processing.void <Mip>_DeInit (void);This service deinitializes the transformer.uint8 <Mip>_<transformerId> (uint8* buffer, uint32* bufferLength);This function is the interface of the first transformer in a transformer chain of external trigger events.uint8 <Mip>_Inv_<transformerId> (const uint8* buffer, uint32 bufferLength);This function is the interface of a first transformer in a transformer chain of external trigger event communication (this is...Std_ReturnType <Mip>_ExtractProtocolHeaderFields (const uint8* buffer, uint32 bufferLength, Std_MessageTypeType* messageType, Std_MessageResultType* messageResult);Function to extract the relevant protocol header fields of the message and the type of the message result of a transformer.
Typen — Übersicht
struct {Mip}_ConfigTypeThis is the type of the data structure containing the initialization data for the transformer.
Anforderungen — Übersicht
SWS_Xfrm_00001Transformers shall be stateful only, if the dedicated transformer functionality requires maintaining a transformer state.SWS_Xfrm_00002A transformer shall consider that the target ECU might have a different architecture than the sender ECU (e.SWS_Xfrm_00003A transformer shall clearly define endianness of multi-byte words.SWS_Xfrm_00004A transformer shall clearly define the ordering of the contained data elements in the complex data if it is a serializer.SWS_Xfrm_00005A transformer shall clearly define the data semantics.SWS_Xfrm_00006A transformer shall clearly define the source (=target) data type of the data represented by the byte array if it is a serializer.SWS_Xfrm_00007A transformer shall clearly define the padding of data.SWS_Xfrm_00008The way to deal with unexpected data shall be specified by the transformer specific SWS.SWS_Xfrm_00009A transformer shall be implemented re-entrant because there exist valid configurations which can lead to a concurrent...SWS_Xfrm_00010A transformer which uses in-place buffering shall use the in- put buffer also as output buffer.SWS_Xfrm_00011A transformer which uses out-of-place buffering shall work with two buffers: One for the input to the transformer and one for...SWS_Xfrm_00012A transformer which uses out-of-place buffering shall not alter the data of the input buffer.SWS_Xfrm_00013The first transformer in the chain on the sending side shall use out-of-place buffering.SWS_Xfrm_00014The last transformer in the chain on the receiving side shall use out-of-place buffering.SWS_Xfrm_00017A serializer shall take data elements (complex or atomic) and serialize them into a linear representation (byte array).SWS_Xfrm_00018The serialization algorithm shall be defined for all possible com- plex data input.SWS_Xfrm_00019A safety transformer shall protect the inter-ECU communication of safety related SWCs.SWS_Xfrm_00020A safety transformer shall ensure the correct order of data trans- missions.SWS_Xfrm_00021A safety transformer shall ensure the correct content of data transmissions.SWS_Xfrm_00022A security transformer shall protect the inter-ECU communica- tion of security related SWCs.SWS_Xfrm_00023A security transformer shall ensure the authenticity of data trans- missions.SWS_Xfrm_00024A security transformer shall ensure the integrity of data trans- missions.SWS_Xfrm_00025A security transformer shall ensure the freshness of data trans- missions.SWS_Xfrm_00026Transformers shall return errors to the RTE as return codes.SWS_Xfrm_00027If a transformer cannot generate a valid output, it shall return a hard error.SWS_Xfrm_00028If a transformer produces an output but wants to signal warning to the SWC, it shall return a soft error.SWS_Xfrm_00029Each transformer class shall have its own set of abstract errors.SWS_Xfrm_00030Each transformer shall return only errors which are a subset of the errors defined for the transformer's transformer class.SWS_Xfrm_00031A serializer transformer shall return one of the errors shown in Table 7.SWS_Xfrm_00032A safety transformer shall return one of the errors shown in Ta- ble 7.SWS_Xfrm_00033A security transformer shall return one of the errors shown in Table 7.SWS_Xfrm_00034A transformer shall use the ImplementationDataType s de- fined by RTE in the transformer's Module Interlink Types Header file.SWS_Xfrm_00037The function _ specified in [SWS_Xfrm_00036] shall exist for the first reference in the list of ordered references transformer...SWS_Xfrm_00039The function _ specified in [SWS_Xfrm_00038] shall exist for the first reference in the list of ordered references transformer...SWS_Xfrm_00041The function _ specified in [SWS_Xfrm_00040] shall exist for the non-first reference in the list of ordered references...SWS_Xfrm_00043The function _Inv_ specified in [SWS_Xfrm_00042] shall exist for the first reference in the list of ordered references...SWS_Xfrm_00045The function _Inv_ specified in [SWS_Xfrm_00044] shall exist for the first reference in the list of ordered references...SWS_Xfrm_00047The function _Inv_ specified in [SWS_Xfrm_00046] shall exist for the non-first reference in the list of ordered refer- ences...SWS_Xfrm_00048A deserializer transformer (serializer transformer on receiver side) shall be able to return all or a subset of the...SWS_Xfrm_00049An implementation of a transformer shall be able to cope with NULL_PTR as input data.SWS_Xfrm_00050A custom transformer shall return one of the custom errors spec- ified for the custom transformer.SWS_Xfrm_00051If a transformer returns a hard error, it shall leave the output buffer unchangedSWS_Xfrm_00052Each function that satisfies the name pattern _ (independent from the position in the transformer chain) shall implement its...SWS_Xfrm_00053Each function that satisfies the name pattern _Inv_- (independent from the position in the transformer chain) shall im-...SWS_Xfrm_00054If a VariableDataPrototype is mapped to multiple ISig- nal s which referr to DataTransformation s and if those...SWS_Xfrm_00055If the transformer execution is optimized, the XfrmImplemen- tationMapping shall map all transformers which execution can be...SWS_Xfrm_00056If the transformer execution is optimized and one function trans- forms data (independent from the position in the transformer...SWS_Xfrm_00061Type of error Related error code Error value Error code if any other API service, except Get VersionInfo is called before the...SWS_Xfrm_00062The name pattern transformerId should be used for the APIs which belong to the BswModuleEntry referenced from a...SWS_Xfrm_00070A transformer shall support the Extended Production Errors shown in Table 7.SWS_Xfrm_00071The Extended Production Error XFRM_E_MALFORMED_MESSAGE shall exist for every transformer which has XFRM_- E_MALFORMED_MESSAGE set.SWS_Xfrm_00100If the value of the returnValue parameter is inside the range of hard errors (0x80-0xFF), the implementation of...SWS_Xfrm_00101If a Trigger is mapped to multiple ISignal s which refer to DataTransformation s and if those DataTransformation s refer to...SWS_Xfrm_00103The function _ specified in [SWS_Xfrm_00102] shall exist for the first referenced TransformationTech- nology in the ordered...SWS_Xfrm_00105The function _Inv_ specified in [SWS_Xfrm_00104] shall exist for the first referenced TransformationTechnology in the ordered...SWS_Xfrm_00106The function _ specified in [SWS_Xfrm_00036] shall exist for the first reference in the list of ordered references transformer...SWS_Xfrm_00107The function _Inv_ specified in [SWS_Xfrm_00042] shall exist for the first reference in the list of ordered references...SWS_Xfrm_00108A transformer which is called with NULL_PTR as input data shall not change the output buffer unless the transformer invocation...SWS_Xfrm_00109⌊ DRAFT g The data type Std_TransformerForward shall be defined as follows: 1 struct Std_TransformerForward { 2...SWS_Xfrm_00110⌊ DRAFT g A safety transformer shall handle the forwarded status shown in Table 8.SWS_Xfrm_00111⌊ DRAFT g The underlying data type of the type Std_TransformerForwardCode shall be uint8.SWS_Xfrm_00112The function _ExtractProtocolHeaderFields spec- ified in [SWS_Xfrm_91002] shall exist in case the respective transformer...SWS_Xfrm_00113The function _ExtractProtocolHeaderFields spec- ified in [SWS_Xfrm_91002] shall return E_NOT_OK in case of an error (e.SWS_Xfrm_00114The function _ExtractProtocolHeaderFields spec- ified in [SWS_Xfrm_91002] shall return E_OK otherwise.SWS_Xfrm_91001Module Header File Imported Type Rte Rte.SWS_Xfrm_CONSTR_09094If there exists a XfrmImplementationMapping which references an ISignal or ISignalGroup sig1 and contains the optional...SWS_Xfrm_CONSTR_09095The XfrmVariableDataPrototypeIn- stanceRef shall refer to the instance of a VariableDataPrototype which belongs to a subclass...SWS_Xfrm_CONSTR_09096If no XfrmSignal exists and hence no ISignal or ISignalGroup is referenced, XfrmVariableDataPrototypeInstanceRef shall be used...
Funktionen & Typen — Detailansicht
फ़ंक्शन <Mip>_<transformerId> [SWS_Xfrm_00036] 📄 PDF
uint8 <Mip>_<transformerId>(uint8* buffer, uint32* bufferLength, <paramtype> dataElement);
This function is the interface of the first transformer in a transformer chain of Sender/Receiver communication. The length of the transformed data shall be calculated by the transformer during runtime and returned in the OUT parameter bufferLength. It may be smaller than the maximum buffer size used by the RTE for buffer allocation.
फ़ंक्शन <Mip>_<transformerId> [SWS_Xfrm_00038] 📄 PDF
uint8 <Mip>_<transformerId>([ const <datatype>* csTransactionHandle ], const Rte_Cs_TransactionHandleType* TransactionHandle, uint8* buffer, uint32* bufferLength, [ Std_ReturnType returnValue ], [ <paramtype> data_1, ... <paramtype> data_n ]);
This function is the interface of the first transformer in a transformer chain of Client/Server communication. It takes the operation arguments and optionally the return value as input and outputs a uint8 array containing the transformed data. The length of the transformed data shall be calculated by the transformer during runtime and returned in the OUT parameter bufferLength. It may be smaller than the maximum buffer size used by the RTE for buffer allocation.
फ़ंक्शन <Mip>_<transformerId> [SWS_Xfrm_00040] 📄 PDF
uint8 <Mip>_<transformerId>([ Std_ExtractProtocolHeaderFieldsType extractProtocolHeaderFields ], [ const <datatype>* csTransactionHandle ], uint8* buffer, uint32* bufferLength, [ const uint8* inputBuffer ], uint32 inputBufferLength, [ <paramtype> originalData ]);
This function is the interface of the first transformer in a transformer chain of Sender/Receiver communication. The length of the transformed data shall be calculated by the transformer during runtime and returned in the OUT parameter bufferLength. It may be smaller than the maximum buffer size used by the RTE for buffer allocation. 5 General 4
फ़ंक्शन <Mip>_Inv_<transformerId> [SWS_Xfrm_00042] 📄 PDF
uint8 <Mip>_Inv_<transformerId>(const uint8* buffer, uint32 bufferLength, <type>* dataElement);
This function is the interface of a first transformer in a transformer chain of Sender/Receiver communication (this is the last executed transformer on the receiving side!).
फ़ंक्शन <Mip>_Inv_<transformerId> [SWS_Xfrm_00044] 📄 PDF
uint8 <Mip>_Inv_<transformerId>([ <datatype>* csTransactionHandle ], Rte_Cs_TransactionHandleType* TransactionHandle, const uint8* buffer, uint32 bufferLength, [ Std_ReturnType* returnValue ], [ <paramtype> data ]);
This function is the interface of the first transformer in a transformer chain of Client/Server communication (this is the last executed transformer on the receiving side!). It takes the constant buffer (IN parameter buffer) of length (IN parameter bufferLength which may be smaller than the maximum buffer size used by the RTE for buffer allocation) as input and outputs the operation arguments and optionally the return value (OUT parameters data_1, ..., data_n, and returnValue).
फ़ंक्शन <Mip>_Inv_<transformerId> [SWS_Xfrm_00046] 📄 PDF
uint8 <Mip>_Inv_<transformerId>([ Std_ExtractProtocolHeaderFieldsType extractProtocolHeaderFields ], [ <datatype>* csTransactionHandle ], uint8* buffer, uint32* bufferLength, [ const uint8* inputBuffer ], uint32 inputBufferLength);
This function is the interface of a transformer which is not the first transformer in a transformer chain. It takes the output of an earlier transformer in the chain and transforms the data. The length of the transformed data shall be calculated by the transformer during runtime and returned in the OUT parameter bufferLength. It may be smaller than the maximum buffer size used by the RTE for buffer allocation.
फ़ंक्शन <Mip>_GetVersionInfo [SWS_Xfrm_00057] 📄 PDF
void <Mip>_GetVersionInfo(Std_VersionInfoType* VersionInfo);
This service returns the version information of the called transformer module.
फ़ंक्शन <Mip>_Init [SWS_Xfrm_00058] 📄 PDF
void <Mip>_Init(const {Mip}_ConfigType* config);
This service initializes the transformer for the further processing.
फ़ंक्शन <Mip>_DeInit [SWS_Xfrm_00059] 📄 PDF
void <Mip>_DeInit(void);
This service deinitializes the transformer.
फ़ंक्शन <Mip>_<transformerId> [SWS_Xfrm_00102] 📄 PDF
uint8 <Mip>_<transformerId>(uint8* buffer, uint32* bufferLength);
This function is the interface of the first transformer in a transformer chain of external trigger events. The length of the transformed data shall be calculated by the transformer during runtime and returned in the OUT parameter bufferLength. It may be smaller than the maximum buffer size used by the RTE for buffer allocation.
फ़ंक्शन <Mip>_Inv_<transformerId> [SWS_Xfrm_00104] 📄 PDF
uint8 <Mip>_Inv_<transformerId>(const uint8* buffer, uint32 bufferLength);
This function is the interface of a first transformer in a transformer chain of external trigger event communication (this is the last executed transformer on the trigger sink side!).
फ़ंक्शन <Mip>_ExtractProtocolHeaderFields [SWS_Xfrm_91002] 📄 PDF
Std_ReturnType <Mip>_ExtractProtocolHeaderFields(const uint8* buffer, uint32 bufferLength, Std_MessageTypeType* messageType, Std_MessageResultType* messageResult);
Function to extract the relevant protocol header fields of the message and the type of the message result of a transformer. - At the time being, this is limited to the types used for C/S communication (i.e., REQUEST and RESPONSE and OK and ERROR).
टाइप {Mip}_ConfigType [SWS_Xfrm_00060] 📄 PDF
This is the type of the data structure containing the initialization data for the transformer.
requirement SWS_Xfrm_00001 [SWS_Xfrm_00001] 📄 PDF
Transformers shall be stateful only, if the dedicated transformer functionality requires maintaining a transformer state.
requirement SWS_Xfrm_00002 [SWS_Xfrm_00002] 📄 PDF
A transformer shall consider that the target ECU might have a different architecture than the sender ECU (e.g. 8/16/32bit, little/big endian, etc.) so the on-wire format shall be fixed.
requirement SWS_Xfrm_00003 [SWS_Xfrm_00003] 📄 PDF
A transformer shall clearly define endianness of multi-byte words.
requirement SWS_Xfrm_00004 [SWS_Xfrm_00004] 📄 PDF
A transformer shall clearly define the ordering of the contained data elements in the complex data if it is a serializer.
requirement SWS_Xfrm_00005 [SWS_Xfrm_00005] 📄 PDF
A transformer shall clearly define the data semantics.
requirement SWS_Xfrm_00006 [SWS_Xfrm_00006] 📄 PDF
A transformer shall clearly define the source (=target) data type of the data represented by the byte array if it is a serializer.
requirement SWS_Xfrm_00007 [SWS_Xfrm_00007] 📄 PDF
A transformer shall clearly define the padding of data.
requirement SWS_Xfrm_00008 [SWS_Xfrm_00008] 📄 PDF
The way to deal with unexpected data shall be specified by the transformer specific SWS. In general the transformer shall discard the unexpected data but shall tolerate the expected fraction.
requirement SWS_Xfrm_00009 [SWS_Xfrm_00009] 📄 PDF
A transformer shall be implemented re-entrant because there exist valid configurations which can lead to a concurrent execution of a transformer.
requirement SWS_Xfrm_00010 [SWS_Xfrm_00010] 📄 PDF
A transformer which uses in-place buffering shall use the in- put buffer also as output buffer. (See [SWS_Xfrm_00040] and [SWS_Xfrm_00045])
requirement SWS_Xfrm_00011 [SWS_Xfrm_00011] 📄 PDF
A transformer which uses out-of-place buffering shall work with two buffers: One for the input to the transformer and one for its output.
requirement SWS_Xfrm_00012 [SWS_Xfrm_00012] 📄 PDF
A transformer which uses out-of-place buffering shall not alter the data of the input buffer.
requirement SWS_Xfrm_00013 [SWS_Xfrm_00013] 📄 PDF
The first transformer in the chain on the sending side shall use out-of-place buffering.
requirement SWS_Xfrm_00014 [SWS_Xfrm_00014] 📄 PDF
The last transformer in the chain on the receiving side shall use out-of-place buffering.
requirement SWS_Xfrm_00017 [SWS_Xfrm_00017] 📄 PDF
A serializer shall take data elements (complex or atomic) and serialize them into a linear representation (byte array).
requirement SWS_Xfrm_00018 [SWS_Xfrm_00018] 📄 PDF
The serialization algorithm shall be defined for all possible com- plex data input.
requirement SWS_Xfrm_00019 [SWS_Xfrm_00019] 📄 PDF
A safety transformer shall protect the inter-ECU communication of safety related SWCs.
requirement SWS_Xfrm_00020 [SWS_Xfrm_00020] 📄 PDF
A safety transformer shall ensure the correct order of data trans- missions.
requirement SWS_Xfrm_00021 [SWS_Xfrm_00021] 📄 PDF
A safety transformer shall ensure the correct content of data transmissions.
requirement SWS_Xfrm_00022 [SWS_Xfrm_00022] 📄 PDF
A security transformer shall protect the inter-ECU communica- tion of security related SWCs.
requirement SWS_Xfrm_00023 [SWS_Xfrm_00023] 📄 PDF
A security transformer shall ensure the authenticity of data trans- missions.
requirement SWS_Xfrm_00024 [SWS_Xfrm_00024] 📄 PDF
A security transformer shall ensure the integrity of data trans- missions.
requirement SWS_Xfrm_00025 [SWS_Xfrm_00025] 📄 PDF
A security transformer shall ensure the freshness of data trans- missions.
requirement SWS_Xfrm_00026 [SWS_Xfrm_00026] 📄 PDF
Transformers shall return errors to the RTE as return codes.
requirement SWS_Xfrm_00027 [SWS_Xfrm_00027] 📄 PDF
If a transformer cannot generate a valid output, it shall return a hard error.
requirement SWS_Xfrm_00028 [SWS_Xfrm_00028] 📄 PDF
If a transformer produces an output but wants to signal warning to the SWC, it shall return a soft error.
requirement SWS_Xfrm_00029 [SWS_Xfrm_00029] 📄 PDF
Each transformer class shall have its own set of abstract errors.
requirement SWS_Xfrm_00030 [SWS_Xfrm_00030] 📄 PDF
Each transformer shall return only errors which are a subset of the errors defined for the transformer's transformer class.
requirement SWS_Xfrm_00031 [SWS_Xfrm_00031] 📄 PDF
A serializer transformer shall return one of the errors shown in Table 7.1.
requirement SWS_Xfrm_00032 [SWS_Xfrm_00032] 📄 PDF
A safety transformer shall return one of the errors shown in Ta- ble 7.2.
requirement SWS_Xfrm_00033 [SWS_Xfrm_00033] 📄 PDF
A security transformer shall return one of the errors shown in Table 7.3.
requirement SWS_Xfrm_00034 [SWS_Xfrm_00034] 📄 PDF
A transformer shall use the ImplementationDataType s de- fined by RTE in the transformer's Module Interlink Types Header file.
requirement SWS_Xfrm_00037 [SWS_Xfrm_00037] 📄 PDF
The function <Mip>_<transformerId> specified in [SWS_Xfrm_00036] shall exist for the first reference in the list of ordered references transformer from a DataTransformation to a TransformationTechnology if the DataTransformation is referenced by an ISignal in the role dataTrans- formation where the ISignal references a SystemSignal which is referenced by SenderReceiverToSignalMapping , a SenderRecRecordElementMapping or a SenderRecArrayElementMapping .
requirement SWS_Xfrm_00039 [SWS_Xfrm_00039] 📄 PDF
The function <Mip>_<transformerId> specified in [SWS_Xfrm_00038] shall exist for the first reference in the list of ordered references transformer from a DataTransformation to a TransformationTechnology if the DataTransformation is referenced by an ISignal in the role dataTrans- formation where the ISignal references a SystemSignal which is referenced by ClientServerToSignalMapping in the callSignal or returnSignal .
requirement SWS_Xfrm_00041 [SWS_Xfrm_00041] 📄 PDF
The function <Mip>_<transformerId> specified in [SWS_Xfrm_00040] shall exist for the non-first reference in the list of ordered references transformer from a DataTransformation to a Transformation- Technology if the DataTransformation is referenced by an ISignal in the role dataTransformation .
requirement SWS_Xfrm_00043 [SWS_Xfrm_00043] 📄 PDF
The function <Mip>_Inv_<transformerId> specified in [SWS_Xfrm_00042] shall exist for the first reference in the list of ordered references transformer from a DataTransformation to a TransformationTechnology if the DataTransformation is referenced by an ISignal in the role dataTrans- formation where the ISignal references a SystemSignal which is referenced by SenderReceiverToSignalMapping , a SenderRecRecordElementMapping or a SenderRecArrayElementMapping .
requirement SWS_Xfrm_00045 [SWS_Xfrm_00045] 📄 PDF
The function <Mip>_Inv_<transformerId> specified in [SWS_Xfrm_00044] shall exist for the first reference in the list of ordered references transformer from a DataTransformation to a TransformationTechnology if the DataTransformation is referenced by an ISignal in the role dataTrans- formation where the ISignal references a SystemSignal which is referenced by ClientServerToSignalMapping in the callSignal or returnSignal .
requirement SWS_Xfrm_00047 [SWS_Xfrm_00047] 📄 PDF
The function <Mip>_Inv_<transformerId> specified in [SWS_Xfrm_00046] shall exist for the non-first reference in the list of ordered refer- ences transformer from a DataTransformation to a TransformationTech- nology if the DataTransformation is referenced by an ISignal in the role data- Transformation .
requirement SWS_Xfrm_00048 [SWS_Xfrm_00048] 📄 PDF
A deserializer transformer (serializer transformer on receiver side) shall be able to return all or a subset of the deserialized data to the RTE.
requirement SWS_Xfrm_00049 [SWS_Xfrm_00049] 📄 PDF
An implementation of a transformer shall be able to cope with NULL_PTR as input data. The detailed behavior shall be specified in the specific trans- former SWS.
requirement SWS_Xfrm_00050 [SWS_Xfrm_00050] 📄 PDF
A custom transformer shall return one of the custom errors spec- ified for the custom transformer. See Table 7.4.
requirement SWS_Xfrm_00051 [SWS_Xfrm_00051] 📄 PDF
If a transformer returns a hard error, it shall leave the output buffer unchanged
requirement SWS_Xfrm_00052 [SWS_Xfrm_00052] 📄 PDF
Each function that satisfies the name pattern <Mip>_<trans- formerId> (independent from the position in the transformer chain) shall implement its BswModuleEntry which has the same shortName and is referenced by Xfrm- TransformerBswModuleEntryRef .
requirement SWS_Xfrm_00053 [SWS_Xfrm_00053] 📄 PDF
Each function that satisfies the name pattern <Mip>_Inv_- <transformerId> (independent from the position in the transformer chain) shall im- plement its BswModuleEntry which has the same shortName and is referenced by XfrmInvTransformerBswModuleEntryRef .
requirement SWS_Xfrm_00054 [SWS_Xfrm_00054] 📄 PDF
If a VariableDataPrototype is mapped to multiple ISig- nal s which referr to DataTransformation s and if those DataTransformation s referr to the same TransformationTechnology s at the beginning of their list of ordered references transformer and no XfrmVariableDataPrototypeIn- stanceRef is specified for that TransformationTechnology and no ComBased- Transformer is included in the transformer chains, the execution should be optimzed. As optimization those first transformers should be executed only once and the result should be taken as input for the further transformers for those ISignal s.
requirement SWS_Xfrm_00055 [SWS_Xfrm_00055] 📄 PDF
If the transformer execution is optimized, the XfrmImplemen- tationMapping shall map all transformers which execution can be optimized to the same BswModuleEntry .
requirement SWS_Xfrm_00056 [SWS_Xfrm_00056] 📄 PDF
If the transformer execution is optimized and one function trans- forms data (independent from the position in the transformer chain) for multiple ISig- nal s, the <sigName> of the functions name pattern ( <Mip>_<transformerId> ) may be any shortName of any ISignal which is transformed by that BswModuleEn- try .
requirement SWS_Xfrm_00061 [SWS_Xfrm_00061] 📄 PDF
Type of error Related error code Error value Error code if any other API service, except Get VersionInfo is called before the transformer module was initialized with Init or after a call to De Init <MIP>_E_UNINIT 0x01 Error code if an invalid configuration set was selected <MIP>_E_INIT_FAILED 0x02 API service called with wrong parameter <MIP>_E_PARAM 0x03 API service called with invalid pointer <MIP>_E_PARAM_POINTER 0x04
requirement SWS_Xfrm_00062 [SWS_Xfrm_00062] 📄 PDF
The name pattern transformerId should be used for the APIs which belong to the BswModuleEntry referenced from a XfrmImplementation- Mapping : • Com_<ComSignalName> if no XfrmVariableDataPrototypeInstanceRef exists in the XfrmImplementationMapping and XfrmISignalRef is used in XfrmSignal and the data are sent/received using Com module. • Com_<ComSignalGroupName> if no XfrmVariableDataPrototypeIn- stanceRef exists in the XfrmImplementationMapping and XfrmISignal- GroupRef is used in XfrmSignal and the data are sent/received using Com module. • LdCom_<LdComIpduName> if no XfrmVariableDataPrototypeIn- stanceRef exists in the XfrmImplementationMapping and the data are sent/received using LdCom module. • <ComponentName>_<p>_<o> if XfrmVariableDataPrototypeIn- stanceRef exists. where • <ComponentName> is the shortName of the SwComponentPrototype which describes the context of XfrmVariableDataPrototypeInstanceRef . • <p> is the shortName of the PortPrototype which describes the context of XfrmVariableDataPrototypeInstanceRef . (This is comparable to p used in the RTE APIs.) • <o> is the shortName of the VariableDataPrototype referenced by Xfrm- VariableDataPrototypeInstanceRef . (This is comparable to o used in the RTE APIs.) • <ComSignalName> is the shortName of ComSignal which references the ISignal (using ComSystemTemplateSystemSignalRef that references ISignalToIPduMapping which references the ISignal ) that references the DataTransformation . • <ComSignalGroupName> is the shortName of ComSignalGroup which ref- erences the ISignalGroup (using ComSystemTemplateSystemSignal- GroupRef that references ISignalToIPduMapping which references the ISignalGroup ) that references the DataTransformation . General • <LdComIpduName> is the shortName of LdComIPdu which references the ISignal (using LdComSystemTemplateSignalRef that references ISignalToIPduMapping which references the ISignal ) that references the DataTransformation .
requirement SWS_Xfrm_00070 [SWS_Xfrm_00070] 📄 PDF
A transformer shall support the Extended Production Errors shown in Table 7.5.
requirement SWS_Xfrm_00071 [SWS_Xfrm_00071] 📄 PDF
The Extended Production Error XFRM_E_MALFORMED_MESSAGE shall exist for every transformer which has XFRM_- E_MALFORMED_MESSAGE set.
requirement SWS_Xfrm_00100 [SWS_Xfrm_00100] 📄 PDF
If the value of the returnValue parameter is inside the range of hard errors (0x80-0xFF), the implementation of [SWS_Xfrm_00038] shall ignore the values of the ClientServerOperation 's arguments data_1 , ... , data_n as they are not filled with meaningful values.
requirement SWS_Xfrm_00101 [SWS_Xfrm_00101] 📄 PDF
If a Trigger is mapped to multiple ISignal s which refer to DataTransformation s and if those DataTransformation s refer to the same TransformationTechnology s at the beginning of the ordered transformer- Chain and no XfrmVariableDataPrototypeInstanceRef is specified for that TransformationTechnology and no ComBasedTransformer is included in the transformer chains, the execution should be optimized.
requirement SWS_Xfrm_00103 [SWS_Xfrm_00103] 📄 PDF
The function <Mip>_<transformerId> specified in [SWS_Xfrm_00102] shall exist for the first referenced TransformationTech- nology in the ordered transformerChain of a DataTransformation if the DataTransformation is referenced by an ISignal in the role dataTransfor- mation where the ISignal references a SystemSignal which is referenced by a TriggerToSignalMapping .
requirement SWS_Xfrm_00105 [SWS_Xfrm_00105] 📄 PDF
The function <Mip>_Inv_<transformerId> specified in [SWS_Xfrm_00104] shall exist for the first referenced TransformationTechnology in the ordered transformerChain of a DataTransformation if the DataTrans- formation is referenced by an ISignal in the role dataTransformation where the ISignal references a SystemSignal which is referenced by a TriggerToSig- nalMapping .
requirement SWS_Xfrm_00106 [SWS_Xfrm_00106] 📄 PDF
The function <Mip>_<transformerId> specified in [SWS_Xfrm_00036] shall exist for the first reference in the list of ordered references transformer from a DataTransformation to a TransformationTechnology if the DataTransformation is referenced by an DataPrototypeMapping in the role firstToSecondDataTransformation .
requirement SWS_Xfrm_00107 [SWS_Xfrm_00107] 📄 PDF
The function <Mip>_Inv_<transformerId> specified in [SWS_Xfrm_00042] shall exist for the first reference in the list of ordered references transformer from a DataTransformation to a TransformationTechnology if the DataTransformation is referenced by an DataPrototypeMapping in the role firstToSecondDataTransformation .
requirement SWS_Xfrm_00108 [SWS_Xfrm_00108] 📄 PDF
A transformer which is called with NULL_PTR as input data shall not change the output buffer unless the transformer invocation shall trigger an au- tonomous error reaction (see also [SWS_Rte_07420]).
requirement SWS_Xfrm_00109 [SWS_Xfrm_00109] 📄 PDF
⌊ DRAFT g The data type Std_TransformerForward shall be defined as follows: 1 struct Std_TransformerForward { 2 Std_TransformerForwardCode errorCode, 3 Std_TransformerClass transformerClass 4 };
requirement SWS_Xfrm_00110 [SWS_Xfrm_00110] 📄 PDF
⌊ DRAFT g A safety transformer shall handle the forwarded status shown in Table 8.1.
requirement SWS_Xfrm_00111 [SWS_Xfrm_00111] 📄 PDF
⌊ DRAFT g The underlying data type of the type Std_TransformerForwardCode shall be uint8 .
requirement SWS_Xfrm_00112 [SWS_Xfrm_00112] 📄 PDF
The function <Mip>_ExtractProtocolHeaderFields spec- ified in [SWS_Xfrm_91002] shall exist in case the respective transformer processes relevant protocol header fields related to the type of a message and the type of the message result. – This function shall extract this information and provide it in a canon- ical representation via its output arguments.
requirement SWS_Xfrm_00113 [SWS_Xfrm_00113] 📄 PDF
The function <Mip>_ExtractProtocolHeaderFields spec- ified in [SWS_Xfrm_91002] shall return E_NOT_OK in case of an error (e.g., parsing er- ror) during extraction. Neither messageType nor messageResult shall be modified in this case.
requirement SWS_Xfrm_00114 [SWS_Xfrm_00114] 📄 PDF
The function <Mip>_ExtractProtocolHeaderFields spec- ified in [SWS_Xfrm_91002] shall return E_OK otherwise.
requirement SWS_Xfrm_91001 [SWS_Xfrm_91001] 📄 PDF
Module Header File Imported Type Rte Rte.h Rte_Cs_TransactionHandleType Std_Types.h Std_ExtractProtocolHeaderFieldsType Std_Types.h Std_MessageResultType Std_Types.h Std_MessageTypeType Std_Types.h Std_ReturnType Std Std_Types.h Std_VersionInfoType
requirement SWS_Xfrm_CONSTR_09094 [SWS_Xfrm_CONSTR_09094] 📄 PDF
If there exists a XfrmImplementationMapping which references an ISignal or ISignalGroup sig1 and contains the optional parameter XfrmVariableDataPrototypeInstanceRef , all XfrmImplementa- tionMapping s which reference the same ISignal or ISignalGroup sig1 shall contain a XfrmVariableDataPrototypeInstanceRef .
requirement SWS_Xfrm_CONSTR_09095 [SWS_Xfrm_CONSTR_09095] 📄 PDF
The XfrmVariableDataPrototypeIn- stanceRef shall refer to the instance of a VariableDataPrototype which belongs to a subclass of an AtomicSwComponentType .
requirement SWS_Xfrm_CONSTR_09096 [SWS_Xfrm_CONSTR_09096] 📄 PDF
If no XfrmSignal exists and hence no ISignal or ISignalGroup is referenced, XfrmVariableDataPrototypeInstanceRef shall be used to reference the instance of the VariableDataPrototype which data shall be transformed.
Request a governed re-review of this record. The record is not changed immediately.
- Record
AUTOSAR/AP/record/CP_MOD_Xfrm- Status
- unspecified
- Version
AUTOSAR/AP/record/CP_MOD_Xfrm@rel:R20-11#d62c865e- Content hash
d62c865e- Source
- https://www.autosar.org/fileadmin/standards/R20-11/CP/AUTOSAR_ASWS_TransformerGeneral.pdf#nameddest=SWS_Xfrm_00036