# base.h File Reference

## Detailed Description

Sequential helper functions. This file is a GNU parallel extension to the Standard C++ Library.

Definition in file base.h.

Go to the source code of this file.

## Namespaces

- namespace __gnu_parallel
- namespace __gnu_sequential
- namespace std
- namespace std::__parallel

## Classes

- class __gnu_parallel::binder1st< _Operation, first_argument_type, second_argument_type, result_type >
    Similar to std::binder1st, but giving the argument types explicitly. More...
- class __gnu_parallel::binder2nd< _Operation, first_argument_type, second_argument_type, result_type >
    Similar to std::binder2nd, but giving the argument types explicitly. More...
- class __gnu_parallel::equal_from_less< Comparator, T1, T2 >
    Constructs predicate for equality from strict weak ordering predicate. More...
- struct __gnu_parallel::equal_to< T1, T2 >
    Similar to std::equal_to, but allows two different types. More...
- struct __gnu_parallel::less< T1, T2 >
    Similar to std::less, but allows two different types. More...
- struct __gnu_parallel::less< _Tp, _Tp >
- struct __gnu_parallel::multiplies< _Tp1, _Tp2 >
    Similar to std::multiplies, but allows two different types. More...
- struct __gnu_parallel::multiplies< _Tp, _Tp >
- struct __gnu_parallel::plus< _Tp1, _Tp2 >
    Similar to std::plus, but allows two different types. More...
- struct __gnu_parallel::plus< _Tp, _Tp >
- class __gnu_parallel::pseudo_sequence< T, _DifferenceTp >
    Sequence that conceptually consists of multiple copies of the same element. The copies are not stored explicitly, of course. More...
- class __gnu_parallel::pseudo_sequence_iterator< T, _DifferenceTp >
    Iterator associated with __gnu_parallel::pseudo_sequence. If features the usual random-access iterator functionality. More...
- class __gnu_parallel::unary_negate< _Predicate, argument_type >
    Similar to std::binder1st, but giving the argument types explicitly. More...
- class __gnu_parallel::void_functor< _ValueTp >
    Functor that does nothing. More...

## Defines

- #define _GLIBCXX_PARALLEL_ASSERT(_Condition)
- #define _GLIBCXX_PARALLEL_BASE_H

## Functions

- void __gnu_parallel::__replacement_assert (const char *__file, int __line, const char *__function, const char *__condition)
- void __gnu_parallel::decode2 (lcas_t x, int &a, int &b)
- lcas_t __gnu_parallel::encode2 (int a, int b)
- int __gnu_parallel::get_max_threads ()
- bool __gnu_parallel::is_parallel (const _Parallelism __p)
- template<typename Size> Size __gnu_parallel::log2 (Size n)
- template<typename T> const T & __gnu_parallel::max (const T &a, const T &b)
- template<typename RandomAccessIterator, typename Comparator> RandomAccessIterator __gnu_parallel::median_of_three_iterators (RandomAccessIterator a, RandomAccessIterator b, RandomAccessIterator c, Comparator &comp)
- template<typename T> const T & __gnu_parallel::min (const T &a, const T &b)