Macros | Functions
doubles_floats_impl.h File Reference
#include <stdio.h>
#include <math.h>
#include <string.h>
#include <float.h>
#include "matd.h"
#include "math_util.h"
Include dependency graph for doubles_floats_impl.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define TFN(suffix)   TRFN(TNAME, suffix)
 
#define TRFN(root, suffix)   TRRFN(root, suffix)
 
#define TRRFN(root, suffix)   root ## suffix
 

Functions

static void TFN() s_add (const TNAME *a, const TNAME *b, int len, TNAME *r)
 
static void TFN() s_angleaxis_to_mat44 (const TNAME aa[4], TNAME r[4])
 
static void TFN() s_angleaxis_to_quat (const TNAME aa[4], TNAME q[4])
 
static void TFN() s_copy (const TNAME *src, TNAME *dst, int n)
 
static void TFN() s_cross_product (const TNAME v1[3], const TNAME v2[3], TNAME r[3])
 
static TNAME TFN() s_distance (const TNAME *a, const TNAME *b, int len)
 
static TNAME TFN() s_dot (const TNAME *a, const TNAME *b, int len)
 
static TNAME *TFN() s_dup (const TNAME *v, int len)
 
static void TFN() s_elu_to_mat44 (const TNAME eye[3], const TNAME lookat[3], const TNAME _up[3], TNAME M[16])
 
static TNAME TFN() s_magnitude (const TNAME *v, int len)
 
static void TFN() s_mat33_chol (const TNAME *A, int Arows, int Acols, TNAME *R, int Brows, int Bcols)
 
static void TFN() s_mat33_lower_tri_inv (const TNAME *A, int Arows, int Acols, TNAME *R, int Rrows, int Rcols)
 
static void TFN() s_mat33_sym_solve (const TNAME *A, int Arows, int Acols, const TNAME *B, int Brows, int Bcols, TNAME *R, int Rrows, int Rcols)
 
static void TFN() s_mat44_identity (TNAME out[16])
 
static void TFN() s_mat44_inv (const TNAME M[16], TNAME out[16])
 
static void TFN() s_mat44_inv_rotate_vector (const TNAME M[16], const TNAME in[3], TNAME out[3])
 
static void TFN() s_mat44_inv_transform_xyz (const TNAME M[16], const TNAME in[3], TNAME out[3])
 
static void TFN() s_mat44_rotate_vector (const TNAME M[16], const TNAME in[3], TNAME out[3])
 
static void TFN() s_mat44_rotate_x (TNAME rad, TNAME out[16])
 
static void TFN() s_mat44_rotate_y (TNAME rad, TNAME out[16])
 
static void TFN() s_mat44_rotate_z (TNAME rad, TNAME out[16])
 
static void TFN() s_mat44_rotate_z_self (TNAME rad, TNAME out[16])
 
static void TFN() s_mat44_scale (const TNAME sxyz[3], TNAME out[16])
 
static void TFN() s_mat44_scale_self (const TNAME sxyz[3], TNAME out[16])
 
static void TFN() s_mat44_to_xyt (const TNAME M[16], TNAME xyt[3])
 
static void TFN() s_mat44_transform_xyz (const TNAME M[16], const TNAME in[3], TNAME out[3])
 
static void TFN() s_mat44_translate (const TNAME txyz[3], TNAME out[16])
 
static void TFN() s_mat44_translate_self (const TNAME txyz[3], TNAME out[16])
 
static void TFN() s_mat_AB (const TNAME *A, int Arows, int Acols, const TNAME *B, int Brows, int Bcols, TNAME *R, int Rrows, int Rcols)
 
static void TFN() s_mat_Ab (const TNAME *A, int Arows, int Acols, const TNAME *B, int Blength, TNAME *R, int Rlength)
 
static void TFN() s_mat_ABC (const TNAME *A, int Arows, int Acols, const TNAME *B, int Brows, int Bcols, const TNAME *C, int Crows, int Ccols, TNAME *R, int Rrows, int Rcols)
 
static void TFN() s_mat_ABt (const TNAME *A, int Arows, int Acols, const TNAME *B, int Brows, int Bcols, TNAME *R, int Rrows, int Rcols)
 
static void TFN() s_mat_add (const TNAME *A, int Arows, int Acols, const TNAME *B, int Brows, int Bcols, TNAME *R, int Rrows, int Rcols)
 
static void TFN() s_mat_AtB (const TNAME *A, int Arows, int Acols, const TNAME *B, int Brows, int Bcols, TNAME *R, int Rrows, int Rcols)
 
