Loading...
Searching...
No Matches
Gudhi::persistence_matrix::Row_access< Master_matrix > Class Template Reference
Persistence Matrix

Class managing the row access for the columns. More...

`#include <gudhi/Persistence_matrix/columns/row_access.h>`

## Public Types

using | Index = typename Master_matrix::Index
using | ID_index = typename Master_matrix::ID_index
using | Matrix_entry = typename Master_matrix::Matrix_entry
using | Row_container = typename Master_matrix::Row_container

## Public Member Functions

| Row_access ()
| Default constructor. Sets the column index to null index and the row container to nullptr. Should only be used by dummy columns.
| Row_access (Index columnIndex, Row_container *rows)
| Constructor setting the column index and the row container by the given values.
| Row_access (Row_access &&other) noexcept
| Move constructor.
void | insert_entry (ID_index rowIndex, Matrix_entry *entry)
| Inserts the given entry at the given row index.
void | unlink (Matrix_entry *entry)
| Removes the given entry from its row.
void | update_entry (const Matrix_entry &entry)
| If PersistenceMatrixOptions::has_intrusive_rows is false, updates the copy of the entry in its row. Otherwise does nothing.
Index | get_column_index () const
| Returns the MatIdx column index.

## Friends

void | swap (Row_access &r1, Row_access &r2)
| Swap operator.

## Detailed Description

template<class Master_matrix>
class Gudhi::persistence_matrix::Row_access< Master_matrix >

Class managing the row access for the columns.

Template Parameters

  Master_matrix | An instantiation of Matrix from which all types and options are deduced.

## Member Typedef Documentation

## ID_index

template<class Master_matrix>

using Gudhi::persistence_matrix::Row_access< Master_matrix >::ID_index = typename Master_matrix::ID_index

IDIdx index type.

## Index

template<class Master_matrix>

using Gudhi::persistence_matrix::Row_access< Master_matrix >::Index = typename Master_matrix::Index

MatIdx index type.

## Matrix_entry

template<class Master_matrix>

using Gudhi::persistence_matrix::Row_access< Master_matrix >::Matrix_entry = typename Master_matrix::Matrix_entry

Entry.

## Row_container

template<class Master_matrix>

using Gudhi::persistence_matrix::Row_access< Master_matrix >::Row_container = typename Master_matrix::Row_container

Type of the row container.

## Constructor & Destructor Documentation

## Row_access() [1/2]

template<class Master_matrix>

Gudhi::persistence_matrix::Row_access< Master_matrix >::Row_access | ( | Index | columnIndex,
|  | Row_container * | rows )

inline

Constructor setting the column index and the row container by the given values.

Parameters

  columnIndex | Column index to store.
  rows | Pointer to the row container.

## Row_access() [2/2]

template<class Master_matrix>

Gudhi::persistence_matrix::Row_access< Master_matrix >::Row_access | ( | Row_access< Master_matrix > && | other | ) |

inline noexcept

Move constructor.

Parameters

  other | Column to move.

## Member Function Documentation

## get_column_index()

template<class Master_matrix>

Row_access< Master_matrix >::Index Gudhi::persistence_matrix::Row_access< Master_matrix >::get_column_index | ( |  | ) | const

inline

Returns the MatIdx column index.

Returns
  The MatIdx column index.

## insert_entry()

template<class Master_matrix>

void Gudhi::persistence_matrix::Row_access< Master_matrix >::insert_entry | ( | ID_index | rowIndex,
|  | Matrix_entry * | entry )

inline

Inserts the given entry at the given row index.

Parameters

  rowIndex | Row index of the entry.
  entry | Pointer to the entry to insert.

## unlink()

template<class Master_matrix>

void Gudhi::persistence_matrix::Row_access< Master_matrix >::unlink | ( | Matrix_entry * | entry | ) |

inline

Removes the given entry from its row.

Parameters

  entry | Pointer to the entry to remove.

## update_entry()

template<class Master_matrix>

void Gudhi::persistence_matrix::Row_access< Master_matrix >::update_entry | ( | const Matrix_entry & | entry | ) |

inline

If PersistenceMatrixOptions::has_intrusive_rows is false, updates the copy of the entry in its row. Otherwise does nothing.

If the rows are intrusive, only a pointer of the entry is stored and therefore any update on the entry (value or column index) is automatically forwarded. But for non intrusive rows, any update has to be pushed explicitly.

Parameters

  entry | Entry to update.

The documentation for this class was generated from the following file:

- include/gudhi/Persistence_matrix/columns/row_access.h