This class implements the tables of databases.
Definition at line 29 of file CSimpleDatabase.h.
#include <mrpt/utils/CSimpleDatabase.h>
Public Member Functions | |
CSimpleDatabaseTable () | |
Default constructor. More... | |
virtual | ~CSimpleDatabaseTable () |
Destructor. More... | |
size_t | fieldsCount () const |
Get the count of fields. More... | |
size_t | appendRecord () |
Append a new and empty record at the end of the table, and return the index of the newly added record. More... | |
void | addField (const char *fieldName) |
Add a new field to the table. More... | |
void | addField (const std::string &fieldName) |
Add a new field to the table. More... | |
std::string | getFieldName (size_t fieldIndex) const |
Get the name of a field by its index. More... | |
size_t | fieldIndex (const char *fieldName) const |
Get the index for a given field name. More... | |
size_t | fieldIndex (const std::string &fieldName) const |
Get the index for a given field name. More... | |
size_t | getRecordCount () const |
Get the records count in the table. More... | |
std::string | get (size_t recordIndex, std::string field) const |
Returns the cell content of the record indicates by its index, and the field indicated in "field". More... | |
std::string | get (size_t recordIndex, size_t fieldIndex) const |
Returns the cell content of the record indicates by its index, and the field indicated by its index. More... | |
void | set (size_t recordIndex, std::string field, std::string value) |
Sets the cell content of the record indicates by its index, and the field indicated in "field". More... | |
void | set (size_t recordIndex, size_t fieldIndex, std::string value) |
Sets the cell content of the record indicates by its index, and the field indicated by its index. More... | |
int | query (std::string field, std::string value) const |
Executes a query in the table, returning the record index which a given field has a given value, case insensitive, or -1 if not found. More... | |
void | deleteRecord (size_t recordIndex) |
Delete the record at the given index. More... | |
Protected Member Functions | |
CSerializable virtual methods | |
void | writeToStream (mrpt::utils::CStream &out, int *getVersion) const MRPT_OVERRIDE |
void | readFromStream (mrpt::utils::CStream &in, int version) MRPT_OVERRIDE |
Private Attributes | |
vector_string | field_names |
Field names. More... | |
std::vector< vector_string > | data |
Data for each cell. More... | |
RTTI stuff <br> | |
typedef CSimpleDatabaseTablePtr | SmartPtr |
static mrpt::utils::CLASSINIT | _init_CSimpleDatabaseTable |
static mrpt::utils::TRuntimeClassId | classCSimpleDatabaseTable |
static const mrpt::utils::TRuntimeClassId * | classinfo |
static const mrpt::utils::TRuntimeClassId * | _GetBaseClass () |
virtual const mrpt::utils::TRuntimeClassId * | GetRuntimeClass () const MRPT_OVERRIDE |
virtual mrpt::utils::CObject * | duplicate () const MRPT_OVERRIDE |
static mrpt::utils::CObject * | CreateObject () |
static CSimpleDatabaseTablePtr | Create () |
A typedef for the associated smart pointer
Definition at line 32 of file CSimpleDatabase.h.
mrpt::utils::CSimpleDatabaseTable::CSimpleDatabaseTable | ( | ) |
Default constructor.
|
virtual |
Destructor.
|
staticprotected |
void mrpt::utils::CSimpleDatabaseTable::addField | ( | const char * | fieldName | ) |
Add a new field to the table.
The table is cleared in this operation.
|
inline |
Add a new field to the table.
The table is cleared in this operation.
Definition at line 55 of file CSimpleDatabase.h.
size_t mrpt::utils::CSimpleDatabaseTable::appendRecord | ( | ) |
Append a new and empty record at the end of the table, and return the index of the newly added record.
|
static |
|
static |
void mrpt::utils::CSimpleDatabaseTable::deleteRecord | ( | size_t | recordIndex | ) |
Delete the record at the given index.
|
virtual |
size_t mrpt::utils::CSimpleDatabaseTable::fieldIndex | ( | const char * | fieldName | ) | const |
Get the index for a given field name.
std::exception | On field not found |
|
inline |
Get the index for a given field name.
std::exception | On field not found |
Definition at line 72 of file CSimpleDatabase.h.
size_t mrpt::utils::CSimpleDatabaseTable::fieldsCount | ( | ) | const |
Get the count of fields.
std::string mrpt::utils::CSimpleDatabaseTable::get | ( | size_t | recordIndex, |
size_t | fieldIndex | ||
) | const |
Returns the cell content of the record indicates by its index, and the field indicated by its index.
std::exception | On field or record not found |
std::string mrpt::utils::CSimpleDatabaseTable::get | ( | size_t | recordIndex, |
std::string | field | ||
) | const |
Returns the cell content of the record indicates by its index, and the field indicated in "field".
std::exception | On field or record not found |
std::string mrpt::utils::CSimpleDatabaseTable::getFieldName | ( | size_t | fieldIndex | ) | const |
Get the name of a field by its index.
std::exception | On index out of bounds |
size_t mrpt::utils::CSimpleDatabaseTable::getRecordCount | ( | ) | const |
Get the records count in the table.
|
virtual |
int mrpt::utils::CSimpleDatabaseTable::query | ( | std::string | field, |
std::string | value | ||
) | const |
Executes a query in the table, returning the record index which a given field has a given value, case insensitive, or -1 if not found.
|
protected |
void mrpt::utils::CSimpleDatabaseTable::set | ( | size_t | recordIndex, |
size_t | fieldIndex, | ||
std::string | value | ||
) |
Sets the cell content of the record indicates by its index, and the field indicated by its index.
std::exception | On field or record not found |
void mrpt::utils::CSimpleDatabaseTable::set | ( | size_t | recordIndex, |
std::string | field, | ||
std::string | value | ||
) |
Sets the cell content of the record indicates by its index, and the field indicated in "field".
std::exception | On field or record not found |
|
protected |
|
staticprotected |
Definition at line 32 of file CSimpleDatabase.h.
|
static |
Definition at line 32 of file CSimpleDatabase.h.
|
static |
Definition at line 32 of file CSimpleDatabase.h.
|
private |
Data for each cell.
Definition at line 109 of file CSimpleDatabase.h.
|
private |
Field names.
Definition at line 108 of file CSimpleDatabase.h.
Page generated by Doxygen 1.9.5 for MRPT 1.4.0 SVN: at Sun Nov 27 02:56:59 UTC 2022 |