Main MRPT website > C++ reference for MRPT 1.4.0
Classes | Namespaces | Macros | Functions
bits.h File Reference
#include <cmath>
#include <algorithm>

Go to the source code of this file.

Classes

struct  mrpt::utils::CProfilerProxy
 

Namespaces

 mrpt
 This is the global namespace for all Mobile Robot Programming Toolkit (MRPT) libraries.
 
 mrpt::math
 This base provides a set of functions for maths stuff.
 
 mrpt::utils
 Classes for serialization, sockets, ini-file manipulation, streams, list of properties-values, timewatch, extensions to STL.
 

Macros

#define _USE_MATH_DEFINES
 
#define M_PI   3.14159265358979323846
 
#define DEG2RAD   DEG2RAD
 
#define RAD2DEG   RAD2DEG
 

Functions

std::string BASE_IMPEXP mrpt::format (const char *fmt,...) MRPT_printf_format_check(1
 A std::string version of C sprintf. More...
 
bool BASE_IMPEXP mrpt::math::isNaN (float f) MRPT_NO_THROWS
 Returns true if the number is NaN. More...
 
bool BASE_IMPEXP mrpt::math::isNaN (double f) MRPT_NO_THROWS
 Returns true if the number is NaN. More...
 
bool BASE_IMPEXP mrpt::math::isFinite (float f) MRPT_NO_THROWS
 Returns true if the number is non infinity. More...
 
bool BASE_IMPEXP mrpt::math::isFinite (double f) MRPT_NO_THROWS
 Returns true if the number is non infinity. More...
 
template<class MATRIXLIKE >
size_t mrpt::math::size (const MATRIXLIKE &m, int dim)
 
double mrpt::utils::DEG2RAD (const double x)
 Degrees to radians. More...
 
float mrpt::utils::DEG2RAD (const float x)
 Degrees to radians. More...
 
float mrpt::utils::DEG2RAD (const int x)
 Degrees to radians. More...
 
double mrpt::utils::RAD2DEG (const double x)
 Radians to degrees. More...
 
float mrpt::utils::RAD2DEG (const float x)
 Radians to degrees. More...
 
template<typename T >
int mrpt::utils::sign (T x)
 Returns the sign of X as "1" or "-1". More...
 
template<typename T >
int mrpt::utils::signWithZero (T x)
 Returns the sign of X as "0", "1" or "-1". More...
 
template<typename T >
mrpt::utils::abs_diff (const T a, const T b)
 Efficient and portable evaluation of the absolute difference of two unsigned integer values (but will also work for signed and floating point types) More...
 
template<typename T >
const T mrpt::utils::min3 (const T &A, const T &B, const T &C)
 
template<typename T >
const T mrpt::utils::max3 (const T &A, const T &B, const T &C)
 
template<typename T >
int mrpt::utils::fix (T x)
 Rounds toward zero
More...
 
template<class T >
mrpt::utils::square (const T x)
 Inline function for the square of a number. More...
 
template<class R , class SMART_PTR >
R * mrpt::utils::getAs (SMART_PTR &o)
 Utility to get a cast'ed pointer from a smart pointer. More...
 
template<class R , class SMART_PTR >
const R * mrpt::utils::getAs (const SMART_PTR &o)
 Utility to get a cast'ed pointer from a smart pointer. More...
 
template<class T >
void mrpt::utils::reverseBytesInPlace (T &v_in_out)
 Reverse the order of the bytes of a given type (useful for transforming btw little/big endian)
More...
 
template<class T >
void mrpt::utils::reverseBytes (const T &v_in, T &v_out)
 Reverse the order of the bytes of a given type (useful for transforming btw little/big endian)
More...
 
template<typename T , typename K >
void mrpt::utils::keep_min (T &var, const K test_val)
 If the second argument is below the first one, set the first argument to this lower value. More...
 
template<typename T , typename K >
void mrpt::utils::keep_max (T &var, const K test_val)
 If the second argument is above the first one, set the first argument to this higher value. More...
 
template<typename T >
void mrpt::utils::saturate (T &var, const T sat_min, const T sat_max)
 Saturate the value of var (the variable gets modified) so it does not get out of [min,max]. More...
 
template<typename T >
mrpt::utils::saturate_val (const T &value, const T sat_min, const T sat_max)
 Like saturate() but it returns the value instead of modifying the variable. More...
 
template<class T >
void mrpt::utils::delete_safe (T *&ptr)
 Calls "delete" to free an object only if the pointer is not NULL, then set the pointer to NULL. More...
 
template<class VECTOR_T >
void mrpt::utils::vector_strong_clear (VECTOR_T &v)
 Like calling a std::vector<>'s clear() method, but really forcing deallocating the memory. More...
 

Macro Definition Documentation

◆ _USE_MATH_DEFINES

#define _USE_MATH_DEFINES

Definition at line 12 of file bits.h.

◆ DEG2RAD

#define DEG2RAD   DEG2RAD

Definition at line 86 of file bits.h.

◆ M_PI

#define M_PI   3.14159265358979323846

Definition at line 65 of file bits.h.

◆ RAD2DEG

#define RAD2DEG   RAD2DEG

Definition at line 87 of file bits.h.




Page generated by Doxygen 1.8.17 for MRPT 1.4.0 SVN: at Sat Jan 18 22:37:07 UTC 2020