![]() |
Spatial C++ Library
Generic Multi-Dimensional Containers and Spatial Operations
|
| ►Nspatial | The main namespace used in the library |
| ►Ndetails | Defines the namespace that contains all implementation-level utilities needed by the component of the library |
| CBidirectional_iterator | A common template for bidirectional iterators that work on identical modes of linking |
| Cbuiltin_difference | This internal type casting is used to resolve a built-in compare functor (provided by the library) into a built-in difference functor |
| Cbuiltin_difference< accessor_less< Accessor, Key > > | |
| Cbuiltin_difference< bracket_less< Key > > | |
| Cbuiltin_difference< iterator_less< Key > > | |
| Cbuiltin_difference< paren_less< Key > > | |
| CCompress | Uses the empty base class optimization in order to compress a potentially empty base class with a member of a class |
| Ccondition | |
| Ccondition< false, Tp1, Tp2 > | |
| CConst_bidirectional_iterator | A common template for constant bidirectional iterators that work on identical modes of linking |
| CConst_node_iterator | A bidirectional iterator traversing all node in the tree in inorder traversal |
| CDynamic_rank | The dimension value is stored by a member of the object, but can be modified at run time |
| CEqual | |
| Cis_compare_builtin | Statically resolve if key_compare used in the container corresponds to one of the builtin library comparators or not |
| Cis_compare_builtin_helper | Help to resolve whether the type used is a builtin comparator or not |
| Cis_compare_builtin_helper< accessor_less< Accessor, Tp > > | |
| Cis_compare_builtin_helper< bracket_less< Tp > > | |
| Cis_compare_builtin_helper< iterator_less< Tp > > | |
| Cis_compare_builtin_helper< paren_less< Tp > > | |
| Cis_difference_builtin | Help to resolve whether the type used is a builtin difference or not |
| Cis_difference_builtin< accessor_minus< Accessor, Tp, Unit > > | |
| Cis_difference_builtin< bracket_minus< Tp, Unit > > | |
| Cis_difference_builtin< iterator_minus< Tp, Unit > > | |
| Cis_difference_builtin< paren_minus< Tp, Unit > > | |
| ►CKdtree | Detailed implementation of the kd-tree |
| CImplementation | The tree header |
| CMaximum | |
| Csafe_allocator | |
| CKdtree_link | Define the link type for a Kdtree that contains the value member |
| CMapping | Extra information needed by the iterator to perform its work |
| Cmapping_compare | |
| Cmutate | Changes a const type into a mutable type |
| Cmutate< const Tp > | |
| CNeighbor_data | Extra information needed by the iterator to perform its work |
| CNode | The basic node for any tree in the library |
| CNode_iterator | A bidirectional iterator traversing all node in the tree in inorder traversal |
| CPreorder_node_iterator | A forward iterator that iterates through the node of the container in preorder transversal |
| Crebind_builtin_difference | If Diff is a builtin difference type, change the current unit of Diff to the DistanceType specified in the template parameter |
| Crebind_builtin_difference< accessor_minus< Accessor, Tp, Unit >, DistanceType > | Specialization of rebind_builtin_difference for the built-in spatial::accessor_minus functor |
| Crebind_builtin_difference< bracket_minus< Tp, Unit >, DistanceType > | Specialization of rebind_builtin_difference for the built-in spatial::bracket_minus functor |
| Crebind_builtin_difference< iterator_minus< Tp, Unit >, DistanceType > | Specialization of rebind_builtin_difference for the built-in spatial::iterator_minus functor |
| Crebind_builtin_difference< paren_minus< Tp, Unit >, DistanceType > | Specialization of rebind_builtin_difference for the built-in spatial::paren_minus functor |
| Crelaxed_invariant_tag | The category of invariants for a k-d tree node: strict or relaxed |
| ►CRelaxed_kdtree | Detailed implementation of the kd-tree |
| CImplementation | The tree header |
| Csafe_allocator | |
| CRelaxed_kdtree_link | Define a weighted link type for the relaxed k-d tree |
| CStatic_rank | The dimension value is set by a template value, thus consuming no memory |
| Cstrict_invariant_tag | |
| Ctemplate_member_assign | |
| Ctemplate_member_assign_provider | Perform a specialized assign for empty classes |
| Ctemplate_member_assign_provider< true, Tp > | |
| Ctemplate_member_swap | |
| Ctemplate_member_swap_provider | Perform a specialized swap for empty classes |
| Ctemplate_member_swap_provider< true, Tp > | |
| CValueCompare | Value compare functor for container storing pairs of (Key, Mapped) types, such as in spatial::point_multimap, spatial::box_multimap, etc |
| Cwith_builtin_difference | The generic helper class to determine if a container uses a built-in compare type |
| Cwith_builtin_difference < Container, typename enable_if< is_compare_builtin< Container > >::type > | Retrieve the builtin difference functor on the condition that the compare functor used in Container is a builtin comparator |
| Caccessor_less | A comparator that simplifies using the spatial containers with a Key type that has coordinate that are not accessible via the bracket, parenthesis operator or iterator deference |
| Caccessor_minus | This functor uses the minus operator to calculate the difference between 2 elements of Tp along the dimension n accessed through a custom accessor |
| Carithmetic_error | Thrown to report that an arithmetic error has occured during a calculation |
| Cbounds | A model of Region Predicate that defines an orthogonal region and checks if a value of type Key is contained within the boundaries marked by lower and upper |
| Cbox_multimap | A mapped containers to store values in space that can be represented as boxes |
| Cbox_multimap< 0, Key, Mapped, Compare, BalancingPolicy, Alloc > | Specialization for spatial::box_multimap with runtime rank support |
| Cbox_multiset | These containers are not mapped containers and store values in space that can be represented as boxes |
| Cbox_multiset< 0, Key, Compare, BalancingPolicy, Alloc > | Specialization for spatial::box_multiset with runtime rank support |
| Cbracket_less | A comparator that simplifies using the spatial containers with a Key type that has coordiates accessible via the bracket operator |
| Cbracket_minus | This functor uses the minus operator to calculate the difference between 2 elements of Tp along the dimension n accessed through the bracket operator |
| Cclosed_bounds | A model of Region Predicate that checks if a value of type Key is contained within the closed boundaries defined by lower and upper |
| Cclosed_region_iterator | |
| Cclosed_region_iterator< const Ct > | |
| Cclosed_region_iterator_pair | |
| Cclosed_region_iterator_pair< const Ct > | |
| Ccontainer_traits | The traits type for all containers in the spatial namespace |
| Cenable_if | |
| Cenable_if_c | If B is true, spatial::enable_if has a public member typedef type, equal to Tp; otherwise, there is no member typedef |
| Cenable_if_c< true, Tp > | |
| Cenclosed_bounds | This region predicate matches keys that are enclosed or equal to a target box |
| Cenclosed_region_iterator | |
| Cenclosed_region_iterator< const Ct, Layout > | |
| Cenclosed_region_iterator_pair | |
| Cenclosed_region_iterator_pair< const Ct, Layout > | |
| Cequal_iterator | This type provides an iterator to iterate through all elements of a container that match a given key, passed as a parameter to the constructor |
| Cequal_iterator< const Container > | This type provides an iterator to iterate through all elements of a container that match a given key, passed as a parameter to the constructor |
| Cequal_iterator_pair | This structure defines a pair of mutable equal iterator |
| Cequal_iterator_pair< const Container > | This structure defines a pair of constant equal iterator |
| Ceuclidian | Defines a metric working on the Euclidian space where distances are expressed in one of C++'s floating point types |
| Ceuclidian_neighbor_iterator | Facilitate the creation of neighbor iterator that works with an euclidian metric |
| Ceuclidian_neighbor_iterator< const Ct, DistanceType, Diff > | |
| Ceuclidian_neighbor_iterator_pair | Facilitate the creation of an iterator range representing a sequence from closest to furthest from the target key position, in euclidian space |
| Ceuclidian_neighbor_iterator_pair< const Ct, DistanceType, Diff > | |
| Chhll_layout_tag | Represents a coordinate layout for the box |
| Chlhl_layout_tag | Represents a coordinate layout for the box |
| Cidle_box_multimap | |
| Cidle_box_multimap< 0, Key, Mapped, Compare, Alloc > | Specialization for spatial::idle_box_multimap with runtime rank support |
| Cidle_box_multiset | Non-associative containers that and store values in space that can be represented as boxes |
| Cidle_box_multiset< 0, Key, Compare, Alloc > | Specialization for spatial::idle_box_multiset with runtime rank support |
| Cidle_point_multimap | These containers are mapped containers and store values in space that can be represented as points |
| Cidle_point_multimap< 0, Key, Mapped, Compare, Alloc > | When specified with a null dimension, the rank of the point_multimap can be determined at run time and is not fixed at compile time |
| Cidle_point_multiset | |
| Cidle_point_multiset< 0, Key, Compare, Alloc > | Specialization for spatial::idle_point_multiset with runtime rank support |
| Cinvalid_bounds | Thrown to report that an invalid range bound has been given as argument |
| Cinvalid_box | Thrown to report that a box has incorrect coordinates with regards to its layout |
| Cinvalid_dimension | Thrown to report that an invalid dimension was passed as an argument |
| Cinvalid_distance | Thrown to report that an negative distance has been passed as a parameter while distances are expected to be positive |
| Cinvalid_empty_container | Thrown to report that an empty container was passed as an argument, while the function does not accept an empty container |
| Cinvalid_iterator | Thrown to report that an invalid iterator was passed as an argument |
| Cinvalid_node | Thrown to report that an invalid node was passed as an argument |
| Cinvalid_odd_rank | Thrown to report that an odd rank value was passed as a argument |
| Cinvalid_rank | Thrown to report that an invalid rank was passed as an argument |
| Citerator_less | A comparator that simplifies using the spatial containers with a Key type that has coordiates accessible via iterator deference |
| Citerator_minus | This functor uses the minus operator to calculate the difference between 2 elements of Tp along the dimension n accessed through an iterator |
| Clhlh_layout_tag | Represents a coordinate layout for the box |
| Cllhh_layout_tag | Represents a coordinate layout for the box |
| Cloose_balancing | This policy triggers rebalancing for the node when the difference in weight between left or right is more than a half |
| Cmanhattan | Defines a metric for the a space where distances are the sum of all the elements of the vector |
| Cmanhattan_neighbor_iterator | Facilitate the creation of neighbor iterator that works with a manhattan metric |
| Cmanhattan_neighbor_iterator< const Ct, DistanceType, Diff > | |
| Cmanhattan_neighbor_iterator_pair | Facilitate the creation of an iterator range representing a sequence from closest to furthest from the target key position, in manhattan space |
| Cmanhattan_neighbor_iterator_pair< const Ct, DistanceType, Diff > | |
| Cmapping_iterator | This iterator walks through all items in the container in order from the lowest to the highest value along a particular dimension |
| Cmapping_iterator< const Ct > | This iterator walks through all items in the container in order from the lowest to the highest value along a particular dimension |
| Cmapping_iterator_pair | This structure defines a pair of mutable mapping iterator |
| Cmapping_iterator_pair< const Ct > | This structure defines a pair of constant mapping iterator |
| Cmetric_traits | The traits type for all metrics in the spatial namespace |
| Cmode_traits | |
| Cneighbor_iterator | A spatial iterator for a container Ct that goes through the nearest to the furthest element from a target key, with distances applied according to a user-defined geometric space that is a model of Metric |
| Cneighbor_iterator< const Ct, Metric > | A spatial iterator for a container Ct that goes through the nearest to the furthest element from a target key, with distances applied according to a user-defined geometric space of type Metric |
| Cneighbor_iterator_pair | This structure defines a pair of neighbor iterator |
| Cneighbor_iterator_pair< const Ct, Metric > | This structure defines a pair of constant neighbor iterator |
| Copen_bounds | A model of Region Predicate that checks if a value of type Key is contained within the open boundaries defined by lower and upper |
| Copen_region_iterator | |
| Copen_region_iterator< const Ct > | |
| Copen_region_iterator_pair | |
| Copen_region_iterator_pair< const Ct > | |
| Cordered_iterator | All elements returned by this iterator are ordered from the smallest to the largest value of their key's coordinate along a single dimension |
| Cordered_iterator< const Ct > | All elements returned by this iterator are ordered from the smallest to the largest value of their key's coordinate along a single dimension, called the ordered dimension |
| Cordered_iterator_pair | This structure defines a pair of mutable spatial::ordered_iterator |
| Cordered_iterator_pair< const Ct > | This structure defines a pair of constant ordered iterator |
| Coverlap_bounds | This class is a model of Region Predicate that matches any keys that is overlapping with a given test box |
| Coverlap_region_iterator | |
| Coverlap_region_iterator< const Ct, Layout > | |
| Coverlap_region_iterator_pair | |
| Coverlap_region_iterator_pair< const Ct, Layout > | |
| Cparen_less | A comparator that simplifies using the spatial containers with a Key type that has coordiates accessible via the parenthesis operator |
| Cparen_minus | This functor uses the minus operator to calculate the difference between 2 elements of Tp along the dimension n accessed through the parenthesis operator |
| Cperfect_balancing | A policy that balances a node if the difference in weight between left and right is higher than 2 (two) |
| Cpoint_multimap | These containers are mapped containers and store values in space that can be represented as points |
| Cpoint_multimap< 0, Key, Mapped, Compare, BalancingPolicy, Alloc > | When specified with a null dimension, the rank of the point_multimap can be determined at run time and does not need to be fixed at compile time |
| Cpoint_multiset | |
| Cpoint_multiset< 0, Key, Compare, BalancingPolicy, Alloc > | Specialization for spatial::point_multiset with runtime rank support |
| Cquadrance | Defines a metric in the Euclidian space where only the square of the distances are being computed into a scalar value expressed with the DistanceType which is one of C++'s arithmetic types |
| Cquadrance_neighbor_iterator | Facilitate the creation of neighbor iterator that works with a quadrance metric |
| Cquadrance_neighbor_iterator< const Ct, DistanceType, Diff > | |
| Cquadrance_neighbor_iterator_pair | Facilitate the creation of an iterator range representing a sequence from closest to furthest from the target key position, in quadrance space |
| Cquadrance_neighbor_iterator_pair< const Ct, DistanceType, Diff > | |
| Cregion_iterator | This type provides both an iterator and a constant iterator to iterate through all elements of a tree that match an orthogonal region defined by a predicate |
| Cregion_iterator< const Ct, Predicate > | This type provides both an iterator and a constant iterator to iterate through all elements of a tree that match an orthogonal region defined by a predicate |
| Cregion_iterator_pair | This structure defines a pair of mutable region iterator |
| Cregion_iterator_pair< const Ct, Predicate > | This structure defines a pair of constant region iterator |
| Ctight_balancing | A policy that balances a node if the difference in weight between left and right is higher than the current rank of the tree |
