32 #ifndef VSMC_RNG_U01_HPP
33 #define VSMC_RNG_U01_HPP
38 #define VSMC_DEFINE_RNG_U01(FPType, Left, Right, left, right, UBits, FBits) \
39 template <> struct U01<Left, Right, uint##UBits##_t, FPType> \
41 FPType operator() (uint##UBits##_t u) const \
42 {return ::u01_##left##_##right##_##UBits##_##FBits(u);} \
44 static FPType uint2fp (uint##UBits##_t u) \
45 {return ::u01_##left##_##right##_##UBits##_##FBits(u);} \
58 template <
typename,
typename,
typename,
typename>
struct U01;
126 #endif // VSMC_RNG_U01_HPP
#define VSMC_DEFINE_RNG_U01(FPType, Left, Right, left, right, UBits, FBits)
Parameter type for closed interval.
Parameter type for open interval.