Viam C++ SDK current
Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
viam::sdk::impl::FrameSystemClient Class Reference

gRPC client implementation of a FrameSystem service. More...

#include <framesystem_client.hpp>

+ Inheritance diagram for viam::sdk::impl::FrameSystemClient:

Public Types

using interface_type = FrameSystem
 

Public Member Functions

 FrameSystemClient (std::string name, const ViamChannel &channel)
 
const ViamChannel & channel () const
 
std::vector< frame_system_config > get_frame_system_config (const std::vector< WorldState::transform > &additional_transforms) override
 Get the configuration of every frame in the frame system.
 
pose_in_frame get_pose (const std::string &component_name, const std::string &destination_frame, const std::vector< WorldState::transform > &supplemental_transforms, const ProtoStruct &extra) override
 Get the pose of a component in the desired reference frame.
 
pose_in_frame transform_pose (const pose_in_frame &query, const std::string &destination, const std::vector< WorldState::transform > &additional_transforms) override
 Express a pose in a different reference frame.
 
std::vector< unsigned char > transform_pcd (const std::vector< unsigned char > &pcd, const std::string &source, const std::string &destination) override
 Express a point cloud in a different reference frame.
 
- Public Member Functions inherited from viam::sdk::FrameSystem
std::vector< frame_system_config > get_frame_system_config ()
 Get the configuration of every frame in the frame system.
 
pose_in_frame get_pose (const std::string &component_name)
 Get the pose of a component in the world reference frame.
 
pose_in_frame get_pose (const std::string &component_name, const std::string &destination_frame, const std::vector< WorldState::transform > &supplemental_transforms)
 Get the pose of a component in the desired reference frame.
 
pose_in_frame transform_pose (const pose_in_frame &query, const std::string &destination)
 Express a pose in a different reference frame.
 
API api () const override
 Returns the API associated with a particular resource.
 
- Public Member Functions inherited from viam::sdk::Service
Name get_resource_name () const override
 Returns the Name for a particular resource.
 
- Public Member Functions inherited from viam::sdk::Resource
 Resource (std::string name)
 
 Resource (const ResourceConfig &cfg)
 Construct from a resource config. Use this overload to ensure Viam App log filtering works immediately during object construction.
 
virtual std::string name () const
 Return the resource's name.
 
void set_log_level (log_level) const
 Set the log level for log messages originating from this Resource.
 

Additional Inherited Members

- Static Public Member Functions inherited from viam::sdk::FrameSystem
static Name public_name ()
 The full resource name of the machine's frame system. Its short name is kPublicName.
 
- Static Public Attributes inherited from viam::sdk::FrameSystem
static const std::string kPublicName
 The reserved name viam-server publishes the machine's frame system under.
 
- Protected Member Functions inherited from viam::sdk::FrameSystem
 FrameSystem (std::string name)
 
 FrameSystem (const ResourceConfig &cfg)
 
- Protected Member Functions inherited from viam::sdk::Service
 Service (std::string name)
 
 Service (const ResourceConfig &cfg)
 
- Protected Member Functions inherited from viam::sdk::Resource
Name get_resource_name (const std::string &type) const
 
- Protected Attributes inherited from viam::sdk::Resource
LogSource logger_
 

Detailed Description

gRPC client implementation of a FrameSystem service.

Member Function Documentation

◆ get_frame_system_config()

std::vector< frame_system_config > viam::sdk::impl::FrameSystemClient::get_frame_system_config ( const std::vector< WorldState::transform > & additional_transforms)
overridevirtual

Get the configuration of every frame in the frame system.

Parameters
additional_transformsExtra frames to add to the frame system for this call only.

Implements viam::sdk::FrameSystem.

◆ get_pose()

pose_in_frame viam::sdk::impl::FrameSystemClient::get_pose ( const std::string & component_name,
const std::string & destination_frame,
const std::vector< WorldState::transform > & supplemental_transforms,
const ProtoStruct & extra )
overridevirtual

Get the pose of a component in the desired reference frame.

Parameters
component_nameThe component whose pose is being requested.
destination_frameThe reference frame in which to express the pose.
supplemental_transformsExtra frames needed to compute the pose.
extraAny additional arguments to the method.

Implements viam::sdk::FrameSystem.

◆ transform_pcd()

std::vector< unsigned char > viam::sdk::impl::FrameSystemClient::transform_pcd ( const std::vector< unsigned char > & pcd,
const std::string & source,
const std::string & destination )
overridevirtual

Express a point cloud in a different reference frame.

Parameters
pcdThe point cloud, serialized in PCD format.
sourceThe reference frame the point cloud is currently expressed in.
destinationThe reference frame to express the point cloud in.
Returns
The transformed point cloud, serialized in PCD format as raw PCD bytes.

Implements viam::sdk::FrameSystem.

◆ transform_pose()

pose_in_frame viam::sdk::impl::FrameSystemClient::transform_pose ( const pose_in_frame & query,
const std::string & destination,
const std::vector< WorldState::transform > & additional_transforms )
overridevirtual

Express a pose in a different reference frame.

Parameters
queryThe pose to transform, with the frame it is currently expressed in.
destinationThe reference frame to express the pose in.
additional_transformsExtra frames needed to compute the transform.

Implements viam::sdk::FrameSystem.


The documentation for this class was generated from the following file: