std::discard_block_engine
From cppreference.com
                    
                                        
                    
                    
                                                            
                    |   Defined in header  
<random>
  | 
||
|   template< 
    class Engine,   | 
(since C++11) | |
discard_block_engine is a pseudo-random number generator adapter 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.
Contents | 
[edit] Template parameters
| Engine | - | the type of the wrapped engine | 
| P | - | the size of a block. Must be greater than 0. | 
| R | - |   the number of used numbers per block. Must be greater than 0 and not greater than P
 | 
| Type requirements | ||
 -
Engine must meet the requirements of RandomNumberEngine.
 | 
||
[edit] Member types
| Member type | Definition | 
  result_type
 | 
typename Engine::result_type | 
[edit] Member functions
|   constructs the engine adaptor  (public member function)  | 
|
|    sets the state of the underlying engine  (public member function)  | 
|
|    returns the underlying engine  (public member function)  | 
|
 Generation | 
|
|    advances the state of the underlying engine and returns the generated value  (public member function)  | 
|
|    advances the adaptor's state by a specified amount  (public member function)  | 
|
 Characteristics | 
|
|    [static] 
 | 
   gets the smallest possible value in the output range of the underlying engine.  (public static member function)  | 
|    [static] 
 | 
   gets the largest possible value in the output range of the underlying engine.  (public static member function)  | 
[edit] Non-member functions
|    compares the internal states of the adaptors and underlying engines   (function)  | 
|
|    performs stream input and output on pseudo-random number engine adaptor   (function)  | 
[edit] Member objects
|    
constexpr size_t block_size 
[static] 
 | 
   the size of the block, P  (public static member constant)  | 
|    
constexpr size_t used_size 
[static] 
 | 
   the number of used numbers per block, R  (public static member constant)  |