HEBI C++ API  3.12.0
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
hebi::GroupFeedback Class Referencefinal

A list of Feedback objects that can be received from a Group of modules; the size() must match the number of modules in the group. More...

#include <group_feedback.hpp>

Public Member Functions

 GroupFeedback (size_t number_of_modules)
 Create a group feedback with the specified number of modules. More...
 
 ~GroupFeedback () noexcept=default
 Destructor cleans up group feedback object as necessary. More...
 
 GroupFeedback (GroupFeedback &&)=default
 Allows moving result from "subview". More...
 
GroupFeedback subview (std::vector< int > indices) const
 Creates a "subview" of this group feedback object, with shared access to a subset of the Feedback elements. More...
 
bool isSubview () const
 Was this created as a subview of another GroupFeedback? More...
 
size_t size () const
 Returns the number of module feedbacks in this group feedback. More...
 
const Feedbackoperator[] (size_t index) const
 Access the feedback for an individual module. More...
 
double getTime () const
 Gets a single wall-clock timestamp (in seconds since the epoch) associated with the entire group feedback (this is time the last feedback packet arrived). More...
 
uint64_t getTimeUs () const
 Gets a single wall-clock timestamp (in microseconds since the epoch) associated with the entire group feedback (this is time the last feedback packet arrived). More...
 
Eigen::VectorXd getBoardTemperature () const
 Convenience function for returning feedback board temperature values. More...
 
Eigen::VectorXd getProcessorTemperature () const
 Convenience function for returning feedback processor temperature values. More...
 
Eigen::VectorXd getVoltage () const
 Convenience function for returning feedback voltage values. More...
 
Eigen::VectorXd getDeflection () const
 Convenience function for returning feedback deflection values. More...
 
Eigen::VectorXd getDeflectionVelocity () const
 Convenience function for returning feedback deflection velocity values. More...
 
Eigen::VectorXd getMotorVelocity () const
 Convenience function for returning feedback motor velocity values. More...
 
Eigen::VectorXd getMotorCurrent () const
 Convenience function for returning feedback motor current values. More...
 
Eigen::VectorXd getMotorSensorTemperature () const
 Convenience function for returning feedback motor sensor temperature values. More...
 
Eigen::VectorXd getMotorWindingCurrent () const
 Convenience function for returning feedback motor winding current values. More...
 
Eigen::VectorXd getMotorWindingTemperature () const
 Convenience function for returning feedback motor winding temperature values. More...
 
Eigen::VectorXd getMotorHousingTemperature () const
 Convenience function for returning feedback motor housing temperature values. More...
 
Eigen::VectorXd getPosition () const
 Convenience function for returning feedback position values. More...
 
Eigen::VectorXd getVelocity () const
 Convenience function for returning feedback velocity values. More...
 
Eigen::VectorXd getEffort () const
 Convenience function for returning feedback effort values. More...
 
Eigen::VectorXd getPositionCommand () const
 Convenience function for returning commanded position values. More...
 
Eigen::VectorXd getVelocityCommand () const
 Convenience function for returning commanded velocity values. More...
 
Eigen::VectorXd getEffortCommand () const
 Convenience function for returning commanded effort values. More...
 
Eigen::MatrixX3d getAccelerometer () const
 Convenience function for returning feedback accelerometer values. More...
 
Eigen::MatrixX3d getGyro () const
 Convenience function for returning feedback gyroscope values. More...
 
void getBoardTemperature (Eigen::VectorXd &out) const
 Convenience function for returning feedback board temperature values. More...
 
void getProcessorTemperature (Eigen::VectorXd &out) const
 Convenience function for returning feedback processor temperature values. More...
 
void getVoltage (Eigen::VectorXd &out) const
 Convenience function for returning feedback voltage values. More...
 
void getDeflection (Eigen::VectorXd &out) const
 Convenience function for returning feedback deflection values. More...
 
void getDeflectionVelocity (Eigen::VectorXd &out) const
 Convenience function for returning feedback deflection velocity values. More...
 
void getMotorVelocity (Eigen::VectorXd &out) const
 Convenience function for returning feedback motor velocity values. More...
 
void getMotorCurrent (Eigen::VectorXd &out) const
 Convenience function for returning feedback motor current values. More...
 
void getMotorSensorTemperature (Eigen::VectorXd &out) const
 Convenience function for returning feedback motor sensor temperature values. More...
 
void getMotorWindingCurrent (Eigen::VectorXd &out) const
 Convenience function for returning feedback motor winding current values. More...
 
void getMotorWindingTemperature (Eigen::VectorXd &out) const
 Convenience function for returning feedback motor winding temperature values. More...
 
void getMotorHousingTemperature (Eigen::VectorXd &out) const
 Convenience function for returning feedback motor housing temperature values. More...
 
void getPosition (Eigen::VectorXd &out) const
 Convenience function for returning feedback position values. More...
 
