Fawkes API  Fawkes Development Version
fawkes::NavigatorInterface Class Reference

NavigatorInterface Fawkes BlackBoard Interface. More...

#include <>>

Inheritance diagram for fawkes::NavigatorInterface:

List of all members.

Classes

class  CartesianGotoMessage
 CartesianGotoMessage Fawkes BlackBoard Interface Message. More...
struct  NavigatorInterface_data_t
 Internal data storage, do NOT modify! More...
class  ObstacleMessage
 ObstacleMessage Fawkes BlackBoard Interface Message. More...
class  PlaceGotoMessage
 PlaceGotoMessage Fawkes BlackBoard Interface Message. More...
class  PolarGotoMessage
 PolarGotoMessage Fawkes BlackBoard Interface Message. More...
class  ResetOdometryMessage
 ResetOdometryMessage Fawkes BlackBoard Interface Message. More...
class  SetEscapingMessage
 SetEscapingMessage Fawkes BlackBoard Interface Message. More...
class  SetMaxVelocityMessage
 SetMaxVelocityMessage Fawkes BlackBoard Interface Message. More...
class  SetSecurityDistanceMessage
 SetSecurityDistanceMessage Fawkes BlackBoard Interface Message. More...
class  StopMessage
 StopMessage Fawkes BlackBoard Interface Message. More...
class  TurnMessage
 TurnMessage Fawkes BlackBoard Interface Message. More...

Public Member Functions

virtual bool message_valid (const Message *message) const
 Check if message is valid and can be enqueued.
uint32_t flags () const
 Get flags value.
void set_flags (const uint32_t new_flags)
 Set flags value.
size_t maxlenof_flags () const
 Get maximum length of flags value.
float x () const
 Get x value.
void set_x (const float new_x)
 Set x value.
size_t maxlenof_x () const
 Get maximum length of x value.
float y () const
 Get y value.
void set_y (const float new_y)
 Set y value.
size_t maxlenof_y () const
 Get maximum length of y value.
float dest_x () const
 Get dest_x value.
void set_dest_x (const float new_dest_x)
 Set dest_x value.
size_t maxlenof_dest_x () const
 Get maximum length of dest_x value.
float dest_y () const
 Get dest_y value.
void set_dest_y (const float new_dest_y)
 Set dest_y value.
size_t maxlenof_dest_y () const
 Get maximum length of dest_y value.
float dest_ori () const
 Get dest_ori value.
void set_dest_ori (const float new_dest_ori)
 Set dest_ori value.
size_t maxlenof_dest_ori () const
 Get maximum length of dest_ori value.
float dest_dist () const
 Get dest_dist value.
void set_dest_dist (const float new_dest_dist)
 Set dest_dist value.
size_t maxlenof_dest_dist () const
 Get maximum length of dest_dist value.
uint32_t msgid () const
 Get msgid value.
void set_msgid (const uint32_t new_msgid)
 Set msgid value.
size_t maxlenof_msgid () const
 Get maximum length of msgid value.
bool is_final () const
 Get final value.
void set_final (const bool new_final)
 Set final value.
size_t maxlenof_final () const
 Get maximum length of final value.
uint32_t error_code () const
 Get error_code value.
void set_error_code (const uint32_t new_error_code)
 Set error_code value.
size_t maxlenof_error_code () const
 Get maximum length of error_code value.
float max_velocity () const
 Get max_velocity value.
void set_max_velocity (const float new_max_velocity)
 Set max_velocity value.
size_t maxlenof_max_velocity () const
 Get maximum length of max_velocity value.
float security_distance () const
 Get security_distance value.
void set_security_distance (const float new_security_distance)
 Set security_distance value.
size_t maxlenof_security_distance () const
 Get maximum length of security_distance value.
bool is_escaping_enabled () const
 Get escaping_enabled value.
void set_escaping_enabled (const bool new_escaping_enabled)
 Set escaping_enabled value.
size_t maxlenof_escaping_enabled () const
 Get maximum length of escaping_enabled value.
virtual Messagecreate_message (const char *type) const
 Create message based on type name.
