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 |