Fermat
|
Defines some general purpose algorithms. More...
#include <cugar/basic/types.h>
Go to the source code of this file.
Namespaces | |
cugar | |
Define a vector_view POD type and plain_view() for std::vector. | |
Functions | |
template<typename Iterator , typename Predicate > | |
CUGAR_FORCEINLINE CUGAR_HOST_DEVICE Iterator | cugar::find_pivot (Iterator begin, const uint32 n, const Predicate predicate) |
template<typename Iterator , typename Value , typename index_type > | |
CUGAR_FORCEINLINE CUGAR_HOST_DEVICE Iterator | cugar::lower_bound (const Value x, Iterator begin, const index_type n) |
template<typename Iterator , typename Value , typename index_type > | |
CUGAR_FORCEINLINE CUGAR_HOST_DEVICE Iterator | cugar::upper_bound (const Value x, Iterator begin, const index_type n) |
template<typename Iterator , typename Value , typename index_type > | |
CUGAR_FORCEINLINE CUGAR_HOST_DEVICE index_type | cugar::lower_bound_index (const Value x, Iterator begin, const index_type n) |
template<typename Iterator , typename Value , typename index_type > | |
CUGAR_FORCEINLINE CUGAR_HOST_DEVICE index_type | cugar::upper_bound_index (const Value x, Iterator begin, const index_type n) |
template<typename input_iterator1 , typename input_iterator2 , typename output_iterator > | |
CUGAR_FORCEINLINE CUGAR_HOST_DEVICE void | cugar::merge (input_iterator1 first1, input_iterator1 end1, input_iterator2 first2, input_iterator2 end2, output_iterator output) |
template<typename key_iterator1 , typename key_iterator2 , typename value_iterator1 , typename value_iterator2 , typename key_iterator , typename value_iterator > | |
CUGAR_FORCEINLINE CUGAR_HOST_DEVICE void | cugar::merge_by_key (key_iterator1 first1, key_iterator1 end1, key_iterator2 first2, key_iterator2 end2, value_iterator1 values1, value_iterator2 values2, key_iterator output_keys, value_iterator output_values) |
Defines some general purpose algorithms.