static void TFN() s_mat_to_quat (const TNAME M[16], TNAME q[4])
 
static void TFN() s_mat_to_xyz (const TNAME M[16], TNAME xyz[3])
 
static void TFN() s_mat_transform_xyz (const TNAME M[16], const TNAME xyz[3], TNAME r[3])
 
static void TFN() s_normalize (const TNAME *v, int len, TNAME *r)
 
static void TFN() s_normalize_self (TNAME *v, int len)
 
static void TFN() s_print (const TNAME *a, int len, const char *fmt)
 
static void TFN() s_print_mat (const TNAME *a, int nrows, int ncols, const char *fmt)
 
static void TFN() s_print_mat44 (const TNAME *a, const char *fmt)
 
static void TFN() s_quat_inverse (const TNAME q[4], TNAME r[4])
 
static void TFN() s_quat_multiply (const TNAME a[4], const TNAME b[4], TNAME r[4])
 
static void TFN() s_quat_rotate (const TNAME q[4], const TNAME v[3], TNAME r[3])
 
static void TFN() s_quat_slerp (const TNAME q0[4], const TNAME _q1[4], TNAME r[4], TNAME w)
 
static void TFN() s_quat_to_angleaxis (const TNAME _q[4], TNAME r[4])
 
static void TFN() s_quat_to_mat44 (const TNAME q[4], TNAME r[16])
 
static void TFN() s_quat_to_rpy (const TNAME q[4], TNAME rpy[3])
 
static void TFN() s_quat_xyz_to_mat44 (const TNAME q[4], const TNAME xyz[3], TNAME r[16])
 
static void TFN() s_quat_xyz_to_xyt (const TNAME q[4], const TNAME xyz[3], TNAME xyt[3])
 
static void TFN() s_rpy_to_mat44 (const TNAME rpy[3], TNAME M[16])
 
static void TFN() s_rpy_to_quat (const TNAME rpy[3], TNAME quat[4])
 
static void TFN() s_scale (TNAME s, const TNAME *v, int len, TNAME *r)
 
static void TFN() s_scale_self (TNAME *v, int len, double scale)
 
static TNAME TFN() s_squared_distance (const TNAME *a, const TNAME *b, int len)
 
static TNAME TFN() s_squared_magnitude (const TNAME *v, int len)
 
static void TFN() s_subtract (const TNAME *a, const TNAME *b, int len, TNAME *r)
 
static void TFN() s_xyt_copy (const TNAME xyt[3], TNAME r[3])
 
static void TFN() s_xyt_inv (const TNAME xyta[3], TNAME xytr[3])
 
static void TFN() s_xyt_inv_mul (const TNAME xyta[3], const TNAME xytb[3], TNAME xytr[3])
 
static void TFN() s_xyt_mul (const TNAME xyta[3], const TNAME xytb[3], TNAME xytr[3])
 
static void TFN() s_xyt_to_mat44 (const TNAME xyt[3], TNAME r[16])
 
static void TFN() s_xyt_transform_xy (const TNAME xyt[3], const TNAME xy[2], TNAME r[2])
 
static void TFN() s_xytcov_copy (const TNAME xyta[3], const TNAME Ca[9], TNAME xytr[3], TNAME Cr[9])
 
static void TFN() s_xytcov_inv (const TNAME xyta[3], const TNAME Ca[9], TNAME xytr[3], TNAME Cr[9])
 
static void TFN() s_xytcov_mul (const TNAME xyta[3], const TNAME Ca[9], const TNAME xytb[3], const TNAME Cb[9], TNAME xytr[3], TNAME Cr[9])
 
static void TFN() s_xyzrpy_to_mat44 (const TNAME xyzrpy[6], TNAME M[16])
 

Macro Definition Documentation

#define TFN (   suffix)    TRFN(TNAME, suffix)

Definition at line 59 of file doubles_floats_impl.h.

#define TRFN (   root,
  suffix 
)    TRRFN(root, suffix)

Definition at line 58 of file doubles_floats_impl.h.

#define TRRFN (   root,
  suffix 
)    root ## suffix

Definition at line 57 of file doubles_floats_impl.h.

Function Documentation

static void TFN() s_add ( const TNAME a,
const TNAME b,
int  len,
TNAME r 
)
inlinestatic

Definition at line 97 of file doubles_floats_impl.h.

static void TFN() s_angleaxis_to_mat44 ( const TNAME  aa[4],
TNAME  r[4] 
)
inlinestatic

Definition at line 308 of file doubles_floats_impl.h.

