PX4 Firmware
PX4 Autopilot Software http://px4.io
stdlib_imports.hpp File Reference

This file is needed to shadow the C standard library math functions with ones provided by the C++ standard library. More...

#include <cmath>
#include <cstdlib>
#include <inttypes.h>
Include dependency graph for stdlib_imports.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 matrix
 

Macros

#define M_PI   3.14159265358979323846
 
#define M_TWOPI   (M_PI * 2.0)
 
#define FLT_EPSILON   __FLT_EPSILON__
 

Detailed Description

This file is needed to shadow the C standard library math functions with ones provided by the C++ standard library.

This way we can guarantee that unwanted functions from the C library will never creep back in unexpectedly.

Author
Pavel Kirienko pavel.nosp@m..kir.nosp@m.ienko.nosp@m.@zub.nosp@m.ax.co.nosp@m.m

Definition in file stdlib_imports.hpp.

Macro Definition Documentation

◆ FLT_EPSILON

#define FLT_EPSILON   __FLT_EPSILON__

Definition at line 26 of file stdlib_imports.hpp.

Referenced by FlightTaskAutoLineSmoothVel::_constrainOneSide(), ManualSmoothingXY::_getIntention(), FlightTaskManualPosition::_scaleSticks(), ManualSmoothingXY::_setStateAcceleration(), FlightTaskManualAltitude::_updateAltitudeLock(), FlightTaskManualPosition::_updateXYlock(), ManualSmoothingXY::_velocitySlewRate(), SmoothZTest::accelerateDownwardFromBrake(), SmoothZTest::accelerateUpwardFromBrake(), AttitudeControlConvergenceTest::adaptAntipodal(), Mission::altitude_sp_foh_update(), SmoothZTest::brakeDownward(), SmoothZTest::brakeUpward(), Ekf::calcOptFlowBodyRateComp(), LIS3MDL::check_offset(), HMC5883::check_offset(), IST8310::check_offset(), VtolType::check_quadchute_condition(), LIS3MDL::check_scale(), HMC5883::check_scale(), Geofence::checkAll(), ManualVelocitySmoothingZ::checkPositionLock(), ManualVelocitySmoothingXY::checkPositionLock(), ETSAirspeed::collect(), MultirotorMixer::compute_desaturation_gain(), VelocitySmoothing::computeT2(), VelocitySmoothing::computeVelAtZeroAcc(), create_waypoint_from_line_and_dist(), Mission::cruising_speed_sp_update(), do_level_calibration(), FloatTest::doublePrecisionTests(), PositionControl::generateThrustYawSetpoint(), DataValidatorGroup::get_best(), Navigator::get_cruising_throttle(), Commander::handle_command_motor_test(), matrix::inv(), MissionBlock::is_mission_item_reached(), Geofence::isHomeRequired(), math::isZero(), main(), mat_invert3(), mixer_set_failsafe(), mixer_tick(), ECL_L1_Pos_Controller::navigate_loiter(), Commander::offboard_control_update(), GpsFailure::on_active(), param_set_internal(), Mission::position_setpoint_equal(), Ekf2::Run(), Navigator::run(), land_detector::LandDetector::Run(), Mission::set_mission_items(), RCUpdate::RCUpdate::set_params_from_rc(), RTL::set_rtl_item(), MulticopterPositionControl::set_vehicle_states(), ManualSmoothingZ::setMaxAcceleration(), math::sign(), FloatTest::singlePrecisionTests(), sphere_fit_least_squares(), FixedwingPositionControl::tecs_update_pitch_throttle(), VelocitySmoothing::timeSynchronization(), control::BlockLowPass2::update(), RateControl::update(), MixingOutput::update(), Standard::update_mc_state(), AttitudeEstimatorQ::update_parameters(), Standard::update_transition_state(), ManualSmoothingZ::updateAcceleration(), MixingOutput::updateParams(), and ManualSmoothingZ::velocitySlewRate().

◆ M_PI

#define M_PI   3.14159265358979323846

Definition at line 17 of file stdlib_imports.hpp.

◆ M_TWOPI

#define M_TWOPI   (M_PI * 2.0)

Definition at line 20 of file stdlib_imports.hpp.

Referenced by main(), and matrix::wrap_2pi().