Trait mav_sdk::grpc::offboard::OffboardService [−][src]
pub trait OffboardService: Send + Sync + 'static {
fn start<'life0, 'async_trait>(
&'life0 self,
request: Request<StartRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<StartResponse>, Status>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait;
fn stop<'life0, 'async_trait>(
&'life0 self,
request: Request<StopRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<StopResponse>, Status>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait;
fn is_active<'life0, 'async_trait>(
&'life0 self,
request: Request<IsActiveRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<IsActiveResponse>, Status>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait;
fn set_attitude<'life0, 'async_trait>(
&'life0 self,
request: Request<SetAttitudeRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<SetAttitudeResponse>, Status>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait;
fn set_actuator_control<'life0, 'async_trait>(
&'life0 self,
request: Request<SetActuatorControlRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<SetActuatorControlResponse>, Status>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait;
fn set_attitude_rate<'life0, 'async_trait>(
&'life0 self,
request: Request<SetAttitudeRateRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<SetAttitudeRateResponse>, Status>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait;
fn set_position_ned<'life0, 'async_trait>(
&'life0 self,
request: Request<SetPositionNedRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<SetPositionNedResponse>, Status>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait;
fn set_velocity_body<'life0, 'async_trait>(
&'life0 self,
request: Request<SetVelocityBodyRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<SetVelocityBodyResponse>, Status>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait;
fn set_velocity_ned<'life0, 'async_trait>(
&'life0 self,
request: Request<SetVelocityNedRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<SetVelocityNedResponse>, Status>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait;
fn set_position_velocity_ned<'life0, 'async_trait>(
&'life0 self,
request: Request<SetPositionVelocityNedRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<SetPositionVelocityNedResponse>, Status>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait;
}
Expand description
Generated trait containing gRPC methods that should be implemented for use with OffboardServiceServer.
Required methods
Start offboard control.
Stop offboard control.
The vehicle will be put into Hold mode: https://docs.px4.io/en/flight_modes/hold.html
Check if offboard control is active.
True means that the vehicle is in offboard mode and we are actively sending setpoints.
fn set_attitude<'life0, 'async_trait>(
&'life0 self,
request: Request<SetAttitudeRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<SetAttitudeResponse>, Status>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn set_attitude<'life0, 'async_trait>(
&'life0 self,
request: Request<SetAttitudeRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<SetAttitudeResponse>, Status>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
Set the attitude in terms of roll, pitch and yaw in degrees with thrust.
fn set_actuator_control<'life0, 'async_trait>(
&'life0 self,
request: Request<SetActuatorControlRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<SetActuatorControlResponse>, Status>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn set_actuator_control<'life0, 'async_trait>(
&'life0 self,
request: Request<SetActuatorControlRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<SetActuatorControlResponse>, Status>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
Set direct actuator control values to groups #0 and #1.
First 8 controls will go to control group 0, the following 8 controls to control group 1 (if actuator_control.num_controls more than 8).
fn set_attitude_rate<'life0, 'async_trait>(
&'life0 self,
request: Request<SetAttitudeRateRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<SetAttitudeRateResponse>, Status>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn set_attitude_rate<'life0, 'async_trait>(
&'life0 self,
request: Request<SetAttitudeRateRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<SetAttitudeRateResponse>, Status>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
Set the attitude rate in terms of pitch, roll and yaw angular rate along with thrust.
fn set_position_ned<'life0, 'async_trait>(
&'life0 self,
request: Request<SetPositionNedRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<SetPositionNedResponse>, Status>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn set_position_ned<'life0, 'async_trait>(
&'life0 self,
request: Request<SetPositionNedRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<SetPositionNedResponse>, Status>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
Set the position in NED coordinates and yaw.
fn set_velocity_body<'life0, 'async_trait>(
&'life0 self,
request: Request<SetVelocityBodyRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<SetVelocityBodyResponse>, Status>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn set_velocity_body<'life0, 'async_trait>(
&'life0 self,
request: Request<SetVelocityBodyRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<SetVelocityBodyResponse>, Status>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
Set the velocity in body coordinates and yaw angular rate. Not available for fixed-wing aircraft.
fn set_velocity_ned<'life0, 'async_trait>(
&'life0 self,
request: Request<SetVelocityNedRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<SetVelocityNedResponse>, Status>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn set_velocity_ned<'life0, 'async_trait>(
&'life0 self,
request: Request<SetVelocityNedRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<SetVelocityNedResponse>, Status>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
Set the velocity in NED coordinates and yaw. Not available for fixed-wing aircraft.
fn set_position_velocity_ned<'life0, 'async_trait>(
&'life0 self,
request: Request<SetPositionVelocityNedRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<SetPositionVelocityNedResponse>, Status>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn set_position_velocity_ned<'life0, 'async_trait>(
&'life0 self,
request: Request<SetPositionVelocityNedRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<SetPositionVelocityNedResponse>, Status>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
Set the position in NED coordinates, with the velocity to be used as feed-forward.