17 #ifndef PM_COLUMN_CELL_CONSTRUCTORS_H
18 #define PM_COLUMN_CELL_CONSTRUCTORS_H
22 #include <gudhi/Simple_object_pool.h>
25 namespace persistence_matrix {
50 return new Cell(std::forward<U>(u)...);
103 template <
class... U>
105 return cellPool_.construct(std::forward<U>(u)...);
120 cellPool_ = other.cellPool_;
127 std::swap(col1.cellPool_, col2.cellPool_);
131 Simple_object_pool<Cell> cellPool_;
Matrix cell class. Stores by default only the row index it belongs to, but can also store its column ...
Definition: cell_types.h:193
Gudhi namespace.
Definition: SimplicialComplexForAlpha.h:14
Cell factory. Constructs and destroyes cell pointers with new and delete.
Definition: cell_constructors.h:36
friend void swap(New_cell_constructor &col1, New_cell_constructor &col2)
Swap operator.
Definition: cell_constructors.h:63
void destroy(Cell *cell) const
Destroyes the given cell.
Definition: cell_constructors.h:58
Cell * construct(U &&... u) const
Constructs a cell with the given cell arguments.
Definition: cell_constructors.h:49
New_cell_constructor()
Default constructor.
Definition: cell_constructors.h:40
Cell factory. Uses Gudhi::Simple_object_pool, which is based on boost::object_pool,...
Definition: cell_constructors.h:76
Cell * construct(U &&... u)
Constructs a cell with the given cell arguments.
Definition: cell_constructors.h:104
Pool_cell_constructor(Pool_cell_constructor &&col)
Move constructor.
Definition: cell_constructors.h:95
Pool_cell_constructor(const Pool_cell_constructor &col)
Copy constructor.
Definition: cell_constructors.h:89
void destroy(Cell *cell)
Destroyes the given cell.
Definition: cell_constructors.h:113
Pool_cell_constructor & operator=(const Pool_cell_constructor &other)
Assign operator.
Definition: cell_constructors.h:119
friend void swap(Pool_cell_constructor &col1, Pool_cell_constructor &col2)
Swap operator.
Definition: cell_constructors.h:126
Pool_cell_constructor()
Default constructor.
Definition: cell_constructors.h:82