Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
ImuFilterRos Class Reference

#include <imu_filter_ros.h>

Public Member Functions

 ImuFilterRos (ros::NodeHandle nh, ros::NodeHandle nh_private)
 
virtual ~ImuFilterRos ()
 

Private Types

typedef imu_filter_madgwick::ImuFilterMadgwickConfig FilterConfig
 
typedef dynamic_reconfigure::Server< FilterConfigFilterConfigServer
 
typedef sensor_msgs::Imu ImuMsg
 
typedef message_filters::Subscriber< ImuMsgImuSubscriber
 
typedef sensor_msgs::MagneticField MagMsg
 
typedef message_filters::Subscriber< MagMsgMagSubscriber
 
typedef geometry_msgs::Vector3Stamped MagVectorMsg
 
typedef message_filters::Subscriber< MagVectorMsgMagVectorSubscriber
 
typedef message_filters::Synchronizer< SyncPolicySynchronizer
 
typedef message_filters::sync_policies::ApproximateTime< ImuMsg, MagMsgSyncPolicy
 

Private Member Functions

void checkTopicsTimerCallback (const ros::TimerEvent &)
 
void imuCallback (const ImuMsg::ConstPtr &imu_msg_raw)
 
void imuMagCallback (const ImuMsg::ConstPtr &imu_msg_raw, const MagMsg::ConstPtr &mav_msg)
 
void imuMagVectorCallback (const MagVectorMsg::ConstPtr &mag_vector_msg)
 
void publishFilteredMsg (const ImuMsg::ConstPtr &imu_msg_raw)
 
void publishRawMsg (const ros::Time &t, float roll, float pitch, float yaw)
 
void publishTransform (const ImuMsg::ConstPtr &imu_msg_raw)
 
void reconfigCallback (FilterConfig &config, uint32_t level)
 

Private Attributes

ros::Timer check_topics_timer_
 
boost::shared_ptr< FilterConfigServerconfig_server_
 
double constant_dt_
 
ImuFilter filter_
 
std::string fixed_frame_
 
std::string imu_frame_
 
ros::Publisher imu_publisher_
 
boost::shared_ptr< ImuSubscriberimu_subscriber_
 
bool initialized_
 
ros::Time last_time_
 
geometry_msgs::Vector3 mag_bias_
 
ros::Publisher mag_republisher_
 
boost::shared_ptr< MagSubscribermag_subscriber_
 
boost::mutex mutex_
 
ros::NodeHandle nh_
 
ros::NodeHandle nh_private_
 
double orientation_variance_
 
bool publish_debug_topics_
 
bool publish_tf_
 
bool remove_gravity_vector_
 
bool reverse_tf_
 
ros::Publisher rpy_filtered_debug_publisher_
 
ros::Publisher rpy_raw_debug_publisher_
 
bool stateless_
 
boost::shared_ptr< Synchronizersync_
 
tf2_ros::TransformBroadcaster tf_broadcaster_
 
bool use_mag_
 
bool use_magnetic_field_msg_
 
boost::shared_ptr< MagVectorSubscribervector_mag_subscriber_
 
WorldFrame::WorldFrame world_frame_
 

Detailed Description

Definition at line 41 of file imu_filter_ros.h.

Member Typedef Documentation

typedef imu_filter_madgwick::ImuFilterMadgwickConfig ImuFilterRos::FilterConfig
private

Definition at line 53 of file imu_filter_ros.h.

typedef dynamic_reconfigure::Server<FilterConfig> ImuFilterRos::FilterConfigServer
private

Definition at line 54 of file imu_filter_ros.h.

typedef sensor_msgs::Imu ImuFilterRos::ImuMsg
private

Definition at line 43 of file imu_filter_ros.h.

Definition at line 49 of file imu_filter_ros.h.

typedef sensor_msgs::MagneticField ImuFilterRos::MagMsg
private

Definition at line 44 of file imu_filter_ros.h.

Definition at line 50 of file imu_filter_ros.h.

typedef geometry_msgs::Vector3Stamped ImuFilterRos::MagVectorMsg
private

Definition at line 45 of file imu_filter_ros.h.

Definition at line 51 of file imu_filter_ros.h.

Definition at line 48 of file imu_filter_ros.h.

Definition at line 47 of file imu_filter_ros.h.

Constructor & Destructor Documentation

ImuFilterRos::ImuFilterRos ( ros::NodeHandle  nh,
ros::NodeHandle  nh_private 
)

Definition at line 31 of file imu_filter_ros.cpp.

ImuFilterRos::~ImuFilterRos ( )
virtual

Definition at line 156 of file imu_filter_ros.cpp.

Member Function Documentation

void ImuFilterRos::checkTopicsTimerCallback ( const ros::TimerEvent )
private

Definition at line 417 of file imu_filter_ros.cpp.

void ImuFilterRos::imuCallback ( const ImuMsg::ConstPtr &  imu_msg_raw)
private

Definition at line 164 of file imu_filter_ros.cpp.