static void TFN() s_angleaxis_to_quat ( const TNAME  aa[4],
TNAME  q[4] 
)
inlinestatic

Definition at line 269 of file doubles_floats_impl.h.

static void TFN() s_copy ( const TNAME src,
TNAME dst,
int  n 
)
inlinestatic

Definition at line 211 of file doubles_floats_impl.h.

static void TFN() s_cross_product ( const TNAME  v1[3],
const TNAME  v2[3],
TNAME  r[3] 
)
inlinestatic

Definition at line 740 of file doubles_floats_impl.h.

static TNAME TFN() s_distance ( const TNAME a,
const TNAME b,
int  len 
)
inlinestatic

Definition at line 123 of file doubles_floats_impl.h.

static TNAME TFN() s_dot ( const TNAME a,
const TNAME b,
int  len 
)
inlinestatic

Definition at line 115 of file doubles_floats_impl.h.

static TNAME* TFN() s_dup ( const TNAME v,
int  len 
)
inlinestatic

Definition at line 62 of file doubles_floats_impl.h.

static void TFN() s_elu_to_mat44 ( const TNAME  eye[3],
const TNAME  lookat[3],
const TNAME  _up[3],
TNAME  M[16] 
)
inlinestatic

Definition at line 875 of file doubles_floats_impl.h.

static TNAME TFN() s_magnitude ( const TNAME v,
int  len 
)
inlinestatic

Definition at line 147 of file doubles_floats_impl.h.

static void TFN() s_mat33_chol ( const TNAME A,
int  Arows,
int  Acols,
TNAME R,
int  Brows,
int  Bcols 
)
inlinestatic

Definition at line 915 of file doubles_floats_impl.h.

static void TFN() s_mat33_lower_tri_inv ( const TNAME A,
int  Arows,
int  Acols,
TNAME R,
int  Rrows,
int  Rcols 
)
inlinestatic

Definition at line 944 of file doubles_floats_impl.h.

static void TFN() s_mat33_sym_solve ( const TNAME A,
int  Arows,
int  Acols,
const TNAME B,
int  Brows,
int  Bcols,
TNAME R,
int  Rrows,
int  Rcols 
)
inlinestatic

Definition at line 967 of file doubles_floats_impl.h.

static void TFN() s_mat44_identity ( TNAME  out[16])
inlinestatic

Definition at line 748 of file doubles_floats_impl.h.

static void TFN() s_mat44_inv ( const TNAME  M[16],
TNAME  out[16] 
)
inlinestatic

Definition at line 829 of file doubles_floats_impl.h.

static void TFN() s_mat44_inv_rotate_vector ( const TNAME  M[16],
const TNAME  in[3],
TNAME  out[3] 
)
inlinestatic

Definition at line 867 of file doubles_floats_impl.h.

static void TFN() s_mat44_inv_transform_xyz ( const TNAME  M[16],
const TNAME  in[3],
TNAME  out[3] 
)
inlinestatic

Definition at line 858 of file doubles_floats_impl.h.

static void TFN() s_mat44_rotate_vector ( const TNAME  M[16],
const TNAME  in[3],
TNAME  out[3] 
)
inlinestatic

Definition at line 409 of file doubles_floats_impl.h.

static void TFN() s_mat44_rotate_x ( TNAME  rad,
TNAME  out[16] 
)
inlinestatic

Definition at line 793 of file doubles_floats_impl.h.

static void TFN() s_mat44_rotate_y ( TNAME  rad,
TNAME  out[16] 
)
inlinestatic

Definition at line 783 of file doubles_floats_impl.h.

static void TFN() s_mat44_rotate_z ( TNAME  rad,
TNAME  out[16] 
)
inlinestatic

Definition at line 773 of file doubles_floats_impl.h.

static void TFN() s_mat44_rotate_z_self ( TNAME  rad,
TNAME  out[16] 
)
inlinestatic

Definition at line 820 of file doubles_floats_impl.h.

static void TFN() s_mat44_scale ( const TNAME  sxyz[3],
TNAME  out[16] 
)
inlinestatic

Definition at line 765 of file doubles_floats_impl.h.

static void TFN() s_mat44_scale_self ( const TNAME  sxyz[3],
TNAME  out[16] 
)
inlinestatic

Definition at line 812 of file doubles_floats_impl.h.

static void TFN() s_mat44_to_xyt ( const TNAME  M[16],
TNAME  xyt[3] 
)
inlinestatic

Definition at line 415 of file doubles_floats_impl.h.

static void TFN() s_mat44_transform_xyz ( const TNAME  M[16],
const TNAME  in[3],
TNAME  out[3] 
)
inlinestatic

