GetCANMessage
This reference collection includes Vector documentation reproduced with permission. Snippets may require configuration-specific symbols and are not all standalone programs. Sources and validation limits.
Syntax
long GetCANMessage(this, message * msg);
Function
This function can only be called inside of anon PDUhandler. The function will return in its second parameter the CAN (or CAN-FD) frame, the PDU was contained.
Parameters
this Handle to the currently handled (received) PDU object.
msg
Reference to amessage objectthat will contain the overall received message data and information.
Return Values
0: Data access successful.
-1: Wrong bus type; CAN message is not available.
-2: Message does not support this info.
-3: The PDU object is invalid.
-4: PDU is not of Rx type.
-5: Parameter too small (e.g. array has too less bytes)
-6: Message or PDU is not available (any more)
Reference example from the CANoe 12 help. Check the required configuration, database objects and API availability in your installed version; this is not a recorded compiler or runtime test.
on PDU PDU_A
{
message * aMsg_01;
long result;
result = GetCANMessage(this, aMsg_01); // PDU is assumed to be sent on CAN
if (result == 0)
{
write("Received PDU 'PDU_A' in message with CAN ID %lu", aMsg_01.ID);
}
else
{
write("Error accessing PDU!");
}
}
Related APIs
on PDU | GetFrFrame | GetEthernetPacket | GetPDUsTPIPv6SrcAddr | GetPDUsTPIPv6DstAddr | GetPDUsTPIPv4SrcAddr | GetPDUsTPIPv4DstAddr | GetPDUsTPUDPSrcPort | GetPDUsTPUDPDstPort | GetPDUsTPTCPSrcPort | GetPDUsTPTCPDstPort