Regilo
A simple C++ library for controlling the Neato XV robot and the Hokuyo scanner.
regilo::INeatoController Class Referenceabstract

The INeatoController interface is used for the NeatoController class. More...

#include <neatocontroller.hpp>

Inheritance diagram for regilo::INeatoController:
regilo::IScanController regilo::IController regilo::NeatoController< ProtocolController >

Public Member Functions

virtual ~INeatoController ()=default
 Default destructor.
 
virtual bool getTestMode () const =0
 Get whether the Neato is in the test mode. More...
 
virtual void setTestMode (bool testMode)=0
 Set or unset the test mode. More...
 
virtual bool getLdsRotation () const =0
 Get whether the Neato has LDS rotation on or off. More...
 
virtual void setLdsRotation (bool ldsRotation)=0
 Set LDS rotation on or off. More...
 
virtual void setMotor (int left, int right, int speed)=0
 Set the specified motor to run in a direction at a requested speed. More...
 
virtual std::string getTime ()=0
 Get the current scheduler time. More...
 
- Public Member Functions inherited from regilo::IScanController
virtual ~IScanController ()=default
 Default destructor.
 
virtual ScanData getScan (bool fromDevice=true)=0
 Get a scan from the device. More...
 
- Public Member Functions inherited from regilo::IController
virtual ~IController ()=default
 Default destructor.
 
virtual void connect (const std::string &endpoint)=0
 Connect the controller to a device. More...
 
virtual bool isConnected () const =0
 Test if the controller is connected. More...
 
virtual std::string getEndpoint () const =0
 Get the endpoint of device. More...
 
virtual std::shared_ptr< ILoggetLog ()=0
 Get the current Log. More...
 
virtual std::shared_ptr< const ILoggetLog () const =0
 Get the current Log (a const variant). More...
 
virtual void setLog (std::shared_ptr< ILog > log)=0
 Set a Log (it can be shared between more controllers). More...
 
virtual std::string sendCommand (const std::string &command)=0
 Send a command to the device. More...
 

Detailed Description

The INeatoController interface is used for the NeatoController class.

Member Function Documentation

virtual bool regilo::INeatoController::getLdsRotation ( ) const
pure virtual

Get whether the Neato has LDS rotation on or off.

Returns
True if the LIDAR is rotating.

Implemented in regilo::NeatoController< ProtocolController >.

virtual bool regilo::INeatoController::getTestMode ( ) const
pure virtual

Get whether the Neato is in the test mode.

Returns
True if the Neato is in the test mode.

Implemented in regilo::NeatoController< ProtocolController >.

virtual std::string regilo::INeatoController::getTime ( )
pure virtual

Get the current scheduler time.

Returns
"DayOfWeek HourOf24:Min:Sec" (example: "Sunday 13:57:09").

Implemented in regilo::NeatoController< ProtocolController >.

virtual void regilo::INeatoController::setLdsRotation ( bool  ldsRotation)
pure virtual

Set LDS rotation on or off.

Parameters
ldsRotationTrue for starting the LIDAR rotation.

Implemented in regilo::NeatoController< ProtocolController >.

virtual void regilo::INeatoController::setMotor ( int  left,
int  right,
int  speed 
)
pure virtual

Set the specified motor to run in a direction at a requested speed.

Parameters
leftDistance in millimeters to drive the left wheel (pos = forward, neg = backward).
rightDistance in millimeters to drive the right wheel (pos = forward, neg = backward).
speedSpeed in millimeters/second.

Implemented in regilo::NeatoController< ProtocolController >.

virtual void regilo::INeatoController::setTestMode ( bool  testMode)
pure virtual

Set or unset the test mode.

Parameters
testModeTrue for setting the test mode.

Implemented in regilo::NeatoController< ProtocolController >.


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