CanKit.Pro.IsoTp Namespace¶
| Classes | |
|---|---|
| IsoTp | Factory entry point for opening IIsoTpChannel and IsoTpFunctionalClient instances. Non-instantiable. |
| IsoTpChannelOptions | Configuration for an IIsoTpChannel. |
| IsoTpDatagramReceivedEventArgs | Event data raised by DatagramReceived after a full ISO-TP PDU (Single-Frame, or First-Frame + all Consecutive Frames) has been reassembled. |
| IsoTpException | Base type for ISO-TP protocol errors surfaced by IIsoTpChannel. Derives from CanKitException so L2/L3/L4 failures can be caught uniformly across the library (NFR-006 error architecture, arc42 ADR-12). |
| IsoTpFrameCodec | Deterministic, side-effect-free codec for ISO 15765-2 (ISO-TP) Protocol-Control-Information frames on classic CAN and CAN-FD. This assembly deliberately contains no scheduler, no channel, no runtime and no vendor-adapter reference; every method here is a pure function over spans and value types. |
| IsoTpFunctionalClient | ISO-TP functional (1:N broadcast) client per ISO 15765-2 §9 / ISO 14229-1 §7.5.4. |
| IsoTpFunctionalOptions | Configuration for an IsoTpFunctionalClient. |
| IsoTpFunctionalResponse | A single ISO-TP PDU received from one ECU in response to a functional (1:N) request. |
| IsoTpOverflowException | Raised when the peer sends Overflow in response to a First Frame (SRS FR-TP-012). |
| IsoTpSendRejectedException | Raised when the driver rejected a frame the channel tried to transmit (Rejected). |
| IsoTpTimeoutException | Raised when an ISO-TP timeout (N_As, N_Bs or N_Cr) expires on a still-active PDU (SRS FR-TP-010). |
| IsoTpWaitFrameLimitExceededException | Raised when the sender receives more than WftMax consecutive Wait Flow-Control frames (SRS FR-TP-011). |
| Structs | |
|---|---|
| IsoTpEndpoint | Minimal ISO-TP endpoint value type used by IsoTpFrameCodec to decide the TX/RX CAN identifiers and whether the first payload byte is reserved for an address-extension byte. Runtime channel/session objects live outside this codec-only assembly. |
| IsoTpReceivedPdu | A reassembled inbound PDU together with the monotonic instant it was queued for delivery. |
| Pci | Parsed ISO 15765-2 Protocol-Control-Information (PCI) view produced by TryParsePci(ReadOnlySpan<byte>, IsoTpEndpoint, bool, Pci). Only the fields relevant to the parsed PciType are populated; all other fields are default-valued. |
| Interfaces | |
|---|---|
| IIsoTpChannel | A single ISO 15765-2 (ISO-TP) channel bound to one IsoTpEndpoint (TX/RX CAN-ID pair, plus addressing mode). Threading model per SRS FR-TP-016 / FR-RAW-020..023: all protocol state is owned by a single IProtocolActor mailbox, so callers may invoke SendAsync(ReadOnlyMemory<byte>, CancellationToken) concurrently from arbitrary threads and receive frames from arbitrary threads; internal state is never mutated from more than one place at a time. |
| Enums | |
|---|---|
| FlowStatus | Flow-status field of an ISO 15765-2 Flow-Control (FC) frame; low nibble of the PCI byte. |
| IsoTpAddressingMode | ISO 15765-2 addressing modes that the codec understands. The mode decides whether the first byte of the CAN payload is consumed by an address-extension byte or is available for PCI/data. |
| IsoTpTimer | ISO 15765-2 network-layer timers observed by IsoTpTimeoutException. |
| PciType | Protocol-Control-Information (PCI) type nibble used in the first byte of every ISO 15765-2 (ISO-TP) frame payload. The value is the high nibble of the PCI byte. |