Struct ConnectedSession

Source
pub struct ConnectedSession {
Show 13 fields pub connection_id: u32, pub o_to_t_connection_id: u32, pub t_to_o_connection_id: u32, pub connection_serial: u16, pub originator_vendor_id: u16, pub originator_serial: u32, pub timeout_multiplier: u8, pub rpi: u32, pub o_to_t_params: ConnectionParameters, pub t_to_o_params: ConnectionParameters, pub established_at: Instant, pub is_active: bool, pub sequence_count: u16,
}
Expand description

Connected session information for Class 3 explicit messaging

Allen-Bradley PLCs often require connected sessions for certain operations like STRING writes. This structure maintains the connection state.

Fields§

§connection_id: u32

Connection ID assigned by the PLC

§o_to_t_connection_id: u32

Our connection ID (originator -> target)

§t_to_o_connection_id: u32

PLC’s connection ID (target -> originator)

§connection_serial: u16

Connection serial number for this session

§originator_vendor_id: u16

Originator vendor ID (our vendor ID)

§originator_serial: u32

Originator serial number (our serial number)

§timeout_multiplier: u8

Connection timeout multiplier

§rpi: u32

Requested Packet Interval (RPI) in microseconds

§o_to_t_params: ConnectionParameters

Connection parameters for O->T direction

§t_to_o_params: ConnectionParameters

Connection parameters for T->O direction

§established_at: Instant

Timestamp when connection was established

§is_active: bool

Whether this connection is currently active

§sequence_count: u16

Sequence counter for connected messages (increments with each message)

Implementations§

Source§

impl ConnectedSession

Source

pub fn new(connection_serial: u16) -> Self

Creates a new connected session with default parameters

Source

pub fn with_config(connection_serial: u16, config_id: u8) -> Self

Creates a connected session with alternative parameters for different PLCs

Trait Implementations§

Source§

impl Clone for ConnectedSession

Source§

fn clone(&self) -> ConnectedSession

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for ConnectedSession

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> Ungil for T
where T: Send,