|
Viam C++ SDK current
|
An encoder is a device that is hooked up to motors to report a position. More...
#include "components/encoder.hpp"
Inheritance diagram for viam::sdk::Encoder:Classes | |
| struct | position |
| reported position. More... | |
| struct | properties |
| Encodes the supported modes of this encoder. More... | |
Public Types | |
| enum class | position_type : uint8_t { unspecified = 0 , ticks_count = 1 , angle_degrees = 2 } |
Public Member Functions | |
| position | get_position (position_type position_type=position_type::unspecified) |
| Returns position of the encoder which can either be ticks since last zeroing for an incremental encoder or degrees for an absolute encoder. | |
| virtual position | get_position (const ProtoStruct &extra, position_type position_type=position_type::unspecified)=0 |
| Returns position of the encoder which can either be ticks since last zeroing for an incremental encoder or degrees for an absolute encoder. | |
| void | reset_position () |
| Reset the value of the position. | |
| virtual void | reset_position (const ProtoStruct &extra)=0 |
| Reset the value of the position. | |
| properties | get_properties () |
| Returns a list of all the position_types that are supported by the encoder. | |
| virtual properties | get_properties (const ProtoStruct &extra)=0 |
| Returns a list of all the position_types that are supported by the encoder. | |
| virtual ProtoStruct | do_command (const ProtoStruct &command)=0 |
| Send/receive arbitrary commands to the resource. | |
| std::vector< GeometryConfig > | get_geometries () |
Returns GeometryConfigs associated with the calling encoder. | |
| virtual std::vector< GeometryConfig > | get_geometries (const ProtoStruct &extra)=0 |
Returns GeometryConfigs associated with the calling encoder. | |
| 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. | |
| void | set_log_level (log_level) const |
| Set the log level for log messages originating from this Resource. | |
Protected Member Functions | |
| Encoder (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 |
Additional Inherited Members | |
Protected Attributes inherited from viam::sdk::Resource | |
| LogSource | logger_ |
An encoder is a device that is hooked up to motors to report a position.
This acts as an abstract base class to be inherited from by any drivers representing specific encoder implementations. This class cannot be used on its own.
|
overridevirtual |
Returns the API associated with a particular resource.
Implements viam::sdk::Resource.
|
pure virtual |
Send/receive arbitrary commands to the resource.
| Command | the command to execute. |
Implemented in viam::sdk::impl::EncoderClient.
|
inline |
Returns GeometryConfigs associated with the calling encoder.
GeometryConfigs associated with the component.
|
pure virtual |
Returns GeometryConfigs associated with the calling encoder.
| extra | Any additional arguments to the method. |
GeometryConfigs associated with the component. Implemented in viam::sdk::impl::EncoderClient, and viam::sdk::impl::EncoderClient.
|
pure virtual |
Returns position of the encoder which can either be ticks since last zeroing for an incremental encoder or degrees for an absolute encoder.
| extra | Any additional arguments to the method. |
| position_type | The type of position you are requesting. If the driver does not implement the requested type, this call will return an error. If position type is unspecified, the response will return a default according to the driver. |
Implemented in viam::sdk::impl::EncoderClient, and viam::sdk::impl::EncoderClient.
|
inline |
Returns position of the encoder which can either be ticks since last zeroing for an incremental encoder or degrees for an absolute encoder.
| position_type | The type of position you are requesting. If the driver does not implement the requested type, this call will return an error. If position type is unspecified, the response will return a default according to the driver. |
|
pure virtual |
Returns a list of all the position_types that are supported by the encoder.
| extra | Any additional arguments to the method. |
Implemented in viam::sdk::impl::EncoderClient, and viam::sdk::impl::EncoderClient.
|
pure virtual |
Reset the value of the position.
| extra | Any additional arguments to the method. |
Implemented in viam::sdk::impl::EncoderClient, and viam::sdk::impl::EncoderClient.