Loading...
Searching...
No Matches
GridB.h
50 template <typename _T, class LessThanExternal = std::less<_T>, class LessThanInternal = LessThanExternal>
This class provides an implementation of an updatable min-heap. Using it is a bit cumbersome,...
Definition BinaryHeap.h:53
This class defines a grid that keeps track of its boundary: it distinguishes between interior and ext...
Definition GridB.h:52
internalBHeap internal_
Definition GridB.h:357
void status(std::ostream &out=std::cout) const override
Print information about the data in this grid structure.
Definition GridB.h:279
EventCellUpdate eventCellUpdate_
Definition GridB.h:288
static void noCellUpdate(Cell *, void *)
Default no-op update routine for a cell.
Definition GridB.h:294
BinaryHeap< CellX *, LessThanExternalCell > externalBHeap
Definition GridB.h:342
void(*)(Cell *, void *) EventCellUpdate
Definition GridB.h:85
static void setHeapElementI(typename internalBHeap::Element *element, void *)
Definition GridB.h:345
Cell * topExternal() const
Definition GridB.h:114
BinaryHeap< CellX *, LessThanInternalCell > internalBHeap
Definition GridB.h:339
typename GridN< CellData * >::CellArray CellArray
Definition GridB.h:59
void setupHeaps()
Definition GridB.h:299
typename GridN< CellData * >::Coord Coord
Definition GridB.h:62
typename GridN< CellData * >::Cell Cell
Definition GridB.h:55
void * eventCellUpdateData_
Definition GridB.h:291
void clearHeaps()
Definition GridB.h:308
Cell * topInternal() const
Return the cell that is at the top of the heap maintaining internal cells.
Definition GridB.h:107
void update(Cell *cell)
Update the position in the heaps for a particular cell.
Definition GridB.h:145
static void setHeapElementE(typename externalBHeap::Element *element, void *)
Definition GridB.h:351
virtual Cell * createCell(const Coord &coord, CellArray *nbh=nullptr)
Create a cell but do not add it to the grid; update neighboring cells however.
Definition GridB.h:168
externalBHeap external_
Definition GridB.h:360
unsigned int interiorCellNeighborsLimit_
Definition GridN.h:242
GridN(unsigned int dimension)
The constructor takes the dimension of the grid as argument.
Definition GridN.h:78
void neighbors(const Cell *cell, CellArray &list) const
Get the list of neighbors for a given cell.
Definition GridN.h:129
unsigned int numberOfBoundaryDimensions(const Coord &coord) const
Compute how many sides of a coordinate touch the boundaries of the grid.
Definition GridN.h:218
void getCells(CellArray &cells) const
Get the set of instantiated cells in the grid.
Definition GridN.h:210
virtual void status(std::ostream &out=std::cout) const
Print information about the data in this grid structure.
Definition Grid.h:300
Main namespace. Contains everything in this library.
Definition MultiLevelPlanarManipulatorDemo.cpp:66