Defined in header <random>  

template< class Engine, std::size_t W, class UIntType > class independent_bits_engine;  (since C++11) 
independent_bits_engine
is a random number engine adaptor that produces random numbers with different number of bits than that of the wrapped engine.
Engine    the type of the wrapped engine 
W    the number of bits the generated numbers should have 
UIntType    the type of the generated random numbers. The effect is undefined unless the parameter is cvunqualified and is one of unsigned short , unsigned int , unsigned long , or unsigned long long . 
Type requirements  
Engine must meet the requirements of RandomNumberEngine. 

W must be greater than zero, and no greater than std::numeric_limits<UIntType>::digits . 
Member type  Definition 

result_type  UIntType 
(C++11)  constructs the engine adaptor (public member function) 
(C++11)  sets the state of the underlying engine (public member function) 
(C++11)  returns the underlying engine (public member function) 
Generation 

(C++11)  advances the state of the underlying engine and returns the generated value (public member function) 
(C++11)  advances the adaptor's state by a specified amount (public member function) 
Characteristics 

[static] (C++11)  gets the smallest possible value in the output range (always zero). (public static member function) 
[static] (C++11)  gets the largest possible value in the output range (always 2w 1). (public static member function) 
(C++11)(C++11)(removed in C++20)  compares the internal states of the adaptors and underlying engines (function) 
(C++11)  performs stream input and output on pseudorandom number engine adaptor (function) 
© cppreference.com
Licensed under the Creative Commons AttributionShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/numeric/random/independent_bits_engine