pub trait ActionServerRawHandleFfi: Sealed + Sized {
// Required methods
fn invalid() -> Self;
fn is_invalid(&self) -> bool;
fn handle_id(&self) -> HandleId;
fn publish_feedback_raw(
&self,
executor: &mut Executor<'_>,
goal_id: &GoalUuid,
feedback_data: &[u8],
) -> Result<(), NodeError>;
fn complete_goal_raw(
&self,
executor: &mut Executor<'_>,
goal_id: &GoalUuid,
status: GoalStatusCode,
result_data: &[u8],
) -> Result<(), NodeError>;
fn set_goal_status(
&self,
executor: &mut Executor<'_>,
goal_id: &GoalUuid,
status: GoalStatusCode,
);
fn active_goal_count(&self, executor: &Executor<'_>) -> usize;
fn goal_exists(&self, executor: &Executor<'_>, goal_id: &GoalUuid) -> bool;
fn expire_goals(&self, executor: &mut Executor<'_>) -> usize;
fn for_each_active_goal(
&self,
executor: &Executor<'_>,
f: impl FnMut(&RawActiveGoal),
);
fn goal_status(
&self,
executor: &Executor<'_>,
goal_id: &GoalUuid,
) -> Option<GoalStatusCode>;
}Expand description
ActionServerRawHandle’s methods, for nros-c, nros-cpp and the nros runtime. Sealed.
Required Methods§
Sourcefn invalid() -> Self
fn invalid() -> Self
The FFI entry point; see ActionServerRawHandle::invalid in action.rs
(a const fn there; a trait method cannot be one).
Sourcefn is_invalid(&self) -> bool
fn is_invalid(&self) -> bool
The FFI entry point; see ActionServerRawHandle::is_invalid in action.rs.
Sourcefn handle_id(&self) -> HandleId
fn handle_id(&self) -> HandleId
The FFI entry point; see ActionServerRawHandle::handle_id in action.rs.
Sourcefn publish_feedback_raw(
&self,
executor: &mut Executor<'_>,
goal_id: &GoalUuid,
feedback_data: &[u8],
) -> Result<(), NodeError>
fn publish_feedback_raw( &self, executor: &mut Executor<'_>, goal_id: &GoalUuid, feedback_data: &[u8], ) -> Result<(), NodeError>
The FFI entry point; see ActionServerRawHandle::publish_feedback_raw in action.rs.
Sourcefn complete_goal_raw(
&self,
executor: &mut Executor<'_>,
goal_id: &GoalUuid,
status: GoalStatusCode,
result_data: &[u8],
) -> Result<(), NodeError>
fn complete_goal_raw( &self, executor: &mut Executor<'_>, goal_id: &GoalUuid, status: GoalStatusCode, result_data: &[u8], ) -> Result<(), NodeError>
The FFI entry point; see ActionServerRawHandle::complete_goal_raw in action.rs.
Sourcefn set_goal_status(
&self,
executor: &mut Executor<'_>,
goal_id: &GoalUuid,
status: GoalStatusCode,
)
fn set_goal_status( &self, executor: &mut Executor<'_>, goal_id: &GoalUuid, status: GoalStatusCode, )
The FFI entry point; see ActionServerRawHandle::set_goal_status in action.rs.
Sourcefn active_goal_count(&self, executor: &Executor<'_>) -> usize
fn active_goal_count(&self, executor: &Executor<'_>) -> usize
The FFI entry point; see ActionServerRawHandle::active_goal_count in action.rs.
Sourcefn goal_exists(&self, executor: &Executor<'_>, goal_id: &GoalUuid) -> bool
fn goal_exists(&self, executor: &Executor<'_>, goal_id: &GoalUuid) -> bool
The FFI entry point; see ActionServerRawHandle::goal_exists in action.rs.
Sourcefn expire_goals(&self, executor: &mut Executor<'_>) -> usize
fn expire_goals(&self, executor: &mut Executor<'_>) -> usize
The FFI entry point; see ActionServerRawHandle::expire_goals in action.rs.
Sourcefn for_each_active_goal(
&self,
executor: &Executor<'_>,
f: impl FnMut(&RawActiveGoal),
)
fn for_each_active_goal( &self, executor: &Executor<'_>, f: impl FnMut(&RawActiveGoal), )
The FFI entry point; see ActionServerRawHandle::for_each_active_goal in action.rs.
Sourcefn goal_status(
&self,
executor: &Executor<'_>,
goal_id: &GoalUuid,
) -> Option<GoalStatusCode>
fn goal_status( &self, executor: &Executor<'_>, goal_id: &GoalUuid, ) -> Option<GoalStatusCode>
The FFI entry point; see ActionServerRawHandle::goal_status in action.rs.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".