mars_lib  0.1.0.3dc76ee85e09
Modular and Robust Sensor-Fusion
Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
mars::IMUMeasurementType Class Reference

#include </home/runner/work/mars_lib/mars_lib/source/mars/include/mars/sensors/imu/imu_measurement_type.h>

+ Inheritance diagram for mars::IMUMeasurementType:
+ Collaboration diagram for mars::IMUMeasurementType:

Public Member Functions

 IMUMeasurementType ()=default
 
 IMUMeasurementType (Eigen::Vector3d linear_acceleration, Eigen::Vector3d angular_velocity)
 
bool operator== (const IMUMeasurementType &rhs) const
 
bool operator!= (const IMUMeasurementType &rhs) const
 
std::string to_csv_string (const double &timestamp) const
 
- Public Member Functions inherited from mars::BaseMeas
bool get_meas_noise (Eigen::MatrixXd *meas_noise)
 get the measurement noise associated with the current sensor measurement More...
 
void set_meas_noise (const Eigen::MatrixXd &meas_noise)
 
- Public Member Functions inherited from mars::MeasInterface
virtual ~MeasInterface ()=default
 

Static Public Member Functions

static std::string get_csv_state_header_string ()
 

Public Attributes

EIGEN_MAKE_ALIGNED_OPERATOR_NEW Eigen::Vector3d linear_acceleration_ { 0, 0, 0 }
 
Eigen::Vector3d angular_velocity_ { 0, 0, 0 }
 
- Public Attributes inherited from mars::BaseMeas
Eigen::MatrixXd meas_noise_
 
bool has_meas_noise { false }
 

Constructor & Destructor Documentation

◆ IMUMeasurementType() [1/2]

mars::IMUMeasurementType::IMUMeasurementType ( )
default

◆ IMUMeasurementType() [2/2]

mars::IMUMeasurementType::IMUMeasurementType ( Eigen::Vector3d  linear_acceleration,
Eigen::Vector3d  angular_velocity 
)
inline
31  : linear_acceleration_(std::move(linear_acceleration)), angular_velocity_(std::move(angular_velocity))
32  {
33  }
Eigen::Vector3d angular_velocity_
Definition: imu_measurement_type.h:26
EIGEN_MAKE_ALIGNED_OPERATOR_NEW Eigen::Vector3d linear_acceleration_
Definition: imu_measurement_type.h:25

Member Function Documentation

◆ operator==()

bool mars::IMUMeasurementType::operator== ( const IMUMeasurementType rhs) const
inline
36  {
37  return (linear_acceleration_ == rhs.linear_acceleration_ && angular_velocity_ == rhs.angular_velocity_);
38  }

◆ operator!=()

bool mars::IMUMeasurementType::operator!= ( const IMUMeasurementType rhs) const
inline
41  {
42  return !(*this == rhs);
43  }

◆ get_csv_state_header_string()

static std::string mars::IMUMeasurementType::get_csv_state_header_string ( )
inlinestatic
46  {
47  std::stringstream os;
48  os << "t, ";
49  os << "a_x, a_y, a_z, ";
50  os << "w_x, w_y, w_z";
51 
52  return os.str();
53  }

◆ to_csv_string()

std::string mars::IMUMeasurementType::to_csv_string ( const double &  timestamp) const
inline
56  {
57  std::stringstream os;
58  os.precision(17);
59  os << timestamp;
60 
61  os << ", " << linear_acceleration_(0) << ", " << linear_acceleration_(1) << ", " << linear_acceleration_(2);
62  os << ", " << angular_velocity_(0) << ", " << angular_velocity_(1) << ", " << angular_velocity_(2);
63 
64  return os.str();
65  }

Member Data Documentation

◆ linear_acceleration_

EIGEN_MAKE_ALIGNED_OPERATOR_NEW Eigen::Vector3d mars::IMUMeasurementType::linear_acceleration_ { 0, 0, 0 }

◆ angular_velocity_

Eigen::Vector3d mars::IMUMeasurementType::angular_velocity_ { 0, 0, 0 }

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