|
Marine systems simulation
|
#include <DataStructures.h>
Collaboration diagram for CoRiBoDynamics::DataStructures::Sparse3DArray:Classes | |
| struct | ARRAY |
| struct | INDEX |
| struct | LINKEDLIST |
Public Member Functions | |
| void | InsertToMap (int x, int y, int z, int ID, RadixSparseSet *set) |
| void | CheckMap (int x, int y, int z, RadixSparseSet *set) |
| void | Reset () |
Protected Member Functions | |
| INDEX | convert (int x, int y, int z) |
Protected Attributes | |
| ARRAY | m_rootArray |
| ObjectFactoryStack< ARRAY > | m_ARRAY_factory |
| ObjectFactoryStack< LINKEDLIST > | m_List_factory |
sparse 3D map. stores sets of integers in discrete 3D space.
good cache behaviour for lookup/insertion of spatially close elements little/no dynamic allocation once "warmed up" to correct size
Same tree structure as RadixSparseSet, but different behavior at leaf nodes where they now point to the begining of a linked list of elements