pub struct AsyncLocalBridge { /* private fields */ }Expand description
Async client for interacting with RealFlight simulators via RealFlight Link.
§Examples
use realflight_bridge::{AsyncBridge, AsyncLocalBridge, ControlInputs};
use std::time::Duration;
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
// Simple: use defaults
let bridge = AsyncLocalBridge::new().await?;
// Or with custom configuration
let bridge = AsyncLocalBridge::builder()
.connect_timeout(Duration::from_millis(10))
.build()
.await?;
// Create sample control inputs
let mut inputs = ControlInputs::default();
inputs.channels[0] = 0.5; // Neutral aileron
inputs.channels[2] = 1.0; // Full throttle
// Exchange data with the simulator
let state = bridge.exchange_data(&inputs).await?;
println!("Current airspeed: {:?}", state.airspeed);
Ok(())
}Implementations§
Source§impl AsyncLocalBridge
impl AsyncLocalBridge
Sourcepub async fn new() -> Result<Self, BridgeError>
pub async fn new() -> Result<Self, BridgeError>
Creates a new AsyncLocalBridge with default settings.
Sourcepub fn builder() -> AsyncLocalBridgeBuilder
pub fn builder() -> AsyncLocalBridgeBuilder
Returns a builder for custom configuration.
Sourcepub fn statistics(&self) -> Statistics
pub fn statistics(&self) -> Statistics
Returns a snapshot of current statistics.
Trait Implementations§
Source§impl AsyncBridge for AsyncLocalBridge
impl AsyncBridge for AsyncLocalBridge
Source§async fn exchange_data(
&self,
control: &ControlInputs,
) -> Result<SimulatorState, BridgeError>
async fn exchange_data( &self, control: &ControlInputs, ) -> Result<SimulatorState, BridgeError>
Exchanges flight control data with the RealFlight simulator. Read more
Source§async fn enable_rc(&self) -> Result<(), BridgeError>
async fn enable_rc(&self) -> Result<(), BridgeError>
Reverts the RealFlight simulator to use its original Spektrum (or built-in) RC input.
Source§async fn disable_rc(&self) -> Result<(), BridgeError>
async fn disable_rc(&self) -> Result<(), BridgeError>
Switches the RealFlight simulator’s input to the external RealFlight Link controller.
Source§async fn reset_aircraft(&self) -> Result<(), BridgeError>
async fn reset_aircraft(&self) -> Result<(), BridgeError>
Resets the currently loaded aircraft in the RealFlight simulator.
Auto Trait Implementations§
impl !Freeze for AsyncLocalBridge
impl !RefUnwindSafe for AsyncLocalBridge
impl Send for AsyncLocalBridge
impl Sync for AsyncLocalBridge
impl Unpin for AsyncLocalBridge
impl UnwindSafe for AsyncLocalBridge
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more