libstdc++
std::xor_combine< _UniformRandomNumberGenerator1, __s1, _UniformRandomNumberGenerator2, __s2 > Class Template Reference

List of all members.

Public Types

typedef
__gnu_cxx::__conditional_type
<(sizeof(_Result_type1) > 
_Result_type1
typedef
_UniformRandomNumberGenerator1 
base1_type
typedef
_UniformRandomNumberGenerator2 
base2_type
typedef
__gnu_cxx::__conditional_type
<(sizeof(_Result_type1) >
_Result_type2::__type 
result_type
typedef
__gnu_cxx::__conditional_type
<(sizeof(_Result_type1) > 
sizeof (_Result_type2))

Public Member Functions

const base1_typebase1 () const
const base2_typebase2 () const
result_type max () const
result_type min () const
result_type operator() ()
void seed ()
template<class _Gen >
void seed (_Gen &__g)
 xor_combine (const base1_type &__rng1, const base2_type &__rng2)
 xor_combine (unsigned long __s)
template<class _Gen >
 xor_combine (_Gen &__g)

Static Public Attributes

static const int shift1
static const int shift2

Friends

bool operator!= (const xor_combine &__lhs, const xor_combine &__rhs)
template<class _UniformRandomNumberGenerator11 , int __s11, class _UniformRandomNumberGenerator21 , int __s21, typename _CharT , typename _Traits >
std::basic_ostream< _CharT,
_Traits > & 
operator<< (std::basic_ostream< _CharT, _Traits > &__os, const xor_combine< _UniformRandomNumberGenerator11, __s11, _UniformRandomNumberGenerator21, __s21 > &__x)
bool operator== (const xor_combine &__lhs, const xor_combine &__rhs)
template<class _UniformRandomNumberGenerator11 , int __s11, class _UniformRandomNumberGenerator21 , int __s21, typename _CharT , typename _Traits >
std::basic_istream< _CharT,
_Traits > & 
operator>> (std::basic_istream< _CharT, _Traits > &__is, xor_combine< _UniformRandomNumberGenerator11, __s11, _UniformRandomNumberGenerator21, __s21 > &__x)

Detailed Description

template<class _UniformRandomNumberGenerator1, int __s1, class _UniformRandomNumberGenerator2, int __s2>
class std::xor_combine< _UniformRandomNumberGenerator1, __s1, _UniformRandomNumberGenerator2, __s2 >

A random number generator adaptor class that combines two random number generator engines into a single output sequence.

Definition at line 1284 of file tr1_impl/random.


Member Typedef Documentation

template<class _UniformRandomNumberGenerator1, int __s1, class _UniformRandomNumberGenerator2, int __s2>
typedef _UniformRandomNumberGenerator1 std::xor_combine< _UniformRandomNumberGenerator1, __s1, _UniformRandomNumberGenerator2, __s2 >::base1_type

The type of the first underlying generator engine.

Definition at line 1293 of file tr1_impl/random.

template<class _UniformRandomNumberGenerator1, int __s1, class _UniformRandomNumberGenerator2, int __s2>
typedef _UniformRandomNumberGenerator2 std::xor_combine< _UniformRandomNumberGenerator1, __s1, _UniformRandomNumberGenerator2, __s2 >::base2_type

The type of the second underlying generator engine.

Definition at line 1295 of file tr1_impl/random.

template<class _UniformRandomNumberGenerator1, int __s1, class _UniformRandomNumberGenerator2, int __s2>
typedef __gnu_cxx::__conditional_type<(sizeof(_Result_type1) > std::xor_combine< _UniformRandomNumberGenerator1, __s1, _UniformRandomNumberGenerator2, __s2 >::sizeof(_Result_type2))

The type of the generated random value.

Definition at line 1304 of file tr1_impl/random.


Member Function Documentation

template<class _UniformRandomNumberGenerator1, int __s1, class _UniformRandomNumberGenerator2, int __s2>
result_type std::xor_combine< _UniformRandomNumberGenerator1, __s1, _UniformRandomNumberGenerator2, __s2 >::operator() ( )
inline

Gets the next random number in the sequence.

Definition at line 1365 of file tr1_impl/random.


Friends And Related Function Documentation

template<class _UniformRandomNumberGenerator1, int __s1, class _UniformRandomNumberGenerator2, int __s2>
bool operator!= ( const xor_combine< _UniformRandomNumberGenerator1, __s1, _UniformRandomNumberGenerator2, __s2 > &  __lhs,
const xor_combine< _UniformRandomNumberGenerator1, __s1, _UniformRandomNumberGenerator2, __s2 > &  __rhs 
)
friend

Compares two xor_combine random number generator objects of the same type for inequality.

Parameters:
__lhsA xor_combine random number generator object.
__rhsAnother xor_combine random number generator object.
Returns:
true if the two objects are not equal, false otherwise.

Definition at line 1399 of file tr1_impl/random.

template<class _UniformRandomNumberGenerator1, int __s1, class _UniformRandomNumberGenerator2, int __s2>
template<class _UniformRandomNumberGenerator11 , int __s11, class _UniformRandomNumberGenerator21 , int __s21, typename _CharT , typename _Traits >
std::basic_ostream<_CharT, _Traits>& operator<< ( std::basic_ostream< _CharT, _Traits > &  __os,
const xor_combine< _UniformRandomNumberGenerator11, __s11, _UniformRandomNumberGenerator21, __s21 > &  __x 
)
friend

Inserts the current state of a xor_combine random number generator engine __x into the output stream __os.

Parameters:
__osAn output stream.
__xA xor_combine random number generator engine.
Returns:
The output stream with the state of __x inserted or in an error state.
template<class _UniformRandomNumberGenerator1, int __s1, class _UniformRandomNumberGenerator2, int __s2>
bool operator== ( const xor_combine< _UniformRandomNumberGenerator1, __s1, _UniformRandomNumberGenerator2, __s2 > &  __lhs,
const xor_combine< _UniformRandomNumberGenerator1, __s1, _UniformRandomNumberGenerator2, __s2 > &  __rhs 
)
friend

Compares two xor_combine random number generator objects of the same type for equality.

Parameters:
__lhsA xor_combine random number generator object.
__rhsAnother xor_combine random number generator object.
Returns:
true if the two objects are equal, false otherwise.

Definition at line 1382 of file tr1_impl/random.

template<class _UniformRandomNumberGenerator1, int __s1, class _UniformRandomNumberGenerator2, int __s2>
template<class _UniformRandomNumberGenerator11 , int __s11, class _UniformRandomNumberGenerator21 , int __s21, typename _CharT , typename _Traits >
std::basic_istream<_CharT, _Traits>& operator>> ( std::basic_istream< _CharT, _Traits > &  __is,
xor_combine< _UniformRandomNumberGenerator11, __s11, _UniformRandomNumberGenerator21, __s21 > &  __x 
)
friend

Extracts the current state of a xor_combine random number generator engine __x from the input stream __is.

Parameters:
__isAn input stream.
__xA xor_combine random number generator engine.
Returns:
The input stream with the state of __x extracted or in an error state.

The documentation for this class was generated from the following files: