Struct tf_rosrust::TfListener
source · pub struct TfListener { /* private fields */ }
Expand description
This struct tries to be the same as the C++ version of TransformListener
. Use this struct to lookup transforms.
Example usage:
use tf_rosrust::TfListener;
rosrust::init("listener");
let listener = TfListener::new();
let rate = rosrust::rate(1.0);
while rosrust::is_ok() {
let tf = listener.lookup_transform("camera", "base_link", rosrust::Time::new());
println!("{tf:?}");
rate.sleep();
}
Do note that unlike the C++ variant of the TfListener, only one TfListener can be created at a time. Like its C++ counterpart,
it must be scoped to exist through the lifetime of the program. One way to do this is using an Arc
or RwLock
.
Implementations§
source§impl TfListener
impl TfListener
pub fn new_with_buffer(tf_buffer: TfBuffer) -> Self
sourcepub fn lookup_transform(
&self,
from: &str,
to: &str,
time: Time
) -> Result<TransformStamped, TfError>
pub fn lookup_transform( &self, from: &str, to: &str, time: Time ) -> Result<TransformStamped, TfError>
Looks up a transform within the tree at a given time.
sourcepub fn lookup_transform_with_time_travel(
&self,
from: &str,
time1: Time,
to: &str,
time2: Time,
fixed_frame: &str
) -> Result<TransformStamped, TfError>
pub fn lookup_transform_with_time_travel( &self, from: &str, time1: Time, to: &str, time2: Time, fixed_frame: &str ) -> Result<TransformStamped, TfError>
Looks up a transform within the tree at a given time.
Trait Implementations§
Auto Trait Implementations§
impl RefUnwindSafe for TfListener
impl Send for TfListener
impl Sync for TfListener
impl Unpin for TfListener
impl UnwindSafe for TfListener
Blanket Implementations§
§impl<T> Pointable for T
impl<T> Pointable for T
§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere SS: SubsetOf<SP>,
§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self
from the equivalent element of its
superset. Read more§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self
is actually part of its subset T
(and can be converted to it).§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset
but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self
to the equivalent element of its superset.