virtual void copy_values (const Interface *other)
 Copy values from other interface.
virtual const char * enum_tostring (const char *enumtype, int val) const
 Convert arbitrary enum value to string.

Static Public Attributes

static const uint32_t ERROR_NONE = 0u
 ERROR_NONE constant.
static const uint32_t ERROR_MOTOR = 1u
 ERROR_MOTOR constant.
static const uint32_t ERROR_OBSTRUCTION = 2u
 ERROR_OBSTRUCTION constant.
static const uint32_t ERROR_UNKNOWN_PLACE = 4u
 ERROR_UNKNOWN_PLACE constant.
static const uint32_t FLAG_NONE = 0u
 FLAG_NONE constant.
static const uint32_t FLAG_CART_GOTO = 1u
 FLAG_CART_GOTO constant.
static const uint32_t FLAG_POLAR_GOTO = 2u
 FLAG_POLAR_GOTO constant.
static const uint32_t FLAG_PLACE_GOTO = 4u
 FLAG_PLACE_GOTO constant.
static const uint32_t FLAG_UPDATES_DEST_DIST = 8u
 FLAG_UPDATES_DEST_DIST constant.
static const uint32_t FLAG_SECURITY_DISTANCE = 16u
 FLAG_SECURITY_DISTANCE constant.
static const uint32_t FLAG_ESCAPING = 32u
 FLAG_ESCAPING constant.

Detailed Description

NavigatorInterface Fawkes BlackBoard Interface.

The navigator interface is used by the navigator to export information about the current status of the navigator and to define all messages by which the navigator can be instructed.

There are three coordinate systems, the robot system which is a right-handed cartesian coordinate system with the robot in its origin, X axis pointing forward, Y pointing to the left and Z pointing upwards. The second coordinate system is the so-called navigator system. It is a coordinate system similar to the robot system, but the origin is defined on the initialization of the navigator. The last system is the odometry system. It is again a similar system, but the origin is reset from time to time and the robot's position in this system gives the odometry deltas.


Member Function Documentation

void fawkes::NavigatorInterface::copy_values ( const Interface other) [virtual]

Copy values from other interface.

Parameters:
otherother interface to copy values from

Implements fawkes::Interface.

Definition at line 572 of file NavigatorInterface.cpp.

References fawkes::Message::type(), and fawkes::Interface::type().

Message * fawkes::NavigatorInterface::create_message ( const char *  type) const [virtual]

Create message based on type name.

This will create a new message of the given type. The type must be given without the InterfaceName:: prefix but just the plain class name of the message.

Parameters:
typemessage type
Returns:
message of the given type, empty
Exceptions:
UnknownTypeExceptionthrown if this interface cannot create a message of the given type.

Implements fawkes::Interface.

Definition at line 539 of file NavigatorInterface.cpp.

float fawkes::NavigatorInterface::dest_dist ( ) const

Get dest_dist value.

Distance to destination in m.

Returns:
dest_dist value

Definition at line 309 of file NavigatorInterface.cpp.

float fawkes::NavigatorInterface::dest_ori ( ) const

Get dest_ori value.

Orientation of the current destination, or 0.0 if no target has been set.

Returns:
dest_ori value

Definition at line 278 of file NavigatorInterface.cpp.

float fawkes::NavigatorInterface::dest_x ( ) const

Get dest_x value.

X-coordinate of the current destination, or 0.0 if no target has been set.

Returns:
dest_x value

Definition at line 216 of file NavigatorInterface.cpp.

float fawkes::NavigatorInterface::dest_y ( ) const

Get dest_y value.

Y-coordinate of the current destination, or 0.0 if no target has been set.

Returns:
dest_y value

Definition at line 247 of file NavigatorInterface.cpp.

const char * fawkes::NavigatorInterface::enum_tostring ( const char *  enumtype,
int  val 
) const [virtual]

Convert arbitrary enum value to string.

Given the string representation of the enum type and the value this method returns the string representation of the specific value, or the string UNKNOWN if the value is not defined. An exception is thrown if the enum type is invalid.

