Skip to main content

EmbeddedNodeRuntime

Struct EmbeddedNodeRuntime 

Source
pub struct EmbeddedNodeRuntime { /* private fields */ }

Implementations§

Source§

impl EmbeddedNodeRuntime

Source

pub fn new(config: RuntimeConfig) -> EmbeddedResult<Self>

Examples found in repository?
examples/manual_tick_runtime.rs (line 8)
7fn main() {
8    let mut runtime = EmbeddedNodeRuntime::new(RuntimeConfig::default()).expect("runtime");
9    let mut store = JournaledEmbeddedStore::new();
10    let mut transport = BleShimTransport::new(BleShimConfig::default()).expect("transport");
11
12    transport.set_link_state(LinkState::Up);
13    runtime.tick(0, &mut transport, &mut store).expect("tick");
14    runtime.queue_message([0x44; 16], b"hello from manual tick").expect("queue message");
15    runtime.tick(1_000, &mut transport, &mut store).expect("tick");
16
17    while let Some(frame) = transport.take_outbound_wire() {
18        println!("outbound frame bytes={}", frame.len());
19    }
20}
Source

pub fn bootstrap<S: EmbeddedStore>(&mut self, store: &S) -> EmbeddedResult<()>

Source

pub fn tick<T: EmbeddedTransport, S: EmbeddedStore>( &mut self, now_ms: u64, transport: &mut T, store: &mut S, ) -> EmbeddedResult<()>

Examples found in repository?
examples/manual_tick_runtime.rs (line 13)
7fn main() {
8    let mut runtime = EmbeddedNodeRuntime::new(RuntimeConfig::default()).expect("runtime");
9    let mut store = JournaledEmbeddedStore::new();
10    let mut transport = BleShimTransport::new(BleShimConfig::default()).expect("transport");
11
12    transport.set_link_state(LinkState::Up);
13    runtime.tick(0, &mut transport, &mut store).expect("tick");
14    runtime.queue_message([0x44; 16], b"hello from manual tick").expect("queue message");
15    runtime.tick(1_000, &mut transport, &mut store).expect("tick");
16
17    while let Some(frame) = transport.take_outbound_wire() {
18        println!("outbound frame bytes={}", frame.len());
19    }
20}
Source

pub fn queue_message( &mut self, destination: [u8; 16], body: &[u8], ) -> EmbeddedResult<u32>

Examples found in repository?
examples/manual_tick_runtime.rs (line 14)
7fn main() {
8    let mut runtime = EmbeddedNodeRuntime::new(RuntimeConfig::default()).expect("runtime");
9    let mut store = JournaledEmbeddedStore::new();
10    let mut transport = BleShimTransport::new(BleShimConfig::default()).expect("transport");
11
12    transport.set_link_state(LinkState::Up);
13    runtime.tick(0, &mut transport, &mut store).expect("tick");
14    runtime.queue_message([0x44; 16], b"hello from manual tick").expect("queue message");
15    runtime.tick(1_000, &mut transport, &mut store).expect("tick");
16
17    while let Some(frame) = transport.take_outbound_wire() {
18        println!("outbound frame bytes={}", frame.len());
19    }
20}
Source

pub fn pending_outbound_len(&self) -> usize

Source

pub fn config(&self) -> RuntimeConfig

Source

pub fn lifecycle_state(&self) -> NodeLifecycleState

Source

pub fn set_network_provisioned(&mut self, provisioned: bool)

Source

pub fn set_ble_recovery_active(&mut self, active: bool)

Source

pub fn stats(&self) -> RuntimeStats

Source

pub fn drain_events(&mut self) -> Vec<RuntimeEvent>

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> 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> Same for T

Source§

type Output = T

Should always be Self
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.