ma::maths::ArrayBase

Base class for data storage. More...

Header
#include <arraybase.h>

Module

Public Types#

using
Values = typename Traits< ArrayBase< Derived >>::Values

using
Residuals = typename Traits< ArrayBase< Derived >>::Residuals

using
Index = typename Traits< ArrayBase< Derived >>::Index

Public Functions#

ArrayBase(const ArrayBase &other)=default

Index
rows() const noexcept

Index
cols() const noexcept

Values &
values() noexcept

const Values &
values() const noexcept

Residuals &
residuals() noexcept

const Residuals &
residuals() const noexcept

bool
isValid() const noexcept

bool
isOccluded() const noexcept

Derived &
derived() noexcept

const Derived &
derived() const noexcept

BlockOp< ArrayBase< Derived >, 1 >
x() noexcept

const BlockOp< const ArrayBase< Derived >, 1 >
x() const noexcept

BlockOp< ArrayBase< Derived >, 1 >
y() noexcept

const BlockOp< const ArrayBase< Derived >, 1 >
y() const noexcept

BlockOp< ArrayBase< Derived >, 1 >
z() noexcept

const BlockOp< const ArrayBase< Derived >, 1 >
z() const noexcept

BlockOp< ArrayBase< Derived >, 3 >
u() noexcept

const BlockOp< const ArrayBase< Derived >, 3 >
u() const noexcept

BlockOp< ArrayBase< Derived >, 3 >
v() noexcept

const BlockOp< const ArrayBase< Derived >, 3 >
v() const noexcept

BlockOp< ArrayBase< Derived >, 3 >
w() noexcept

const BlockOp< const ArrayBase< Derived >, 3 >
w() const noexcept

BlockOp< ArrayBase< Derived >, 3 >
o() noexcept

const BlockOp< const ArrayBase< Derived >, 3 >
o() const noexcept

Protected Functions#

ArrayBase(const Values &values, const Residuals &residuals)

Related Non-Members#

const ScaleOp< Xpr >
operator*(double x1, const XprBase< Xpr > &x2)

const ScaleOp< Xpr >
operator*(const XprBase< Xpr > &x1, double x2)

const SumOp< XprOne, XprTwo >
operator+(const XprBase< XprOne > &x1, const XprBase< XprTwo > &x2) noexcept

const DifferenceOp< XprOne, XprTwo >
operator-(const XprBase< XprOne > &x1, const XprBase< XprTwo > &x2) noexcept

const ScaleOp< Xpr >
operator/(const XprBase< Xpr > &x1, double x2)

Detailed Description#

Todo

Write a detailed description

Member Type Documentation#

ma::maths::ArrayBase::Index
ma::maths::ArrayBase::Residuals
ma::maths::ArrayBase::Values

Member Function Documentation#

ma::maths::ArrayBase::ArrayBase ( const ArrayBase & other )

Default copy constructor

ma::maths::ArrayBase::ArrayBase ( const Values & values , const Residuals & residuals ) [inline]

Constructor from data

Index ma::maths::ArrayBase::cols ( ) const noexcept [inline]

Returns the number of values' columns.

Derived & ma::maths::ArrayBase::derived ( ) noexcept [inline]

Cast the object to a Derived type reference.

const Derived & ma::maths::ArrayBase::derived ( ) const noexcept [inline]

Cast the object to a Derived type consts reference.

bool ma::maths::ArrayBase::isOccluded ( ) const noexcept [inline]

Convient method to determine if some value were not correctly reconstructed (i.e. occluded). Internaly, the associated residual is analyzed to find if some of them are negative.

bool ma::maths::ArrayBase::isValid ( ) const noexcept [inline]

Convient method to determine if the content of the object is valid. A valid object has at least 1 row. An object with no row is invalid.

BlockOp < ArrayBase < Derived >, 3 > ma::maths::ArrayBase::o ( ) noexcept [inline]

Convenient method to extract the columns #10-12 of the values (could be usefull with Pose object).

Warning

This method does not check the number of existing columns. Unknown behaviour will happen if the number of columns is less than the one requested.

const BlockOp < const ArrayBase < Derived >, 3 > ma::maths::ArrayBase::o ( ) const noexcept [inline]

Convenient method to extract the columns #10-12 of the values (could be usefull with Pose object).

Warning

This method does not check the number of existing columns. Unknown behaviour will happen if the number of columns is less than the one requested.

Residuals & ma::maths::ArrayBase::residuals ( ) noexcept [inline]

Returns a reference for the residuals associated with the stored values. The number of rows is equal to the number of values' rows. The number of columns is always 1.

const Residuals & ma::maths::ArrayBase::residuals ( ) const noexcept [inline]

Returns a const reference for the residuals associated with the stored values. The number of rows is equal to the number of values' rows. The number of columns is always 1.

Index ma::maths::ArrayBase::rows ( ) const noexcept [inline]

Returns the number of values' rows .