void getVelocity (Eigen::VectorXd &out) const
 Convenience function for returning feedback velocity values. More...
 
void getEffort (Eigen::VectorXd &out) const
 Convenience function for returning feedback effort values. More...
 
void getPositionCommand (Eigen::VectorXd &out) const
 Convenience function for returning commanded position values. More...
 
void getVelocityCommand (Eigen::VectorXd &out) const
 Convenience function for returning commanded velocity values. More...
 
void getEffortCommand (Eigen::VectorXd &out) const
 Convenience function for returning commanded effort values. More...
 
void getAccelerometer (Eigen::MatrixX3d &out) const
 Convenience function for returning feedback accelerometer values. More...
 
void getGyro (Eigen::MatrixX3d &out) const
 Convenience function for returning feedback gyroscope values. More...
 

Detailed Description

A list of Feedback objects that can be received from a Group of modules; the size() must match the number of modules in the group.

Constructor & Destructor Documentation

◆ GroupFeedback() [1/2]

hebi::GroupFeedback::GroupFeedback ( size_t  number_of_modules)

Create a group feedback with the specified number of modules.

◆ ~GroupFeedback()

hebi::GroupFeedback::~GroupFeedback ( )
defaultnoexcept

Destructor cleans up group feedback object as necessary.

◆ GroupFeedback() [2/2]

hebi::GroupFeedback::GroupFeedback ( GroupFeedback &&  )
default

Allows moving result from "subview".

Member Function Documentation

◆ subview()

GroupFeedback hebi::GroupFeedback::subview ( std::vector< int >  indices) const

Creates a "subview" of this group feedback object, with shared access to a subset of the Feedback elements.

The indices do not need to remain in order, and do not need to be unique; however, they must each be >= 0 and < size(); otherwise an out_of_range exception is thrown.

◆ isSubview()

bool hebi::GroupFeedback::isSubview ( ) const
inline

Was this created as a subview of another GroupFeedback?

◆ size()

size_t hebi::GroupFeedback::size ( ) const

Returns the number of module feedbacks in this group feedback.

◆ operator[]()

const Feedback & hebi::GroupFeedback::operator[] ( size_t  index) const

Access the feedback for an individual module.

◆ getTime()

double hebi::GroupFeedback::getTime ( ) const

Gets a single wall-clock timestamp (in seconds since the epoch) associated with the entire group feedback (this is time the last feedback packet arrived).

Returns
the maximum value of each feedback's PC receive time, or NaN if not all feedbacks are populated.

◆ getTimeUs()

uint64_t hebi::GroupFeedback::getTimeUs ( ) const

Gets a single wall-clock timestamp (in microseconds since the epoch) associated with the entire group feedback (this is time the last feedback packet arrived).

Returns
the maximum value of each feedback's PC receive time, or 0 if not all feedbacks are populated.

◆ getBoardTemperature() [1/2]

Eigen::VectorXd hebi::GroupFeedback::getBoardTemperature ( ) const

Convenience function for returning feedback board temperature values.

◆ getProcessorTemperature() [1/2]

Eigen::VectorXd hebi::GroupFeedback::getProcessorTemperature ( ) const

Convenience function for returning feedback processor temperature values.

◆ getVoltage() [1/2]

Eigen::VectorXd hebi::GroupFeedback::getVoltage ( ) const

Convenience function for returning feedback voltage values.

◆ getDeflection() [1/2]

Eigen::VectorXd hebi::GroupFeedback::getDeflection ( ) const

Convenience function for returning feedback deflection values.

◆ getDeflectionVelocity() [1/2]

Eigen::VectorXd hebi::GroupFeedback::getDeflectionVelocity ( ) const

Convenience function for returning feedback deflection velocity values.

◆ getMotorVelocity() [1/2]

Eigen::VectorXd hebi::GroupFeedback::getMotorVelocity ( ) const

Convenience function for returning feedback motor velocity values.

◆ getMotorCurrent() [1/2]

Eigen::VectorXd hebi::GroupFeedback::getMotorCurrent ( ) const

Convenience function for returning feedback motor current values.

◆ getMotorSensorTemperature() [1/2]

Eigen::VectorXd hebi::GroupFeedback::getMotorSensorTemperature ( ) const

Convenience function for returning feedback motor sensor temperature values.

◆ getMotorWindingCurrent() [1/2]

Eigen::VectorXd hebi::GroupFeedback::getMotorWindingCurrent ( ) const

Convenience function for returning feedback motor winding current values.

◆ getMotorWindingTemperature() [1/2]

Eigen::VectorXd hebi::GroupFeedback::getMotorWindingTemperature ( ) const

Convenience function for returning feedback motor winding temperature values.

◆ getMotorHousingTemperature() [1/2]

Eigen::VectorXd hebi::GroupFeedback::getMotorHousingTemperature ( ) const

Convenience function for returning feedback motor housing temperature values.