Parameters:
enumtypeenum type as string
valvalue to convert
Returns:
string representation of value
Exceptions:
UnknownTypeExceptionthrown if enumtype is not specified for interface.

Implements fawkes::Interface.

Definition at line 583 of file NavigatorInterface.cpp.

uint32_t fawkes::NavigatorInterface::error_code ( ) const

Get error_code value.

Failure code set if final is true. 0 if no error occured, an error code from ERROR_* constants otherwise (or a bit-wise combination).

Returns:
error_code value

Definition at line 408 of file NavigatorInterface.cpp.

uint32_t fawkes::NavigatorInterface::flags ( ) const

Get flags value.

Bit-wise combination of FLAG_* constants denoting navigator component features.

Returns:
flags value

Definition at line 122 of file NavigatorInterface.cpp.

bool fawkes::NavigatorInterface::is_escaping_enabled ( ) const

Get escaping_enabled value.

This is used for navigation components with integrated collision avoidance, to check whether the navigator should stop when an obstacle obstructs the path, or if it should escape.

Returns:
escaping_enabled value

Definition at line 508 of file NavigatorInterface.cpp.

bool fawkes::NavigatorInterface::is_final ( ) const

Get final value.

True, if the last goto command has been finished, false if it is still running

Returns:
final value

Definition at line 374 of file NavigatorInterface.cpp.

float fawkes::NavigatorInterface::max_velocity ( ) const

Get max_velocity value.

Maximum velocity

Returns:
max_velocity value

Definition at line 441 of file NavigatorInterface.cpp.

size_t fawkes::NavigatorInterface::maxlenof_dest_dist ( ) const

Get maximum length of dest_dist value.

Returns:
length of dest_dist value, can be length of the array or number of maximum number of characters for a string

Definition at line 319 of file NavigatorInterface.cpp.

size_t fawkes::NavigatorInterface::maxlenof_dest_ori ( ) const

Get maximum length of dest_ori value.

Returns:
length of dest_ori value, can be length of the array or number of maximum number of characters for a string

Definition at line 288 of file NavigatorInterface.cpp.

size_t fawkes::NavigatorInterface::maxlenof_dest_x ( ) const

Get maximum length of dest_x value.

Returns:
length of dest_x value, can be length of the array or number of maximum number of characters for a string

Definition at line 226 of file NavigatorInterface.cpp.

size_t fawkes::NavigatorInterface::maxlenof_dest_y ( ) const

Get maximum length of dest_y value.

Returns:
length of dest_y value, can be length of the array or number of maximum number of characters for a string

Definition at line 257 of file NavigatorInterface.cpp.

size_t fawkes::NavigatorInterface::maxlenof_error_code ( ) const

Get maximum length of error_code value.

Returns:
length of error_code value, can be length of the array or number of maximum number of characters for a string

Definition at line 418 of file NavigatorInterface.cpp.

size_t fawkes::NavigatorInterface::maxlenof_escaping_enabled ( ) const

Get maximum length of escaping_enabled value.

Returns:
length of escaping_enabled value, can be length of the array or number of maximum number of characters for a string

Definition at line 518 of file NavigatorInterface.cpp.

size_t fawkes::NavigatorInterface::maxlenof_final ( ) const

Get maximum length of final value.

Returns:
length of final value, can be length of the array or number of maximum number of characters for a string

Definition at line 384 of file NavigatorInterface.cpp.

size_t fawkes::NavigatorInterface::maxlenof_flags ( ) const

Get maximum length of flags value.

Returns:
length of flags value, can be length of the array or number of maximum number of characters for a string

Definition at line 132 of file NavigatorInterface.cpp.

size_t fawkes::NavigatorInterface::maxlenof_max_velocity ( ) const

Get maximum length of max_velocity value.

Returns:
length of max_velocity value, can be length of the array or number of maximum number of characters for a string

Definition at line 451 of file NavigatorInterface.cpp.

size_t fawkes::NavigatorInterface::maxlenof_msgid ( ) const

Get maximum length of msgid value.

Returns:
length of msgid value, can be length of the array or number of maximum number of characters for a string

Definition at line 351 of file NavigatorInterface.cpp.