void ImuFilterRos::imuMagCallback ( const ImuMsg::ConstPtr &  imu_msg_raw,
const MagMsg::ConstPtr &  mav_msg 
)
private

Definition at line 220 of file imu_filter_ros.cpp.

void ImuFilterRos::imuMagVectorCallback ( const MagVectorMsg::ConstPtr &  mag_vector_msg)
private

Definition at line 408 of file imu_filter_ros.cpp.

void ImuFilterRos::publishFilteredMsg ( const ImuMsg::ConstPtr &  imu_msg_raw)
private

Definition at line 333 of file imu_filter_ros.cpp.

void ImuFilterRos::publishRawMsg ( const ros::Time t,
float  roll,
float  pitch,
float  yaw 
)
private

Definition at line 378 of file imu_filter_ros.cpp.

void ImuFilterRos::publishTransform ( const ImuMsg::ConstPtr &  imu_msg_raw)
private

Definition at line 306 of file imu_filter_ros.cpp.

void ImuFilterRos::reconfigCallback ( FilterConfig config,
uint32_t  level 
)
private

Definition at line 391 of file imu_filter_ros.cpp.

Member Data Documentation

ros::Timer ImuFilterRos::check_topics_timer_
private

Definition at line 82 of file imu_filter_ros.h.

boost::shared_ptr<FilterConfigServer> ImuFilterRos::config_server_
private

Definition at line 81 of file imu_filter_ros.h.

double ImuFilterRos::constant_dt_
private

Definition at line 93 of file imu_filter_ros.h.

ImuFilter ImuFilterRos::filter_
private

Definition at line 105 of file imu_filter_ros.h.

std::string ImuFilterRos::fixed_frame_
private

Definition at line 91 of file imu_filter_ros.h.

std::string ImuFilterRos::imu_frame_
private

Definition at line 92 of file imu_filter_ros.h.

ros::Publisher ImuFilterRos::imu_publisher_
private

Definition at line 78 of file imu_filter_ros.h.

boost::shared_ptr<ImuSubscriber> ImuFilterRos::imu_subscriber_
private

Definition at line 68 of file imu_filter_ros.h.

bool ImuFilterRos::initialized_
private

Definition at line 101 of file imu_filter_ros.h.

ros::Time ImuFilterRos::last_time_
private

Definition at line 102 of file imu_filter_ros.h.

geometry_msgs::Vector3 ImuFilterRos::mag_bias_
private

Definition at line 96 of file imu_filter_ros.h.

ros::Publisher ImuFilterRos::mag_republisher_
private

Definition at line 74 of file imu_filter_ros.h.

boost::shared_ptr<MagSubscriber> ImuFilterRos::mag_subscriber_
private

Definition at line 69 of file imu_filter_ros.h.

boost::mutex ImuFilterRos::mutex_
private

Definition at line 100 of file imu_filter_ros.h.

ros::NodeHandle ImuFilterRos::nh_
private

Definition at line 65 of file imu_filter_ros.h.

ros::NodeHandle ImuFilterRos::nh_private_
private

Definition at line 66 of file imu_filter_ros.h.

double ImuFilterRos::orientation_variance_
private

Definition at line 97 of file imu_filter_ros.h.

bool ImuFilterRos::publish_debug_topics_
private

Definition at line 94 of file imu_filter_ros.h.

bool ImuFilterRos::publish_tf_
private

Definition at line 89 of file imu_filter_ros.h.

bool ImuFilterRos::remove_gravity_vector_
private

Definition at line 95 of file imu_filter_ros.h.

bool ImuFilterRos::reverse_tf_
private

Definition at line 90 of file imu_filter_ros.h.

ros::Publisher ImuFilterRos::rpy_filtered_debug_publisher_
private

Definition at line 76 of file imu_filter_ros.h.

ros::Publisher ImuFilterRos::rpy_raw_debug_publisher_
private

Definition at line 77 of file imu_filter_ros.h.

bool ImuFilterRos::stateless_
private

Definition at line 88 of file imu_filter_ros.h.

boost::shared_ptr<Synchronizer> ImuFilterRos::sync_
private

Definition at line 70 of file imu_filter_ros.h.

tf2_ros::TransformBroadcaster ImuFilterRos::tf_broadcaster_
private

Definition at line 79 of file imu_filter_ros.h.

bool ImuFilterRos::use_mag_
private

Definition at line 86 of file imu_filter_ros.h.

bool ImuFilterRos::use_magnetic_field_msg_
private

Definition at line 87 of file imu_filter_ros.h.

boost::shared_ptr<MagVectorSubscriber> ImuFilterRos::vector_mag_subscriber_
private

Definition at line 73 of file imu_filter_ros.h.

WorldFrame::WorldFrame ImuFilterRos::world_frame_
private

Definition at line 85 of file imu_filter_ros.h.


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


imu_filter_madgwick
Author(s): Ivan Dryanovski
autogenerated on Thu Jun 18 2020 03:40:00