MobileBaseVelocityControl_nws_yarp
: A device which allows a client to control the velocity of a mobile base from YARP. The device opens two ports: a streaming port /exampleName:i
for receiving streaming commands, and a rpc port /exampleName:rpc
for rpc connection with a MobileBaseVelocityControl_nwc_yarp
client device.
More...
#include <mobileBaseVelocityControl_nws_yarp/MobileBaseVelocityControl_nws_yarp.h>
Public Member Functions | |
void | onRead (yarp::dev::MobileBaseVelocity &v) override |
![]() | |
BufferedPort () | |
Constructor. More... | |
BufferedPort (Port &port) | |
Wrap an existing unbuffered port. More... | |
virtual | ~BufferedPort () |
Destructor. More... | |
bool | open (const std::string &name) override |
Start port operation, with a specific name, with automatically-chosen network parameters. More... | |
bool | open (const Contact &contact, bool registerName=true) override |
Start port operation with user-chosen network parameters. More... | |
bool | addOutput (const std::string &name) override |
Add an output connection to the specified port. More... | |
bool | addOutput (const std::string &name, const std::string &carrier) override |
Add an output connection to the specified port, using a specified carrier. More... | |
bool | addOutput (const Contact &contact) override |
Add an output connection to the specified port, using specified network parameters. More... | |
void | close () override |
Stop port activity. More... | |
void | interrupt () override |
Interrupt any current reads or writes attached to the port. More... | |
void | resume () override |
Put the port back in an operative state after interrupt() has been called. More... | |
int | getPendingReads () override |
Get the number of objects ready to be read. More... | |
Contact | where () const override |
Returns information about how this port can be reached. More... | |
std::string | getName () const override |
Get name of port. More... | |
yarp::dev::MobileBaseVelocity & | prepare () |
Access the object which will be transmitted by the next call to yarp::os::BufferedPort::write. More... | |
bool | unprepare () |
Give the last prepared object back to YARP without writing it. More... | |
void | write (bool forceStrict=false) |
Write the current object being returned by BufferedPort::prepare. More... | |
void | writeStrict () |
Write the current object being returned by BufferedPort::prepare, waiting until any previous sends are complete. More... | |
void | waitForWrite () |
Wait for any pending writes to complete. More... | |
void | setStrict (bool strict=true) override |
Call this to strictly keep all messages, or allow old ones to be quietly dropped. More... | |
yarp::dev::MobileBaseVelocity * | read (bool shouldWait=true) override |
Read an available object from the port. More... | |
yarp::dev::MobileBaseVelocity * | lastRead () override |
Get the last data returned by read() More... | |
bool | isClosed () override |
Returns whether the port associated with this reader has been closed. More... | |
void | setReplier (PortReader &reader) override |
If a message is received that requires a reply, use this handler. More... | |
void | setReader (PortReader &reader) override |
Set an external reader for port data. More... | |
void | setAdminReader (PortReader &reader) override |
Set an external reader for unrecognized administrative port messages. More... | |
void | onRead (yarp::dev::MobileBaseVelocity &datum) override |
Callback method. More... | |
void | useCallback (TypedReaderCallback< yarp::dev::MobileBaseVelocity > &callback) override |
Set an object whose onRead method will be called when data is available. More... | |
void | useCallback () |
Use own onRead() method as callback. More... | |
void | disableCallback () override |
Remove a callback set up with useCallback() More... | |
bool | setEnvelope (PortWriter &envelope) override |
Set an envelope (e.g., a timestamp) to the next message which will be sent. More... | |
bool | getEnvelope (PortReader &envelope) override |
Get the envelope information (e.g., a timestamp) from the last message received on the port. More... | |
int | getInputCount () override |
Determine how many connections are arriving into this port. More... | |
int | getOutputCount () override |
Determine how many output connections this port has. More... | |
bool | isWriting () override |
Report whether the port is currently writing data. More... | |
void | getReport (PortReport &reporter) override |
Get information on the state of the port - connections etc. More... | |
void | setReporter (PortReport &reporter) override |
Set a callback to be called upon any future connections and disconnections to/from the port. More... | |
void | resetReporter () override |
Remove the callback which is called upon any future connections and disconnections to/from the port. More... | |
void * | acquire () override |
Take control of the last object read. More... | |
void | release (void *handle) override |
Return control to YARP of an object previously taken control of with the acquire() method. More... | |
void | setTargetPeriod (double period) override |
Try to provide data periodically. More... | |
Type | getType () override |
Get the type of data the port has committed to send/receive. More... | |
void | promiseType (const Type &typ) override |
Commit the port to a particular type of data. More... | |
void | setInputMode (bool expectInput) override |
Configure the port to allow or forbid inputs. More... | |
void | setOutputMode (bool expectOutput) override |
Configure the port to allow or forbid outputs. More... | |
void | setRpcMode (bool expectRpc) override |
Configure the port to be RPC only. More... | |
Property * | acquireProperties (bool readOnly) override |
Access unstructured port properties. More... | |
void | releaseProperties (Property *prop) override |
End access unstructured port properties. More... | |
void | includeNodeInName (bool flag) override |
Choose whether to prepend a node name (if one is available) to the port's name. More... | |
bool | setCallbackLock (yarp::os::Mutex *mutex) override |
Add a lock to use when invoking callbacks. More... | |
bool | setCallbackLock (std::mutex *mutex) override |
Add a lock to use when invoking callbacks. More... | |
bool | removeCallbackLock () override |
Remove a lock on callbacks added with setCallbackLock() More... | |
bool | lockCallback () override |
Lock callbacks until unlockCallback() is called. More... | |
bool | tryLockCallback () override |
Try to lock callbacks until unlockCallback() is called. More... | |
void | unlockCallback () override |
Unlock callbacks. More... | |
![]() | |
virtual | ~Contactable () |
Destructor. More... | |
virtual bool | open (const std::string &name)=0 |
Start port operation, with a specific name, with automatically-chosen network parameters. More... | |
virtual bool | open (const Contact &contact, bool registerName=true)=0 |
Start port operation with user-chosen network parameters. More... | |
virtual bool | addOutput (const std::string &name)=0 |
Add an output connection to the specified port. More... | |
virtual bool | addOutput (const std::string &name, const std::string &carrier)=0 |
Add an output connection to the specified port, using a specified carrier. More... | |
virtual bool | addOutput (const Contact &contact)=0 |
Add an output connection to the specified port, using specified network parameters. More... | |
virtual void | close ()=0 |
Stop port activity. More... | |
virtual void | interrupt ()=0 |
Interrupt any current reads or writes attached to the port. More... | |
virtual void | resume ()=0 |
Put the port back in an operative state after interrupt() has been called. More... | |
virtual Contact | where () const =0 |
Returns information about how this port can be reached. More... | |
virtual std::string | getName () const |
Get name of port. More... | |
virtual bool | setEnvelope (PortWriter &envelope)=0 |
Set an envelope (e.g., a timestamp) to the next message which will be sent. More... | |
virtual bool | getEnvelope (PortReader &envelope)=0 |
Get the envelope information (e.g., a timestamp) from the last message received on the port. More... | |
virtual int | getInputCount ()=0 |
Determine how many connections are arriving into this port. More... | |
virtual int | getOutputCount ()=0 |
Determine how many output connections this port has. More... | |
virtual void | getReport (PortReport &reporter)=0 |
Get information on the state of the port - connections etc. More... | |
virtual void | setReporter (PortReport &reporter)=0 |
Set a callback to be called upon any future connections and disconnections to/from the port. More... | |
virtual void | resetReporter ()=0 |
Remove the callback which is called upon any future connections and disconnections to/from the port. More... | |
virtual bool | isWriting ()=0 |
Report whether the port is currently writing data. More... | |
virtual void | setReader (PortReader &reader)=0 |
Set an external reader for port data. More... | |
virtual void | setAdminReader (PortReader &reader)=0 |
Set an external reader for unrecognized administrative port messages. More... | |
virtual void | setInputMode (bool expectInput)=0 |
Configure the port to allow or forbid inputs. More... | |
virtual void | setOutputMode (bool expectOutput)=0 |
Configure the port to allow or forbid outputs. More... | |
virtual void | setRpcMode (bool expectRpc)=0 |
Configure the port to be RPC only. More... | |
virtual Type | getType ()=0 |
Get the type of data the port has committed to send/receive. More... | |
virtual void | promiseType (const Type &typ)=0 |
Commit the port to a particular type of data. More... | |
virtual Property * | acquireProperties (bool readOnly)=0 |
Access unstructured port properties. More... | |
virtual void | releaseProperties (Property *prop)=0 |
End access unstructured port properties. More... | |
virtual void | includeNodeInName (bool flag)=0 |
Choose whether to prepend a node name (if one is available) to the port's name. More... | |
void | setReadOnly () |
Shorthand for setInputMode(true), setOutputMode(false), setRpcMode(false) More... | |
void | setWriteOnly () |
Shorthand for setInputMode(false), setOutputMode(true), setRpcMode(false) More... | |
void | setRpcServer () |
Shorthand for setInputMode(true), setOutputMode(false), setRpcMode(true) More... | |
void | setRpcClient () |
Shorthand for setInputMode(false), setOutputMode(true), setRpcMode(true) More... | |
virtual bool | setCallbackLock (yarp::os::Mutex *mutex)=0 |
Add a lock to use when invoking callbacks. More... | |
virtual bool | setCallbackLock (std::mutex *mutex=nullptr)=0 |
Add a lock to use when invoking callbacks. More... | |
virtual bool | removeCallbackLock ()=0 |
Remove a lock on callbacks added with setCallbackLock() More... | |
virtual bool | lockCallback ()=0 |
Lock callbacks until unlockCallback() is called. More... | |
virtual bool | tryLockCallback ()=0 |
Try to lock callbacks until unlockCallback() is called. More... | |
virtual void | unlockCallback ()=0 |
Unlock callbacks. More... | |
![]() | |
virtual void | setStrict (bool strict=true)=0 |
Call this to strictly keep all messages, or allow old ones to be quietly dropped. More... | |
virtual yarp::dev::MobileBaseVelocity * | read (bool shouldWait=true)=0 |
Read an available object from the port. More... | |
virtual void | interrupt ()=0 |
Abort any read operation currently in progress. More... | |
virtual yarp::dev::MobileBaseVelocity * | lastRead ()=0 |
Get the last data returned by read() More... | |
virtual bool | isClosed ()=0 |
Returns whether the port associated with this reader has been closed. More... | |
virtual void | useCallback (TypedReaderCallback< yarp::dev::MobileBaseVelocity > &callback)=0 |
Set an object whose onRead method will be called when data is available. More... | |
virtual void | disableCallback ()=0 |
Remove a callback set up with useCallback() More... | |
virtual int | getPendingReads ()=0 |
Check how many messages are waiting to be read. More... | |
virtual | ~TypedReader ()=default |
Destructor. More... | |
virtual std::string | getName () const=0 |
Get name of port being read from. More... | |
virtual void | setReplier (PortReader &reader)=0 |
If a message is received that requires a reply, use this handler. More... | |
virtual void * | acquire ()=0 |
Take control of the last object read. More... | |
virtual void | release (void *handle)=0 |
Return control to YARP of an object previously taken control of with the acquire() method. More... | |
virtual void | setTargetPeriod (double period)=0 |
Try to provide data periodically. More... | |
![]() | |
virtual | ~TypedReaderCallback () |
Destructor. More... | |
virtual void | onRead (yarp::dev::MobileBaseVelocity &datum) |
Callback method. More... | |
virtual void | onRead (yarp::dev::MobileBaseVelocity &datum, const yarp::os::TypedReader< yarp::dev::MobileBaseVelocity > &reader) |
Callback method. More... | |
Public Attributes | |
double | m_timeout = 0.1 |
yarp::dev::Nav2D::INavigation2DVelocityActions * | m_iVel = nullptr |
Additional Inherited Members | |
![]() | |
typedef yarp::dev::MobileBaseVelocity | ContentType |
The type of content stored by this BufferedPort. More... | |
MobileBaseVelocityControl_nws_yarp
: A device which allows a client to control the velocity of a mobile base from YARP. The device opens two ports: a streaming port /exampleName:i
for receiving streaming commands, and a rpc port /exampleName:rpc
for rpc connection with a MobileBaseVelocityControl_nwc_yarp
client device.
Parameters required by this device are:
Parameter name | SubParameter | Type | Units | Default Value | Required | Description | Notes |
---|---|---|---|---|---|---|---|
local | - | string | - | - | Yes | Full name of the port opened by the device. For both ports (i.e. :rpc, :i) the corresponding suffix is automatically added | |
subdevice | - | string | - | - | No | name of the subdevice to instantiate | when used, parameters for the subdevice must be provided as well |
Example usage: yarpdev –device mobileBaseVelocityControl_nws_yarp –subdevice velocityInputHandler –local /input1
Definition at line 42 of file MobileBaseVelocityControl_nws_yarp.h.
|
override |
Definition at line 27 of file MobileBaseVelocityControl_nws_yarp.cpp.
yarp::dev::Nav2D::INavigation2DVelocityActions* VelocityInputPortProcessor::m_iVel = nullptr |
Definition at line 46 of file MobileBaseVelocityControl_nws_yarp.h.
double VelocityInputPortProcessor::m_timeout = 0.1 |
Definition at line 45 of file MobileBaseVelocityControl_nws_yarp.h.