std::discard_block_engine - cppreference.com

From cppreference.com

template< class Engine, std::size_t P, std::size_t R > class discard_block_engine;

(since C++11)

discard_block_engine is a pseudo-random number engine adaptor that discards a certain amount of data produced by the base engine. From each block of size P generated by the base engine, the adaptor keeps only R numbers, discarding the rest.

Template parameters

Engine - the type of the wrapped engine.
P - the size of a block. Expected that P > 0.
R - the number of used numbers per block. Expected that 0 < R ≤ P.
Type requirements
-Engine must meet the requirements of RandomNumberEngine.

Member types

Member type Definition
result_type (C++11) Engine::result_type

Member functions

constructs the engine adaptor
(public member function) [edit]

(C++11)

sets the state of the underlying engine
(public member function) [edit]

(C++11)

returns the underlying engine
(public member function) [edit]
Generation
advances the state of the underlying engine and returns the generated value
(public member function) [edit]

(C++11)

advances the adaptor's state by a specified amount
(public member function) [edit]
Characteristics

[static] (C++11)

gets the smallest possible value in the output range of the underlying engine.
(public static member function) [edit]

[static] (C++11)

gets the largest possible value in the output range of the underlying engine.
(public static member function) [edit]

Non-member functions

Member constants

constexpr size_t block_size

[static] (C++11)

the size of the block, P
(public static member constant)

constexpr size_t used_block

[static] (C++11)

the number of used numbers per block, R
(public static member constant)

Example