size_t fawkes::NavigatorInterface::maxlenof_security_distance ( ) const

Get maximum length of security_distance value.

Returns:
length of security_distance value, can be length of the array or number of maximum number of characters for a string

Definition at line 483 of file NavigatorInterface.cpp.

size_t fawkes::NavigatorInterface::maxlenof_x ( ) const

Get maximum length of x value.

Returns:
length of x value, can be length of the array or number of maximum number of characters for a string

Definition at line 164 of file NavigatorInterface.cpp.

size_t fawkes::NavigatorInterface::maxlenof_y ( ) const

Get maximum length of y value.

Returns:
length of y value, can be length of the array or number of maximum number of characters for a string

Definition at line 195 of file NavigatorInterface.cpp.

bool fawkes::NavigatorInterface::message_valid ( const Message message) const [virtual]

Check if message is valid and can be enqueued.

Parameters:
messageMessage to check
Returns:
true if the message is valid, false otherwise.

Implements fawkes::Interface.

Definition at line 1654 of file NavigatorInterface.cpp.

uint32_t fawkes::NavigatorInterface::msgid ( ) const

Get msgid value.

The ID of the message that is currently being processed, or 0 if no message is being processed.

Returns:
msgid value

Definition at line 341 of file NavigatorInterface.cpp.

float fawkes::NavigatorInterface::security_distance ( ) const

Get security_distance value.

Security distance to keep to obstacles

Returns:
security_distance value

Definition at line 473 of file NavigatorInterface.cpp.

void fawkes::NavigatorInterface::set_dest_dist ( const float  new_dest_dist)

Set dest_dist value.

Distance to destination in m.

Parameters:
new_dest_distnew dest_dist value

Definition at line 329 of file NavigatorInterface.cpp.

References fawkes::Interface::data_changed.

void fawkes::NavigatorInterface::set_dest_ori ( const float  new_dest_ori)

Set dest_ori value.

Orientation of the current destination, or 0.0 if no target has been set.

Parameters:
new_dest_orinew dest_ori value

Definition at line 298 of file NavigatorInterface.cpp.

References fawkes::Interface::data_changed.

Referenced by RosNavigatorThread::loop().

void fawkes::NavigatorInterface::set_dest_x ( const float  new_dest_x)

Set dest_x value.

X-coordinate of the current destination, or 0.0 if no target has been set.

Parameters:
new_dest_xnew dest_x value

Definition at line 236 of file NavigatorInterface.cpp.

References fawkes::Interface::data_changed.

Referenced by RosNavigatorThread::loop().

void fawkes::NavigatorInterface::set_dest_y ( const float  new_dest_y)

Set dest_y value.

Y-coordinate of the current destination, or 0.0 if no target has been set.

Parameters:
new_dest_ynew dest_y value

Definition at line 267 of file NavigatorInterface.cpp.

References fawkes::Interface::data_changed.

Referenced by RosNavigatorThread::loop().

void fawkes::NavigatorInterface::set_error_code ( const uint32_t  new_error_code)

Set error_code value.

Failure code set if final is true. 0 if no error occured, an error code from ERROR_* constants otherwise (or a bit-wise combination).

Parameters:
new_error_codenew error_code value

Definition at line 430 of file NavigatorInterface.cpp.

References fawkes::Interface::data_changed.

void fawkes::NavigatorInterface::set_escaping_enabled ( const bool  new_escaping_enabled)

Set escaping_enabled value.

This is used for navigation components with integrated collision avoidance, to check whether the navigator should stop when an obstacle obstructs the path, or if it should escape.

Parameters:
new_escaping_enablednew escaping_enabled value

Definition at line 531 of file NavigatorInterface.cpp.

References fawkes::Interface::data_changed.

void fawkes::NavigatorInterface::set_final ( const bool  new_final)

Set final value.

True, if the last goto command has been finished, false if it is still running

Parameters:
new_finalnew final value

Definition at line 395 of file NavigatorInterface.cpp.

References fawkes::Interface::data_changed.

void fawkes::NavigatorInterface::set_flags ( const uint32_t  new_flags)

Set flags value.

