#![no_std]
#[cfg(feature = "async")]
pub use pros_async as async_runtime;
#[cfg(feature = "core")]
pub use pros_core as core;
#[cfg(feature = "devices")]
pub use pros_devices as devices;
#[cfg(feature = "math")]
pub use pros_math as math;
#[cfg(feature = "panic")]
pub use pros_panic as panic;
#[cfg(feature = "sync")]
pub use pros_sync as sync;
pub use pros_sys as sys;
pub mod prelude {
#[cfg(feature = "async")]
pub use pros_async::{async_robot, block_on, sleep, spawn, AsyncRobot};
#[cfg(feature = "core")]
pub use pros_core::{
dbg, eprint, eprintln,
error::{PortError, Result},
io::{BufRead, Read, Seek, Write},
print, println,
task::delay,
};
#[cfg(feature = "devices")]
pub use pros_devices::{
adi::{
analog::AdiAnalogIn,
digital::{AdiDigitalIn, AdiDigitalOut},
encoder::AdiEncoder,
gyro::AdiGyro,
motor::AdiMotor,
potentiometer::{AdiPotentiometer, AdiPotentiometerType},
pwm::AdiPwmOut,
solenoid::AdiSolenoid,
ultrasonic::AdiUltrasonic,
AdiDevice, AdiPort,
},
color::Rgb,
controller::Controller,
peripherals::{DynamicPeripherals, Peripherals},
position::Position,
screen::{Circle, Line, Rect, Screen, Text, TextFormat, TextPosition, TouchState},
smart::{
distance::DistanceSensor,
expander::AdiExpander,
gps::GpsSensor,
imu::InertialSensor,
link::{Link, RxLink, TxLink},
motor::{BrakeMode, Direction, Gearset, Motor, MotorControl},
optical::OpticalSensor,
rotation::RotationSensor,
vision::VisionSensor,
SmartDevice, SmartPort,
},
};
#[cfg(feature = "math")]
pub use pros_math::{feedforward::MotorFeedforwardController, pid::PidController};
#[cfg(feature = "sync")]
pub use pros_sync::{sync_robot, SyncRobot};
}