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:356
void status(std::ostream &out=std::cout) const override
Print information about the data in this grid structure.
Definition GridB.h:278
EventCellUpdate eventCellUpdate_
Definition GridB.h:287
static void noCellUpdate(Cell *, void *)
Default no-op update routine for a cell.
Definition GridB.h:293
BinaryHeap< CellX *, LessThanExternalCell > externalBHeap
Definition GridB.h:341
void(*)(Cell *, void *) EventCellUpdate
Definition GridB.h:84
static void setHeapElementI(typename internalBHeap::Element *element, void *)
Definition GridB.h:344
Cell * topExternal() const
Definition GridB.h:113
BinaryHeap< CellX *, LessThanInternalCell > internalBHeap
Definition GridB.h:338
typename GridN< CellData * >::CellArray CellArray
Definition GridB.h:58
void setupHeaps()
Definition GridB.h:298
typename GridN< CellData * >::Coord Coord
Definition GridB.h:61
typename GridN< CellData * >::Cell Cell
Definition GridB.h:55
void * eventCellUpdateData_
Definition GridB.h:290
void clearHeaps()
Definition GridB.h:307
Cell * topInternal() const
Return the cell that is at the top of the heap maintaining internal cells.
Definition GridB.h:106
void update(Cell *cell)
Update the position in the heaps for a particular cell.
Definition GridB.h:144
static void setHeapElementE(typename externalBHeap::Element *element, void *)
Definition GridB.h:350
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:167
externalBHeap external_
Definition GridB.h:359
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