Viam C++ SDK current
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | List of all members
viam::sdk::Switch Class Referenceabstract

A Switch represents a physical switch with multiple positions. More...

#include "components/switch.hpp"

+ Inheritance diagram for viam::sdk::Switch:

Public Member Functions

void set_position (uint32_t position)
 Set the position of the switch.
 
virtual void set_position (uint32_t position, const ProtoStruct &extra)=0
 Set the position of the switch.
 
uint32_t get_position ()
 Get the current position of the switch.
 
virtual uint32_t get_position (const ProtoStruct &extra)=0
 Get the current position of the switch.
 
uint32_t get_number_of_positions ()
 Get the number of positions that the switch supports.
 
virtual uint32_t get_number_of_positions (const ProtoStruct &extra)=0
 Get the number of positions that the switch supports.
 
virtual ProtoStruct do_command (const ProtoStruct &command)=0
 Send/receive arbitrary commands to the resource.
 
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

 Switch (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_
 

Detailed Description

A Switch represents a physical switch with multiple positions.

This acts as an abstract parent class to be inherited from by any drivers representing specific switch implementations. This class cannot be used on its own.

Member Function Documentation

◆ api()

API viam::sdk::Switch::api ( ) const
overridevirtual

Returns the API associated with a particular resource.

Implements viam::sdk::Resource.

◆ do_command()

virtual ProtoStruct viam::sdk::Switch::do_command ( const ProtoStruct & command)
pure virtual

Send/receive arbitrary commands to the resource.

Parameters
commandThe command to execute.
Returns
The result of the executed command.

Implemented in viam::sdk::impl::SwitchClient.

◆ get_number_of_positions() [1/2]

uint32_t viam::sdk::Switch::get_number_of_positions ( )
inline

Get the number of positions that the switch supports.

Returns
The number of positions that the switch supports.

◆ get_number_of_positions() [2/2]

virtual uint32_t viam::sdk::Switch::get_number_of_positions ( const ProtoStruct & extra)
pure virtual

Get the number of positions that the switch supports.

Parameters
extraAny additional arguments to the method.
Returns
The number of positions that the switch supports.

Implemented in viam::sdk::impl::SwitchClient, and viam::sdk::impl::SwitchClient.

◆ get_position() [1/2]

uint32_t viam::sdk::Switch::get_position ( )
inline

Get the current position of the switch.

Returns
The current position of the switch.

◆ get_position() [2/2]

virtual uint32_t viam::sdk::Switch::get_position ( const ProtoStruct & extra)
pure virtual

Get the current position of the switch.

Parameters
extraAny additional arguments to the method.
Returns
The current position of the switch.

Implemented in viam::sdk::impl::SwitchClient, and viam::sdk::impl::SwitchClient.

◆ set_position() [1/2]

void viam::sdk::Switch::set_position ( uint32_t position)
inline

Set the position of the switch.

Parameters
positionThe position to set the switch to.

◆ set_position() [2/2]

virtual void viam::sdk::Switch::set_position ( uint32_t position,
const ProtoStruct & extra )
pure virtual

Set the position of the switch.

Parameters
positionThe position to set the switch to.
extraAny additional arguments to the method.

Implemented in viam::sdk::impl::SwitchClient, and viam::sdk::impl::SwitchClient.


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