Struct comms_service::CommsControlBlock
source · [−]pub struct CommsControlBlock<Connection: Clone> {
pub read: Option<Arc<ReadFn<Connection>>>,
pub write: Vec<Arc<WriteFn<Connection>>>,
pub read_conn: Connection,
pub write_conn: Connection,
pub max_num_handlers: u16,
pub timeout: u64,
pub ip: Ipv4Addr,
pub downlink_ports: Option<Vec<u16>>,
}
Expand description
Struct that holds configuration data to allow users to set up a Communication Service.
Fields
read: Option<Arc<ReadFn<Connection>>>
Function pointer to a function that defines how to read from a gateway.
write: Vec<Arc<WriteFn<Connection>>>
Function pointers to functions that define methods for writing data over a gateway.
read_conn: Connection
Gateway connection to read from.
write_conn: Connection
Gateway connection to write to.
max_num_handlers: u16
Maximum number of concurrent message handlers allowed.
timeout: u64
Timeout for the completion of GraphQL operations within message handlers (in milliseconds).
ip: Ipv4Addr
IP address of the computer that is running the communication service.
downlink_ports: Option<Vec<u16>>
Optional list of ports used by downlink endpoints that send messages to the ground. Each port in the list will be used by one downlink endpoint.
Implementations
sourceimpl<Connection: Clone> CommsControlBlock<Connection>
impl<Connection: Clone> CommsControlBlock<Connection>
sourcepub fn new(
read: Option<Arc<ReadFn<Connection>>>,
write: Vec<Arc<WriteFn<Connection>>>,
read_conn: Connection,
write_conn: Connection,
config: CommsConfig
) -> CommsResult<Self>
pub fn new(
read: Option<Arc<ReadFn<Connection>>>,
write: Vec<Arc<WriteFn<Connection>>>,
read_conn: Connection,
write_conn: Connection,
config: CommsConfig
) -> CommsResult<Self>
Creates a new instance of the CommsControlBlock
Trait Implementations
sourceimpl<Connection: Clone + Clone> Clone for CommsControlBlock<Connection>
impl<Connection: Clone + Clone> Clone for CommsControlBlock<Connection>
sourcefn clone(&self) -> CommsControlBlock<Connection>
fn clone(&self) -> CommsControlBlock<Connection>
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
Auto Trait Implementations
impl<Connection> !RefUnwindSafe for CommsControlBlock<Connection>
impl<Connection> Send for CommsControlBlock<Connection> where
Connection: Send,
impl<Connection> Sync for CommsControlBlock<Connection> where
Connection: Sync,
impl<Connection> Unpin for CommsControlBlock<Connection> where
Connection: Unpin,
impl<Connection> !UnwindSafe for CommsControlBlock<Connection>
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more