Definition at line 402 of file doubles_floats_impl.h.

static void TFN() s_mat44_translate ( const TNAME  txyz[3],
TNAME  out[16] 
)
inlinestatic

Definition at line 757 of file doubles_floats_impl.h.

static void TFN() s_mat44_translate_self ( const TNAME  txyz[3],
TNAME  out[16] 
)
inlinestatic

Definition at line 804 of file doubles_floats_impl.h.

static void TFN() s_mat_AB ( const TNAME A,
int  Arows,
int  Acols,
const TNAME B,
int  Brows,
int  Bcols,
TNAME R,
int  Rrows,
int  Rcols 
)
inlinestatic

Definition at line 623 of file doubles_floats_impl.h.

static void TFN() s_mat_Ab ( const TNAME A,
int  Arows,
int  Acols,
const TNAME B,
int  Blength,
TNAME R,
int  Rlength 
)
inlinestatic

Definition at line 672 of file doubles_floats_impl.h.

static void TFN() s_mat_ABC ( const TNAME A,
int  Arows,
int  Acols,
const TNAME B,
int  Brows,
int  Bcols,
const TNAME C,
int  Crows,
int  Ccols,
TNAME R,
int  Rrows,
int  Rcols 
)
inlinestatic

Definition at line 661 of file doubles_floats_impl.h.

static void TFN() s_mat_ABt ( const TNAME A,
int  Arows,
int  Acols,
const TNAME B,
int  Brows,
int  Bcols,
TNAME R,
int  Rrows,
int  Rcols 
)
inlinestatic

Definition at line 643 of file doubles_floats_impl.h.

static void TFN() s_mat_add ( const TNAME A,
int  Arows,
int  Acols,
const TNAME B,
int  Brows,
int  Bcols,
TNAME R,
int  Rrows,
int  Rcols 
)
inlinestatic

Definition at line 607 of file doubles_floats_impl.h.

static void TFN() s_mat_AtB ( const TNAME A,
int  Arows,
int  Acols,
const TNAME B,
int  Brows,
int  Bcols,
TNAME R,
int  Rrows,
int  Rcols 
)
inlinestatic

Definition at line 687 of file doubles_floats_impl.h.

static void TFN() s_mat_to_quat ( const TNAME  M[16],
TNAME  q[4] 
)
inlinestatic

Definition at line 431 of file doubles_floats_impl.h.

static void TFN() s_mat_to_xyz ( const TNAME  M[16],
TNAME  xyz[3] 
)
inlinestatic

Definition at line 424 of file doubles_floats_impl.h.

static void TFN() s_mat_transform_xyz ( const TNAME  M[16],
const TNAME  xyz[3],
TNAME  r[3] 
)
inlinestatic

Definition at line 242 of file doubles_floats_impl.h.

static void TFN() s_normalize ( const TNAME v,
int  len,
TNAME r 
)
inlinestatic

Definition at line 155 of file doubles_floats_impl.h.

static void TFN() s_normalize_self ( TNAME v,
int  len 
)
inlinestatic

Definition at line 162 of file doubles_floats_impl.h.

static void TFN() s_print ( const TNAME a,
int  len,
const char *  fmt 
)
inlinestatic

Definition at line 72 of file doubles_floats_impl.h.

static void TFN() s_print_mat ( const TNAME a,
int  nrows,
int  ncols,
const char *  fmt 
)
inlinestatic

Definition at line 79 of file doubles_floats_impl.h.

static void TFN() s_print_mat44 ( const TNAME a,
const char *  fmt 
)
inlinestatic

Definition at line 88 of file doubles_floats_impl.h.

static void TFN() s_quat_inverse ( const TNAME  q[4],
TNAME  r[4] 
)
inlinestatic

Definition at line 202 of file doubles_floats_impl.h.

static void TFN() s_quat_multiply ( const TNAME  a[4],
const TNAME  b[4],
TNAME  r[4] 
)
inlinestatic

Definition at line 194 of file doubles_floats_impl.h.

static void TFN() s_quat_rotate ( const TNAME  q[4],
const TNAME  v[3],
TNAME  r[3] 
)
inlinestatic

Definition at line 175 of file doubles_floats_impl.h.

static void TFN() s_quat_slerp ( const TNAME  q0[4],
const TNAME  _q1[4],
TNAME  r[4],
TNAME  w 
)
inlinestatic

Definition at line 705 of file doubles_floats_impl.h.

static void TFN() s_quat_to_angleaxis ( const TNAME  _q[4],
TNAME  r[4] 
)
inlinestatic

