uds.can.abstract_addressing_information

Abstract definition of Addressing Information handler.

Module Contents

Classes

PacketAIParamsAlias

Alias of Addressing Information parameters of CAN packets stream.

AbstractCanAddressingInformation

Abstract definition of CAN Entity (either server or client) Addressing Information.

class uds.can.abstract_addressing_information.PacketAIParamsAlias[source]

Bases: TypedDict

Inheritance diagram of uds.can.abstract_addressing_information.PacketAIParamsAlias

Alias of Addressing Information parameters of CAN packets stream.

Initialize self. See help(type(self)) for accurate signature.

addressing_format: uds.can.addressing_format.CanAddressingFormat
addressing_type: uds.transmission_attributes.AddressingType
can_id: int
target_address: int | None
source_address: int | None
address_extension: int | None
class uds.can.abstract_addressing_information.AbstractCanAddressingInformation(rx_physical, tx_physical, rx_functional, tx_functional)[source]

Bases: abc.ABC

Inheritance diagram of uds.can.abstract_addressing_information.AbstractCanAddressingInformation

Abstract definition of CAN Entity (either server or client) Addressing Information.

Configure Addressing Information of a CAN Entity.

Parameters:
  • rx_physical (InputAIParamsAlias) – Addressing Information parameters used for incoming physically addressed communication.

  • tx_physical (InputAIParamsAlias) – Addressing Information parameters used for outgoing physically addressed communication.

  • rx_functional (InputAIParamsAlias) – Addressing Information parameters used for incoming functionally addressed communication.

  • tx_functional (InputAIParamsAlias) – Addressing Information parameters used for outgoing functionally addressed communication.

class InputAIParamsAlias[source]

Bases: TypedDict

Inheritance diagram of uds.can.abstract_addressing_information.AbstractCanAddressingInformation.InputAIParamsAlias

Alias of Addressing Information configuration parameters.

Initialize self. See help(type(self)) for accurate signature.

can_id: int
target_address: int
source_address: int
address_extension: int
abstract property addressing_format: uds.can.addressing_format.CanAddressingFormat

CAN Addressing format used.

Return type:

uds.can.addressing_format.CanAddressingFormat

property rx_packets_physical_ai: PacketAIParamsAlias

Addressing Information parameters of incoming physically addressed CAN packets.

Return type:

PacketAIParamsAlias

property tx_packets_physical_ai: PacketAIParamsAlias

Addressing Information parameters of outgoing physically addressed CAN packets.

Return type:

PacketAIParamsAlias

property rx_packets_functional_ai: PacketAIParamsAlias

Addressing Information parameters of incoming functionally addressed CAN packets.

Return type:

PacketAIParamsAlias

property tx_packets_functional_ai: PacketAIParamsAlias

Addressing Information parameters of outgoing functionally addressed CAN packets.

Return type:

PacketAIParamsAlias

ADDRESSING_FORMAT_NAME: str = 'addressing_format'

Name of CAN Addressing Format parameter in Addressing Information.

ADDRESSING_TYPE_NAME: str

Name of Addressing Type parameter in Addressing Information.

CAN_ID_NAME: str = 'can_id'

Name of CAN Identifier parameter in Addressing Information.

TARGET_ADDRESS_NAME: str

Name of Target Address parameter in Addressing Information.

SOURCE_ADDRESS_NAME: str

Name of Source Address parameter in Addressing Information.

ADDRESS_EXTENSION_NAME: str = 'address_extension'

Name of Address Extension parameter in Addressing Information.

AI_DATA_BYTES_NUMBER: int

Number of CAN Frame data bytes that are used to carry Addressing Information.

abstract classmethod validate_packet_ai(addressing_type, can_id=None, target_address=None, source_address=None, address_extension=None)[source]

Validate Addressing Information parameters of a CAN packet.

Parameters:
  • addressing_type (uds.transmission_attributes.AddressingType) – Addressing type to validate.

  • can_id (Optional[int]) – CAN Identifier value to validate.

  • target_address (Optional[int]) – Target Address value to validate.

  • source_address (Optional[int]) – Source Address value to validate.

  • address_extension (Optional[int]) – Address Extension value to validate.

Raises:
  • InconsistentArgumentsError – Provided values are not consistent with each other (cannot be used together) or with the Addressing format used.

  • UnusedArgumentError – Provided parameter is not supported by Addressing format used.

Returns:

Normalized dictionary with the provided information.

Return type:

PacketAIParamsAlias