Viam C++ SDK current
|
gRPC client implementation of a Base
component.
More...
#include <base_client.hpp>
Public Types | |
using | interface_type = Base |
Public Member Functions | |
BaseClient (std::string name, std::shared_ptr< grpc::Channel > channel) | |
void | move_straight (int64_t distance_mm, double mm_per_sec, const ProtoStruct &extra) override |
Move a robot's base in a straight line by a given distance. This method blocks until completed or cancelled. | |
void | spin (double angle_deg, double degs_per_sec, const ProtoStruct &extra) override |
Spins a robot's base by an given angle, expressed in degrees. This method blocks until completed or cancelled. | |
void | set_power (const Vector3 &linear, const Vector3 &angular, const ProtoStruct &extra) override |
Sets the linear and angular power of a base -1 -> 1 in terms of power for each direction. | |
void | set_velocity (const Vector3 &linear, const Vector3 &angular, const ProtoStruct &extra) override |
Set the linear and angular velocity of a base. | |
void | stop (const ProtoStruct &extra) override |
Stops a resource from running. | |
std::vector< GeometryConfig > | get_geometries (const ProtoStruct &extra) override |
Returns GeometryConfig s associated with the calling base. | |
properties | get_properties (const ProtoStruct &extra) override |
Returns physical properties of the base (width, turning radius, wheel circumference) | |
bool | is_moving () override |
Reports if the base is in motion. | |
ProtoStruct | do_command (const ProtoStruct &command) override |
Send/receive arbitrary commands to the resource. | |
std::vector< GeometryConfig > | get_geometries () |
Returns GeometryConfig s associated with the calling base. | |
virtual std::vector< GeometryConfig > | get_geometries (const ProtoStruct &extra)=0 |
Returns GeometryConfig s associated with the calling base. | |
properties | get_properties () |
Returns physical properties of the base (width, turning radius, wheel circumference) | |
virtual properties | get_properties (const ProtoStruct &extra)=0 |
Returns physical properties of the base (width, turning radius, wheel circumference) | |
void | move_straight (int64_t distance_mm, double mm_per_sec) |
Move a robot's base in a straight line by a given distance. This method blocks until completed or cancelled. | |
virtual void | move_straight (int64_t distance_mm, double mm_per_sec, const ProtoStruct &extra)=0 |
Move a robot's base in a straight line by a given distance. This method blocks until completed or cancelled. | |
void | set_power (const Vector3 &linear, const Vector3 &angular) |
Sets the linear and angular power of a base -1 -> 1 in terms of power for each direction. | |
virtual void | set_power (const Vector3 &linear, const Vector3 &angular, const ProtoStruct &extra)=0 |
Sets the linear and angular power of a base -1 -> 1 in terms of power for each direction. | |
void | set_velocity (const Vector3 &linear, const Vector3 &angular) |
Set the linear and angular velocity of a base. | |
virtual void | set_velocity (const Vector3 &linear, const Vector3 &angular, const ProtoStruct &extra)=0 |
Set the linear and angular velocity of a base. | |
void | spin (double angle_deg, double degs_per_sec) |
Spins a robot's base by an given angle, expressed in degrees. This method blocks until completed or cancelled. | |
virtual void | spin (double angle_deg, double degs_per_sec, const ProtoStruct &extra)=0 |
Spins a robot's base by an given angle, expressed in degrees. This method blocks until completed or cancelled. | |
Public Member Functions inherited from viam::sdk::Base | |
void | move_straight (int64_t distance_mm, double mm_per_sec) |
Move a robot's base in a straight line by a given distance. This method blocks until completed or cancelled. | |
void | spin (double angle_deg, double degs_per_sec) |
Spins a robot's base by an given angle, expressed in degrees. This method blocks until completed or cancelled. | |
void | set_power (const Vector3 &linear, const Vector3 &angular) |
Sets the linear and angular power of a base -1 -> 1 in terms of power for each direction. | |
void | set_velocity (const Vector3 &linear, const Vector3 &angular) |
Set the linear and angular velocity of a base. | |
properties | get_properties () |
Returns physical properties of the base (width, turning radius, wheel circumference) | |
std::vector< GeometryConfig > | get_geometries () |
Returns GeometryConfig s associated with the calling base. | |
API | api () const override |
Returns the API associated with a particular resource. | |
Public Member Functions inherited from viam::sdk::Component | |
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) | |
virtual std::string | name () const |
Return the resource's name. | |
Public Member Functions inherited from viam::sdk::Stoppable | |
void | stop () |
Stops a resource from running. | |
Additional Inherited Members | |
Static Public Member Functions inherited from viam::sdk::Stoppable | |
static void | stop_if_stoppable (const std::shared_ptr< Resource > &resource, const ProtoStruct &extra) |
Stops a Resource if it is Stoppable. | |
static void | stop_if_stoppable (const std::shared_ptr< Resource > &resource) |
Stops a Resource if it is Stoppable. | |
Protected Member Functions inherited from viam::sdk::Base | |
Base (std::string name) | |
Protected Member Functions inherited from viam::sdk::Component | |
Component (std::string name) | |
Protected Member Functions inherited from viam::sdk::Resource | |
Name | get_resource_name (const std::string &type) const |
gRPC client implementation of a Base
component.
|
overridevirtual |
Send/receive arbitrary commands to the resource.
Command | the command to execute. |
Implements viam::sdk::Base.
|
inline |
Returns GeometryConfig
s associated with the calling base.
GeometryConfig
s associated with the component.
|
overridevirtual |
Returns GeometryConfig
s associated with the calling base.
extra | Any additional arguments to the method. |
GeometryConfig
s associated with the component. Implements viam::sdk::Base.
|
virtual |
Returns GeometryConfig
s associated with the calling base.
extra | Any additional arguments to the method. |
GeometryConfig
s associated with the component. Implements viam::sdk::Base.
|
overridevirtual |
Returns physical properties of the base (width, turning radius, wheel circumference)
extra | Any additional arguments to the method |
Implements viam::sdk::Base.
|
virtual |
Returns physical properties of the base (width, turning radius, wheel circumference)
extra | Any additional arguments to the method |
Implements viam::sdk::Base.
|
overridevirtual |
Reports if the base is in motion.
Implements viam::sdk::Base.
|
inline |
Move a robot's base in a straight line by a given distance. This method blocks until completed or cancelled.
distance_mm | Desired travel distance in millimeters |
mm_per_sec | Desired travel velocity in millimeters/second |
|
overridevirtual |
Move a robot's base in a straight line by a given distance. This method blocks until completed or cancelled.
distance_mm | Desired travel distance in millimeters |
mm_per_sec | Desired travel velocity in millimeters/second |
extra | Any additional arguments to the method |
Implements viam::sdk::Base.
|
virtual |
Move a robot's base in a straight line by a given distance. This method blocks until completed or cancelled.
distance_mm | Desired travel distance in millimeters |
mm_per_sec | Desired travel velocity in millimeters/second |
extra | Any additional arguments to the method |
Implements viam::sdk::Base.
Sets the linear and angular power of a base -1 -> 1 in terms of power for each direction.
linear | Desired linear power percentage (-1 <= % <= 1) for each direction |
angular | Desired angular power percentage (-1 <= % <= 1) for each direction |
|
overridevirtual |
Sets the linear and angular power of a base -1 -> 1 in terms of power for each direction.
linear | Desired linear power percentage (-1 <= % <= 1) for each direction |
angular | Desired angular power percentage (-1 <= % <= 1) for each direction |
extra | Any additional arguments to the method |
Implements viam::sdk::Base.
|
virtual |
Sets the linear and angular power of a base -1 -> 1 in terms of power for each direction.
linear | Desired linear power percentage (-1 <= % <= 1) for each direction |
angular | Desired angular power percentage (-1 <= % <= 1) for each direction |
extra | Any additional arguments to the method |
Implements viam::sdk::Base.
Set the linear and angular velocity of a base.
linear | Desired linear velocity in mm per second for each direction |
angular | Desired angular velocity in degrees per second for each direction |
|
overridevirtual |
Set the linear and angular velocity of a base.
linear | Desired linear velocity in mm per second for each direction |
angular | Desired angular velocity in degrees per second for each direction |
extra | Any additional arguments to the method |
Implements viam::sdk::Base.
|
virtual |
Set the linear and angular velocity of a base.
linear | Desired linear velocity in mm per second for each direction |
angular | Desired angular velocity in degrees per second for each direction |
extra | Any additional arguments to the method |
Implements viam::sdk::Base.
|
inline |
Spins a robot's base by an given angle, expressed in degrees. This method blocks until completed or cancelled.
angle_deg | Desired angle |
degs_per_sec | Desired angular velocity |
|
overridevirtual |
Spins a robot's base by an given angle, expressed in degrees. This method blocks until completed or cancelled.
angle_deg | Desired angle |
degs_per_sec | Desired angular velocity |
extra | Any additional arguments to the method |
Implements viam::sdk::Base.
|
virtual |
Spins a robot's base by an given angle, expressed in degrees. This method blocks until completed or cancelled.
angle_deg | Desired angle |
degs_per_sec | Desired angular velocity |
extra | Any additional arguments to the method |
Implements viam::sdk::Base.
|
overridevirtual |
Stops a resource from running.
extra | Extra arguments to pass to the resource's stop method. |
Implements viam::sdk::Stoppable.