BlockOp < ArrayBase < Derived >, 3 > ma::maths::ArrayBase::u ( ) noexcept [inline]

Convenient method to extract the columns #1-3 of the values (could be usefull with Pose object).

Warning

This method does not check the number of existing columns. Unknown behaviour will happen if the number of columns is less than the one requested.

const BlockOp < const ArrayBase < Derived >, 3 > ma::maths::ArrayBase::u ( ) const noexcept [inline]

Convenient method to extract the columns #1-3 of the values (could be usefull with Pose object).

Warning

This method does not check the number of existing columns. Unknown behaviour will happen if the number of columns is less than the one requested.

BlockOp < ArrayBase < Derived >, 3 > ma::maths::ArrayBase::v ( ) noexcept [inline]

Convenient method to extract the columns #4-6 of the values (could be usefull with Pose object).

Warning

This method does not check the number of existing columns. Unknown behaviour will happen if the number of columns is less than the one requested.

const BlockOp < const ArrayBase < Derived >, 3 > ma::maths::ArrayBase::v ( ) const noexcept [inline]

Convenient method to extract the columns #4-6 of the values (could be usefull with Pose object).

Warning

This method does not check the number of existing columns. Unknown behaviour will happen if the number of columns is less than the one requested.

Values & ma::maths::ArrayBase::values ( ) noexcept [inline]

Returns a reference for the values stored in this object.

const Values & ma::maths::ArrayBase::values ( ) const noexcept [inline]

Returns a const reference for the values stored in this object.

BlockOp < ArrayBase < Derived >, 3 > ma::maths::ArrayBase::w ( ) noexcept [inline]

Convenient method to extract the columns #7-9 of the values (could be usefull with Pose object).

Warning

This method does not check the number of existing columns. Unknown behaviour will happen if the number of columns is less than the one requested.

const BlockOp < const ArrayBase < Derived >, 3 > ma::maths::ArrayBase::w ( ) const noexcept [inline]

Convenient method to extract the columns #7-9 of the values (could be usefull with Pose object).

Warning

This method does not check the number of existing columns. Unknown behaviour will happen if the number of columns is less than the one requested.

BlockOp < ArrayBase < Derived >, 1 > ma::maths::ArrayBase::x ( ) noexcept [inline]

Convenient method to extract the first column of the values.

Warning

This method does not check the number of existing columns. Unknown behaviour will happen if the number of columns is less than the one(s) requested.

const BlockOp < const ArrayBase < Derived >, 1 > ma::maths::ArrayBase::x ( ) const noexcept [inline]

Convenient method to extract the first column of the values.

Warning

This method does not check the number of existing columns. Unknown behaviour will happen if the number of columns is less than the one(s) requested.

BlockOp < ArrayBase < Derived >, 1 > ma::maths::ArrayBase::y ( ) noexcept [inline]

Convenient method to extract the second column of the values.

Warning

This method does not check the number of existing columns. Unknown behaviour will happen if the number of columns is less than the one(s) requested.

const BlockOp < const ArrayBase < Derived >, 1 > ma::maths::ArrayBase::y ( ) const noexcept [inline]

Convenient method to extract the second column of the values.

Warning

This method does not check the number of existing columns. Unknown behaviour will happen if the number of columns is less than the one(s) requested.

BlockOp < ArrayBase < Derived >, 1 > ma::maths::ArrayBase::z ( ) noexcept [inline]

Convenient method to extract the third column of the values.

Warning

This method does not check the number of existing columns. Unknown behaviour will happen if the number of columns is less than the one(s) requested.

const BlockOp < const ArrayBase < Derived >, 1 > ma::maths::ArrayBase::z ( ) const noexcept [inline]

Convenient method to extract the third column of the values.

Warning

This method does not check the number of existing columns. Unknown behaviour will happen if the number of columns is less than the one(s) requested.

Related Non-Members Documentation#

const ScaleOp < Xpr > ma::maths::ArrayBase::operator* ( double x1 , const XprBase < Xpr > & x2 )

Convenient multiplication operator to scale the template expressions x2 by the scalarax1.

const ScaleOp < Xpr > ma::maths::ArrayBase::operator* ( const XprBase < Xpr > & x1 , double x2 )

Convenient multiplication operator to scale the template expressions x1 by x2.

const SumOp < XprOne, XprTwo > ma::maths::ArrayBase::operator+ ( const XprBase < XprOne > & x1 , const XprBase < XprTwo > & x2 ) noexcept

Convenient okys operator to compute the sum between two template expressions

const DifferenceOp < XprOne, XprTwo > ma::maths::ArrayBase::operator- ( const XprBase < XprOne > & x1 , const XprBase < XprTwo > & x2 ) noexcept

Convenient minus operator to compute the difference between two template expressions

const ScaleOp < Xpr > ma::maths::ArrayBase::operator/ ( const XprBase < Xpr > & x1 , double x2 )

Convenient division operator to scale the template expressions x1 by x2.