Feedback objects have various fields representing feedback from modules; which fields are populated depends on the module type and various other settings. More...
#include <feedback.hpp>
Classes | |
class | Actuator |
Actuator-specific feedback. More... | |
class | EnumField |
A message field representable by an enum of a given type. More... | |
class | FloatField |
A message field representable by a single-precision floating point value. More... | |
class | HighResAngleField |
A message field for an angle measurement which does not lose precision at very high angles. More... | |
class | Imu |
Inertial measurement unit feedback (accelerometers and gyros). More... | |
class | Io |
Feedback from any available I/O pins on the device. More... | |
class | IoBank |
A message field for interfacing with a bank of I/O pins. More... | |
class | LedField |
A message field for interfacing with an LED. More... | |
class | Mobile |
Feedback generally from a mobile device such as a phone or tablet. More... | |
class | NumberedFloatField |
A message field containing a numbered set of single-precision floating point values. More... | |
class | QuaternionfField |
A message field representable by a 3-D vector of single-precision floating point values. More... | |
class | UInt64Field |
A message field representable by an unsigned 64 bit integer value. More... | |
class | Vector3fField |
A message field representable by a 3-D vector of single-precision floating point values. More... | |
Public Member Functions | |
const Actuator & | actuator () const |
Actuator-specific feedback. More... | |
const FloatField & | boardTemperature () const |
Ambient temperature inside the module (measured at the IMU chip), in degrees Celsius. More... | |
const NumberedFloatField & | debug () const |
Values for internal debug functions (channel 1-9 available). More... | |
Feedback (HebiFeedbackPtr) | |
Wraps an existing C-style object that is managed by its parent. NOTE: this should not be used except by internal library functions! More... | |
Feedback (Feedback &&other) | |
Move constructor (necessary for containment in STL template classes) More... | |
const UInt64Field & | hardwareReceiveTimeUs () const |
Timestamp of when message was received by module (remote; microseconds) More... | |
const UInt64Field & | hardwareTransmitTimeUs () const |
Timestamp of when message was transmitted from module (remote; microseconds) More... | |
const Imu & | imu () const |
Inertial measurement unit feedback (accelerometers and gyros). More... | |
const Io & | io () const |
Feedback from any available I/O pins on the device. More... | |
const LedField & | led () const |
The module's LED. More... | |
const Mobile & | mobile () const |
Feedback generally from a mobile device such as a phone or tablet. More... | |
Feedback & | operator= (Feedback &&other)=delete |
const FloatField & | processorTemperature () const |
Temperature of the processor chip, in degrees Celsius. More... | |
const UInt64Field & | receiveTimeUs () const |
Timestamp of when message was received from module (local; microseconds) More... | |
const UInt64Field & | senderId () const |
Unique ID of the module transmitting this feedback. More... | |
const UInt64Field & | transmitTimeUs () const |
Timestamp of when message was transmitted to module (local; microseconds) More... | |
const FloatField & | voltage () const |
Bus voltage that the module is running at (in Volts). More... | |
Feedback objects have various fields representing feedback from modules; which fields are populated depends on the module type and various other settings.
This object has a hierarchical structure – there are some direct general-purpose fields at the top level, and many more specific fields contained in different nested subobjects.
The subobjects contain references to the parent feedback object, and so should not be used after the parent object has been destroyed.
The fields in the feedback object are typed; generally, these are optional-style read-only fields (i.e., have the concept of has/get), although the return types and exact interface vary slightly between fields. Where appropriate, the explicit bool operator has been overridden so that you can shortcut if
(field.has()) by calling if(field)
.
Although this header file can be used to look at the hierarchy of the messages, in general the online documentation at apidocs.hebi.us presents this information. in a more readable form.
Definition at line 32 of file feedback.hpp.
|
strong |
Definition at line 112 of file feedback.hpp.
|
strong |
Definition at line 103 of file feedback.hpp.
|
strong |
Definition at line 86 of file feedback.hpp.
|
strong |
Enumerator | |
---|---|
Triggered |
The MStop is pressed. |
NotTriggered |
The MStop is not pressed. |
Definition at line 45 of file feedback.hpp.
|
strong |
Definition at line 52 of file feedback.hpp.
|
strong |
Definition at line 34 of file feedback.hpp.
|
strong |
Definition at line 69 of file feedback.hpp.
hebi::Feedback::Feedback | ( | HebiFeedbackPtr | feedback | ) |
Wraps an existing C-style object that is managed by its parent. NOTE: this should not be used except by internal library functions!
Definition at line 154 of file feedback.cpp.
hebi::Feedback::Feedback | ( | Feedback && | other | ) |
Move constructor (necessary for containment in STL template classes)
Definition at line 173 of file feedback.cpp.
|
inline |
Actuator-specific feedback.
Definition at line 683 of file feedback.hpp.
|
inline |
Ambient temperature inside the module (measured at the IMU chip), in degrees Celsius.
Definition at line 692 of file feedback.hpp.
|
inline |
Values for internal debug functions (channel 1-9 available).
Definition at line 699 of file feedback.hpp.
|
inline |
Timestamp of when message was received by module (remote; microseconds)
Definition at line 706 of file feedback.hpp.
|
inline |
Timestamp of when message was transmitted from module (remote; microseconds)
Definition at line 708 of file feedback.hpp.
|
inline |
Inertial measurement unit feedback (accelerometers and gyros).
Definition at line 687 of file feedback.hpp.
|
inline |
Feedback from any available I/O pins on the device.
Definition at line 681 of file feedback.hpp.
|
inline |
The module's LED.
Definition at line 712 of file feedback.hpp.
|
inline |
Feedback generally from a mobile device such as a phone or tablet.
Definition at line 685 of file feedback.hpp.
Disable copy constructor/assignment operators
|
inline |
Temperature of the processor chip, in degrees Celsius.
Definition at line 694 of file feedback.hpp.
|
inline |
Timestamp of when message was received from module (local; microseconds)
Definition at line 702 of file feedback.hpp.
|
inline |
Unique ID of the module transmitting this feedback.
Definition at line 710 of file feedback.hpp.
|
inline |
Timestamp of when message was transmitted to module (local; microseconds)
Definition at line 704 of file feedback.hpp.
|
inline |
Bus voltage that the module is running at (in Volts).
Definition at line 696 of file feedback.hpp.
|
private |
Definition at line 724 of file feedback.hpp.
|
private |
Definition at line 728 of file feedback.hpp.
|
private |
Definition at line 731 of file feedback.hpp.
|
private |
Definition at line 734 of file feedback.hpp.
|
private |
Definition at line 735 of file feedback.hpp.
|
private |
Definition at line 726 of file feedback.hpp.
|
private |
C-style object; managed by parent. NOTE: this should not be used except by internal library functions!
Definition at line 659 of file feedback.hpp.
|
private |
Definition at line 660 of file feedback.hpp.
|
private |
Definition at line 723 of file feedback.hpp.
|
private |
Definition at line 737 of file feedback.hpp.
|
private |
Definition at line 725 of file feedback.hpp.
|
private |
Definition at line 729 of file feedback.hpp.
|
private |
Definition at line 732 of file feedback.hpp.
|
private |
Definition at line 736 of file feedback.hpp.
|
private |
Definition at line 733 of file feedback.hpp.
|
private |
Definition at line 730 of file feedback.hpp.