This class is a "CSerializable" wrapper for "CMatrixBool".
Definition at line 26 of file CMatrixB.h.
#include <mrpt/math/CMatrixB.h>
Public Types | |
typedef bool | value_type |
The type of the matrix elements. More... | |
typedef bool & | reference |
typedef const bool & | const_reference |
typedef std::size_t | size_type |
typedef std::ptrdiff_t | difference_type |
Public Member Functions | |
void * | operator new (size_t size) |
void * | operator new[] (size_t size) |
void | operator delete (void *ptr) throw () |
void | operator delete[] (void *ptr) throw () |
void | operator delete (void *memory, void *ptr) throw () |
void * | operator new (size_t size, const std::nothrow_t &) throw () |
void | operator delete (void *ptr, const std::nothrow_t &) throw () |
CMatrixB (size_t row=1, size_t col=1) | |
Constructor. More... | |
CMatrixB (const CMatrixBool &m) | |
Copy constructor. More... | |
CMatrixB & | operator= (const CMatrixBool &m) |
Assignment operator for float matrixes. More... | |
virtual mxArray * | writeToMatlab () const |
Introduces a pure virtual method responsible for writing to a mxArray Matlab object, typically a MATLAB struct whose contents are documented in each derived class. More... | |
CObject * | clone () const |
Cloning interface for smart pointers. More... | |
void | ASSERT_ENOUGHROOM (size_t r, size_t c) const |
Checks whether the rows [r-N,r+N] and the columns [c-N,c+N] are present in the matrix. More... | |
void | fillAll (const bool &val) |
void | swap (CMatrixTemplate< bool > &o) |
Swap with another matrix very efficiently (just swaps a pointer and two integer values). More... | |
size_t | getRowCount () const |
Number of rows in the matrix. More... | |
size_t | getColCount () const |
Number of columns in the matrix. More... | |
CMatrixTemplateSize | size () const |
Get a 2-vector with [NROWS NCOLS] (as in MATLAB command size(x)) More... | |
void | setSize (size_t row, size_t col, bool zeroNewElements=false) |
Changes the size of matrix, maintaining the previous contents. More... | |
void | resize (const CMatrixTemplateSize &siz, bool zeroNewElements=false) |
This method just checks has no effects in this class, but raises an exception if the expected size does not match. More... | |
bool & | operator() (size_t row, size_t col) |
Subscript operator to get/set individual elements. More... | |
const bool & | operator() (size_t row, size_t col) const |
Subscript operator to get individual elements. More... | |
bool & | operator() (size_t ith) |
Subscript operator to get/set an individual element from a row or column matrix. More... | |
bool | operator() (size_t ith) const |
Subscript operator to get/set an individual element from a row or column matrix. More... | |
CMatrixTemplate< bool > | operator() (const size_t row1, const size_t row2, const size_t col1, const size_t col2) const |
Subscript operator to get a submatrix. More... | |
void | set_unsafe (size_t row, size_t col, const bool &v) |
Fast but unsafe method to write a value in the matrix. More... | |
const bool & | get_unsafe (size_t row, size_t col) const |
Fast but unsafe method to read a value from the matrix. More... | |
bool & | get_unsafe (size_t row, size_t col) |
Fast but unsafe method to get a reference from the matrix. More... | |
bool * | get_unsafe_row (size_t row) |
Fast but unsafe method to obtain a pointer to a given row of the matrix (Use only in time critical applications) More... | |
const bool * | get_unsafe_row (size_t row) const |
Fast but unsafe method to obtain a pointer to a given row of the matrix (Use only in critical applications) More... | |
void | extractSubmatrix (const size_t row1, const size_t row2, const size_t col1, const size_t col2, CMatrixTemplate< bool > &out) const |
Get a submatrix, given its bounds. More... | |
void | extractSubmatrix (const size_t row1, const size_t row2, const size_t col1, const size_t col2, EIGEN_MATRIX &out) const |
void | extractRows (size_t firstRow, size_t lastRow, CMatrixTemplate< bool > &out) const |
Gets a series of contiguous rows. More... | |
void | extractColumns (size_t firstCol, size_t lastCol, CMatrixTemplate< bool > &out) const |
Gets a series of contiguous columns. More... | |
void | extractCol (size_t nCol, std::vector< bool > &out, int startingRow=0) const |
Returns a given column to a vector (without modifying the matrix) More... | |
void | extractCol (size_t nCol, CMatrixTemplate< bool > &out, int startingRow=0) const |
Gets a given column to a vector (without modifying the matrix) More... | |
void | appendRow (const std::vector< bool > &in) |
Appends a new row to the MxN matrix from a 1xN vector. More... | |
void | appendCol (const std::vector< bool > &in) |
Appends a new column to the matrix from a vector. More... | |
void | insertCol (size_t nCol, const std::vector< bool > &in) |
Inserts a column from a vector, replacing the current contents of that column. More... | |
void | getAsVector (std::vector< bool > &out) const |
Returns a vector containing the matrix's values. More... | |
RTTI classes and functions | |
mrpt::utils::CObjectPtr | duplicateGetSmartPtr () const |
Returns a copy of the object, indepently of its class, as a smart pointer (the newly created object will exist as long as any copy of this smart pointer). More... | |
Static Public Member Functions | |
static void * | operator new (size_t size, void *ptr) |
Static Public Attributes | |
static const mrpt::utils::TRuntimeClassId | classCObject |
RTTI stuff | |
static const mrpt::utils::TRuntimeClassId | classCSerializable |
Protected Member Functions | |
void | realloc (size_t row, size_t col, bool newElementsToZero=false) |
Internal use only: It reallocs the memory for the 2D matrix, maintaining the previous contents if posible. More... | |
CSerializable virtual methods | |
void | writeToStream (mrpt::utils::CStream &out, int *getVersion) const |
Introduces a pure virtual method responsible for writing to a CStream. More... | |
void | readFromStream (mrpt::utils::CStream &in, int version) |
Introduces a pure virtual method responsible for loading from a CStream This can not be used directly be users, instead use "stream >> object;" for reading it from a stream or "stream >> object_ptr;" if the class is unknown apriori. More... | |
Protected Attributes | |
bool ** | m_Val |
size_t | m_Rows |
size_t | m_Cols |
RTTI stuff | |
typedef CMatrixBPtr | Ptr |
typedef CMatrixBPtr | ConstPtr |
static mrpt::utils::CLASSINIT | _init_CMatrixB |
static mrpt::utils::TRuntimeClassId | classCMatrixB |
static const mrpt::utils::TRuntimeClassId * | classinfo |
static const mrpt::utils::TRuntimeClassId * | _GetBaseClass () |
virtual const mrpt::utils::TRuntimeClassId * | GetRuntimeClass () const |
Returns information about the class of an object in runtime. More... | |
virtual mrpt::utils::CObject * | duplicate () const |
Returns a copy of the object, indepently of its class. More... | |
static mrpt::utils::CObject * | CreateObject () |
static CMatrixBPtr | Create () |
|
inherited |
Definition at line 60 of file CMatrixTemplate.h.
typedef CMatrixBPtr mrpt::math::CMatrixB::ConstPtr |
Definition at line 29 of file CMatrixB.h.
|
inherited |
Definition at line 62 of file CMatrixTemplate.h.
typedef CMatrixBPtr mrpt::math::CMatrixB::Ptr |
A typedef for the associated smart pointer
Definition at line 29 of file CMatrixB.h.
|
inherited |
Definition at line 59 of file CMatrixTemplate.h.
|
inherited |
Definition at line 61 of file CMatrixTemplate.h.
|
inherited |
The type of the matrix elements.
Definition at line 58 of file CMatrixTemplate.h.
|
inline |
Constructor.
Definition at line 32 of file CMatrixB.h.
|
inline |
Copy constructor.
Definition at line 34 of file CMatrixB.h.
|
staticprotected |
|
inlineinherited |
Appends a new column to the matrix from a vector.
The length of the vector must match the number of rows of the matrix, unless it is (0,0).
std::exception | On size mismatch. |
Definition at line 532 of file CMatrixTemplate.h.
|
inlineinherited |
Appends a new row to the MxN matrix from a 1xN vector.
The lenght of the vector must match the width of the matrix, unless it's empty: in that case the matrix is resized to 1xN.
std::exception | On incorrect vector length. |
Definition at line 503 of file CMatrixTemplate.h.
|
inlineinherited |
Checks whether the rows [r-N,r+N] and the columns [c-N,c+N] are present in the matrix.
Definition at line 121 of file CMatrixTemplate.h.
|
inlineinherited |
|
static |
|
static |
|
virtual |
Returns a copy of the object, indepently of its class.
Implements mrpt::utils::CObject.
|
inlineinherited |
Returns a copy of the object, indepently of its class, as a smart pointer (the newly created object will exist as long as any copy of this smart pointer).
Definition at line 162 of file CObject.h.
References mrpt::utils::CObjectPtr.
Referenced by mrpt::obs::CRawlog::addActions(), mrpt::slam::CIncrementalMapPartitioner::addMapFrame(), and mrpt::obs::CRawlog::addObservations().
|
inlineinherited |
Returns a given column to a vector (without modifying the matrix)
std::exception | On index out of bounds |
Definition at line 457 of file CMatrixTemplate.h.
|
inlineinherited |
Gets a given column to a vector (without modifying the matrix)
std::exception | On index out of bounds |
Definition at line 475 of file CMatrixTemplate.h.
|
inlineinherited |
Gets a series of contiguous columns.
std::logic_error | On index out of bounds |
Definition at line 449 of file CMatrixTemplate.h.
|
inlineinherited |
Gets a series of contiguous rows.
std::logic_error | On index out of bounds |
Definition at line 439 of file CMatrixTemplate.h.
|
inlineinherited |
Get a submatrix, given its bounds.
Definition at line 406 of file CMatrixTemplate.h.
|
inlineinherited |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Definition at line 420 of file CMatrixTemplate.h.
|
inlineinherited |
Fill all the elements with a given value (Note: named "fillAll" since "fill" will be used by child classes)
Definition at line 127 of file CMatrixTemplate.h.
|
inlineinherited |
Fast but unsafe method to read a value from the matrix.
Definition at line 358 of file CMatrixTemplate.h.
|
inlineinherited |
Fast but unsafe method to get a reference from the matrix.
Definition at line 369 of file CMatrixTemplate.h.
|
inlineinherited |
Fast but unsafe method to obtain a pointer to a given row of the matrix (Use only in time critical applications)
Definition at line 380 of file CMatrixTemplate.h.
|
inlineinherited |
Fast but unsafe method to obtain a pointer to a given row of the matrix (Use only in critical applications)
Definition at line 391 of file CMatrixTemplate.h.
|
inlineinherited |
Returns a vector containing the matrix's values.
Definition at line 560 of file CMatrixTemplate.h.
|
inlineinherited |
Number of columns in the matrix.
Definition at line 244 of file CMatrixTemplate.h.
|
inlineinherited |
Number of rows in the matrix.
Definition at line 239 of file CMatrixTemplate.h.
|
virtual |
Returns information about the class of an object in runtime.
Reimplemented from mrpt::utils::CSerializable.
|
inlineinherited |
Inserts a column from a vector, replacing the current contents of that column.
std::exception | On index out of bounds |
Definition at line 547 of file CMatrixTemplate.h.
Definition at line 29 of file CMatrixB.h.
Definition at line 29 of file CMatrixB.h.
Definition at line 29 of file CMatrixB.h.
Definition at line 29 of file CMatrixB.h.
Definition at line 29 of file CMatrixB.h.
|
inline |
Definition at line 29 of file CMatrixB.h.
|
inline |
Definition at line 29 of file CMatrixB.h.
|
inline |
Definition at line 29 of file CMatrixB.h.
|
inlineinherited |
Subscript operator to get/set individual elements.
Definition at line 269 of file CMatrixTemplate.h.
|
inlineinherited |
Subscript operator to get individual elements.
Definition at line 280 of file CMatrixTemplate.h.
|
inlineinherited |
Subscript operator to get/set an individual element from a row or column matrix.
std::exception | If the object is not a column or row matrix. |
Definition at line 292 of file CMatrixTemplate.h.
|
inlineinherited |
Subscript operator to get/set an individual element from a row or column matrix.
std::exception | If the object is not a column or row matrix. |
Definition at line 320 of file CMatrixTemplate.h.
|
inlineinherited |
Subscript operator to get a submatrix.
Definition at line 397 of file CMatrixTemplate.h.
|
inline |
Assignment operator for float matrixes.
Definition at line 36 of file CMatrixB.h.
References mrpt::math::CMatrixBool::operator=().
|
protectedvirtual |
Introduces a pure virtual method responsible for loading from a CStream This can not be used directly be users, instead use "stream >> object;" for reading it from a stream or "stream >> object_ptr;" if the class is unknown apriori.
in | The input binary stream where the object data must read from. |
version | The version of the object stored in the stream: use this version number in your code to know how to read the incoming data. |
std::exception | On any error, see CStream::ReadBuffer |
Implements mrpt::utils::CSerializable.
Definition at line 47 of file CMatrixB.cpp.
References MRPT_THROW_UNKNOWN_SERIALIZATION_VERSION, setSize(), THROW_EXCEPTION, and version.
|
inlineprotectedinherited |
Internal use only: It reallocs the memory for the 2D matrix, maintaining the previous contents if posible.
Definition at line 71 of file CMatrixTemplate.h.
|
inlineinherited |
This method just checks has no effects in this class, but raises an exception if the expected size does not match.
Definition at line 262 of file CMatrixTemplate.h.
|
inlineinherited |
Fast but unsafe method to write a value in the matrix.
Definition at line 347 of file CMatrixTemplate.h.
|
inlineinherited |
Changes the size of matrix, maintaining the previous contents.
Definition at line 256 of file CMatrixTemplate.h.
|
inlineinherited |
Get a 2-vector with [NROWS NCOLS] (as in MATLAB command size(x))
Definition at line 247 of file CMatrixTemplate.h.
|
inlineinherited |
Swap with another matrix very efficiently (just swaps a pointer and two integer values).
Definition at line 134 of file CMatrixTemplate.h.
|
inlinevirtualinherited |
Introduces a pure virtual method responsible for writing to a mxArray
Matlab object, typically a MATLAB struct
whose contents are documented in each derived class.
mxArray
(caller is responsible of memory freeing) or NULL is class does not support conversion to MATLAB. Definition at line 79 of file CSerializable.h.
|
protectedvirtual |
Introduces a pure virtual method responsible for writing to a CStream.
This can not be used directly be users, instead use "stream << object;" for writing it to a stream.
out | The output binary stream where object must be dumped. |
getVersion | If NULL, the object must be dumped. If not, only the version of the object dump must be returned in this pointer. This enables the versioning of objects dumping and backward compatibility with previously stored data. |
std::exception | On any error, see CStream::WriteBuffer |
Implements mrpt::utils::CSerializable.
Definition at line 26 of file CMatrixB.cpp.
|
staticprotected |
Definition at line 29 of file CMatrixB.h.
|
static |
Definition at line 29 of file CMatrixB.h.
|
staticinherited |
|
staticinherited |
Definition at line 42 of file CSerializable.h.
|
static |
Definition at line 29 of file CMatrixB.h.
|
protectedinherited |
Definition at line 67 of file CMatrixTemplate.h.
|
protectedinherited |
Definition at line 67 of file CMatrixTemplate.h.
|
protectedinherited |
Definition at line 66 of file CMatrixTemplate.h.
Page generated by Doxygen 1.8.14 for MRPT 1.5.7 Git: 5902e14cc Wed Apr 24 15:04:01 2019 +0200 at lun oct 28 01:39:17 CET 2019 |