Bit-wise combination of FLAG_* constants denoting navigator component features.

Parameters:
new_flagsnew flags value

Definition at line 143 of file NavigatorInterface.cpp.

References fawkes::Interface::data_changed.

void fawkes::NavigatorInterface::set_max_velocity ( const float  new_max_velocity)

Set max_velocity value.

Maximum velocity

Parameters:
new_max_velocitynew max_velocity value

Definition at line 461 of file NavigatorInterface.cpp.

References fawkes::Interface::data_changed.

Referenced by RosNavigatorThread::loop().

void fawkes::NavigatorInterface::set_msgid ( const uint32_t  new_msgid)

Set msgid value.

The ID of the message that is currently being processed, or 0 if no message is being processed.

Parameters:
new_msgidnew msgid value

Definition at line 362 of file NavigatorInterface.cpp.

References fawkes::Interface::data_changed.

Referenced by RosNavigatorThread::loop().

void fawkes::NavigatorInterface::set_security_distance ( const float  new_security_distance)

Set security_distance value.

Security distance to keep to obstacles

Parameters:
new_security_distancenew security_distance value

Definition at line 494 of file NavigatorInterface.cpp.

References fawkes::Interface::data_changed.

Referenced by RosNavigatorThread::loop().

void fawkes::NavigatorInterface::set_x ( const float  new_x)

Set x value.

Current X-coordinate in the navigator coordinate system.

Parameters:
new_xnew x value

Definition at line 174 of file NavigatorInterface.cpp.

References fawkes::Interface::data_changed.

void fawkes::NavigatorInterface::set_y ( const float  new_y)

Set y value.

Current Y-coordinate in the navigator coordinate system.

Parameters:
new_ynew y value

Definition at line 205 of file NavigatorInterface.cpp.

References fawkes::Interface::data_changed.

float fawkes::NavigatorInterface::x ( ) const

Get x value.

Current X-coordinate in the navigator coordinate system.

Returns:
x value

Definition at line 154 of file NavigatorInterface.cpp.

float fawkes::NavigatorInterface::y ( ) const

Get y value.

Current Y-coordinate in the navigator coordinate system.

Returns:
y value

Definition at line 185 of file NavigatorInterface.cpp.


Member Data Documentation

const uint32_t fawkes::NavigatorInterface::ERROR_MOTOR = 1u [static]

ERROR_MOTOR constant.

Definition at line 41 of file NavigatorInterface.h.

const uint32_t fawkes::NavigatorInterface::ERROR_NONE = 0u [static]

ERROR_NONE constant.

Definition at line 40 of file NavigatorInterface.h.

const uint32_t fawkes::NavigatorInterface::ERROR_OBSTRUCTION = 2u [static]

ERROR_OBSTRUCTION constant.

Definition at line 42 of file NavigatorInterface.h.

ERROR_UNKNOWN_PLACE constant.

Definition at line 43 of file NavigatorInterface.h.

const uint32_t fawkes::NavigatorInterface::FLAG_CART_GOTO = 1u [static]

FLAG_CART_GOTO constant.

Definition at line 45 of file NavigatorInterface.h.

const uint32_t fawkes::NavigatorInterface::FLAG_ESCAPING = 32u [static]

FLAG_ESCAPING constant.

Definition at line 50 of file NavigatorInterface.h.

const uint32_t fawkes::NavigatorInterface::FLAG_NONE = 0u [static]

FLAG_NONE constant.

Definition at line 44 of file NavigatorInterface.h.

const uint32_t fawkes::NavigatorInterface::FLAG_PLACE_GOTO = 4u [static]

FLAG_PLACE_GOTO constant.

Definition at line 47 of file NavigatorInterface.h.

const uint32_t fawkes::NavigatorInterface::FLAG_POLAR_GOTO = 2u [static]

FLAG_POLAR_GOTO constant.

Definition at line 46 of file NavigatorInterface.h.

FLAG_SECURITY_DISTANCE constant.

Definition at line 49 of file NavigatorInterface.h.

FLAG_UPDATES_DEST_DIST constant.

Definition at line 48 of file NavigatorInterface.h.


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