Definition at line 249 of file doubles_floats_impl.h.

static void TFN() s_quat_to_mat44 ( const TNAME  q[4],
TNAME  r[16] 
)
inlinestatic

Definition at line 283 of file doubles_floats_impl.h.

static void TFN() s_quat_to_rpy ( const TNAME  q[4],
TNAME  rpy[3] 
)
inlinestatic

Definition at line 351 of file doubles_floats_impl.h.

static void TFN() s_quat_xyz_to_mat44 ( const TNAME  q[4],
const TNAME  xyz[3],
TNAME  r[16] 
)
inlinestatic

Definition at line 316 of file doubles_floats_impl.h.

static void TFN() s_quat_xyz_to_xyt ( const TNAME  q[4],
const TNAME  xyz[3],
TNAME  xyt[3] 
)
inlinestatic

Definition at line 465 of file doubles_floats_impl.h.

static void TFN() s_rpy_to_mat44 ( const TNAME  rpy[3],
TNAME  M[16] 
)
inlinestatic

Definition at line 386 of file doubles_floats_impl.h.

static void TFN() s_rpy_to_quat ( const TNAME  rpy[3],
TNAME  quat[4] 
)
inlinestatic

Definition at line 327 of file doubles_floats_impl.h.

static void TFN() s_scale ( TNAME  s,
const TNAME v,
int  len,
TNAME r 
)
inlinestatic

Definition at line 109 of file doubles_floats_impl.h.

static void TFN() s_scale_self ( TNAME v,
int  len,
double  scale 
)
inlinestatic

Definition at line 169 of file doubles_floats_impl.h.

static TNAME TFN() s_squared_distance ( const TNAME a,
const TNAME b,
int  len 
)
inlinestatic

Definition at line 131 of file doubles_floats_impl.h.

static TNAME TFN() s_squared_magnitude ( const TNAME v,
int  len 
)
inlinestatic

Definition at line 139 of file doubles_floats_impl.h.

static void TFN() s_subtract ( const TNAME a,
const TNAME b,
int  len,
TNAME r 
)
inlinestatic

Definition at line 103 of file doubles_floats_impl.h.

static void TFN() s_xyt_copy ( const TNAME  xyt[3],
TNAME  r[3] 
)
inlinestatic

Definition at line 216 of file doubles_floats_impl.h.

static void TFN() s_xyt_inv ( const TNAME  xyta[3],
TNAME  xytr[3] 
)
inlinestatic

Definition at line 544 of file doubles_floats_impl.h.

static void TFN() s_xyt_inv_mul ( const TNAME  xyta[3],
const TNAME  xytb[3],
TNAME  xytr[3] 
)
inlinestatic

Definition at line 594 of file doubles_floats_impl.h.

static void TFN() s_xyt_mul ( const TNAME  xyta[3],
const TNAME  xytb[3],
TNAME  xytr[3] 
)
inlinestatic

Definition at line 473 of file doubles_floats_impl.h.

static void TFN() s_xyt_to_mat44 ( const TNAME  xyt[3],
TNAME  r[16] 
)
inlinestatic

Definition at line 221 of file doubles_floats_impl.h.

static void TFN() s_xyt_transform_xy ( const TNAME  xyt[3],
const TNAME  xy[2],
TNAME  r[2] 
)
inlinestatic

Definition at line 235 of file doubles_floats_impl.h.

static void TFN() s_xytcov_copy ( const TNAME  xyta[3],
const TNAME  Ca[9],
TNAME  xytr[3],
TNAME  Cr[9] 
)
inlinestatic

Definition at line 483 of file doubles_floats_impl.h.

static void TFN() s_xytcov_inv ( const TNAME  xyta[3],
const TNAME  Ca[9],
TNAME  xytr[3],
TNAME  Cr[9] 
)
inlinestatic

Definition at line 552 of file doubles_floats_impl.h.

static void TFN() s_xytcov_mul ( const TNAME  xyta[3],
const TNAME  Ca[9],
const TNAME  xytb[3],
const TNAME  Cb[9],
TNAME  xytr[3],
TNAME  Cr[9] 
)
inlinestatic

Definition at line 490 of file doubles_floats_impl.h.

static void TFN() s_xyzrpy_to_mat44 ( const TNAME  xyzrpy[6],
TNAME  M[16] 
)
inlinestatic

Definition at line 394 of file doubles_floats_impl.h.



apriltags2
Author(s): Danylo Malyuta
autogenerated on Fri Oct 19 2018 04:02:33