◆ getPosition() [1/2]

Eigen::VectorXd hebi::GroupFeedback::getPosition ( ) const

Convenience function for returning feedback position values.

◆ getVelocity() [1/2]

Eigen::VectorXd hebi::GroupFeedback::getVelocity ( ) const

Convenience function for returning feedback velocity values.

◆ getEffort() [1/2]

Eigen::VectorXd hebi::GroupFeedback::getEffort ( ) const

Convenience function for returning feedback effort values.

◆ getPositionCommand() [1/2]

Eigen::VectorXd hebi::GroupFeedback::getPositionCommand ( ) const

Convenience function for returning commanded position values.

◆ getVelocityCommand() [1/2]

Eigen::VectorXd hebi::GroupFeedback::getVelocityCommand ( ) const

Convenience function for returning commanded velocity values.

◆ getEffortCommand() [1/2]

Eigen::VectorXd hebi::GroupFeedback::getEffortCommand ( ) const

Convenience function for returning commanded effort values.

◆ getAccelerometer() [1/2]

Eigen::MatrixX3d hebi::GroupFeedback::getAccelerometer ( ) const

Convenience function for returning feedback accelerometer values.

◆ getGyro() [1/2]

Eigen::MatrixX3d hebi::GroupFeedback::getGyro ( ) const

Convenience function for returning feedback gyroscope values.

◆ getBoardTemperature() [2/2]

void hebi::GroupFeedback::getBoardTemperature ( Eigen::VectorXd &  out) const

Convenience function for returning feedback board temperature values.

◆ getProcessorTemperature() [2/2]

void hebi::GroupFeedback::getProcessorTemperature ( Eigen::VectorXd &  out) const

Convenience function for returning feedback processor temperature values.

◆ getVoltage() [2/2]

void hebi::GroupFeedback::getVoltage ( Eigen::VectorXd &  out) const

Convenience function for returning feedback voltage values.

◆ getDeflection() [2/2]

void hebi::GroupFeedback::getDeflection ( Eigen::VectorXd &  out) const

Convenience function for returning feedback deflection values.

◆ getDeflectionVelocity() [2/2]

void hebi::GroupFeedback::getDeflectionVelocity ( Eigen::VectorXd &  out) const

Convenience function for returning feedback deflection velocity values.

◆ getMotorVelocity() [2/2]

void hebi::GroupFeedback::getMotorVelocity ( Eigen::VectorXd &  out) const

Convenience function for returning feedback motor velocity values.

◆ getMotorCurrent() [2/2]

void hebi::GroupFeedback::getMotorCurrent ( Eigen::VectorXd &  out) const

Convenience function for returning feedback motor current values.

◆ getMotorSensorTemperature() [2/2]

void hebi::GroupFeedback::getMotorSensorTemperature ( Eigen::VectorXd &  out) const

Convenience function for returning feedback motor sensor temperature values.

◆ getMotorWindingCurrent() [2/2]

void hebi::GroupFeedback::getMotorWindingCurrent ( Eigen::VectorXd &  out) const

Convenience function for returning feedback motor winding current values.

◆ getMotorWindingTemperature() [2/2]

void hebi::GroupFeedback::getMotorWindingTemperature ( Eigen::VectorXd &  out) const

Convenience function for returning feedback motor winding temperature values.

◆ getMotorHousingTemperature() [2/2]

void hebi::GroupFeedback::getMotorHousingTemperature ( Eigen::VectorXd &  out) const

Convenience function for returning feedback motor housing temperature values.

◆ getPosition() [2/2]

void hebi::GroupFeedback::getPosition ( Eigen::VectorXd &  out) const

Convenience function for returning feedback position values.

◆ getVelocity() [2/2]

void hebi::GroupFeedback::getVelocity ( Eigen::VectorXd &  out) const

Convenience function for returning feedback velocity values.

◆ getEffort() [2/2]

void hebi::GroupFeedback::getEffort ( Eigen::VectorXd &  out) const

Convenience function for returning feedback effort values.

◆ getPositionCommand() [2/2]

void hebi::GroupFeedback::getPositionCommand ( Eigen::VectorXd &  out) const

Convenience function for returning commanded position values.

◆ getVelocityCommand() [2/2]

void hebi::GroupFeedback::getVelocityCommand ( Eigen::VectorXd &  out) const

Convenience function for returning commanded velocity values.

◆ getEffortCommand() [2/2]

void hebi::GroupFeedback::getEffortCommand ( Eigen::VectorXd &  out) const

Convenience function for returning commanded effort values.

◆ getAccelerometer() [2/2]

void hebi::GroupFeedback::getAccelerometer ( Eigen::MatrixX3d &  out) const

Convenience function for returning feedback accelerometer values.

◆ getGyro() [2/2]

void hebi::GroupFeedback::getGyro ( Eigen::MatrixX3d &  out) const

Convenience function for returning feedback gyroscope values.


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