vSMC
vSMC: Scalable Monte Carlo
Classes | Namespaces | Macros
u01.hpp File Reference
#include <vsmc/rng/internal/common.hpp>
#include <vsmc/rng/u01.h>

Go to the source code of this file.

Classes

struct  vsmc::Closed
 Parameter type for closed interval. More...
 
struct  vsmc::Open
 Parameter type for open interval. More...
 
struct  vsmc::U01< typename, typename, typename, typename >
 
struct  vsmc::U01< Closed, Closed, uint32_t, double >
 Converting 32-bits unsigned to double precision uniform \([0,1]\). More...
 
struct  vsmc::U01< Closed, Closed, uint32_t, float >
 Converting 32-bits unsigned to single precision uniform \([0,1]\). More...
 
struct  vsmc::U01< Closed, Closed, uint64_t, double >
 Converting 64-bits unsigned to double precision uniform \([0,1]\). More...
 
struct  vsmc::U01< Closed, Closed, uint64_t, float >
 Converting 64-bits unsigned to single precision uniform \([0,1]\). More...
 
struct  vsmc::U01< Closed, Open, uint32_t, double >
 Converting 32-bits unsigned to double precision uniform \([0,1)\). More...
 
struct  vsmc::U01< Closed, Open, uint32_t, float >
 Converting 32-bits unsigned to single precision uniform \([0,1)\). More...
 
struct  vsmc::U01< Closed, Open, uint64_t, double >
 Converting 64-bits unsigned to double precision uniform \([0,1)\). More...
 
struct  vsmc::U01< Closed, Open, uint64_t, float >
 Converting 64-bits unsigned to single precision uniform \([0,1)\). More...
 
struct  vsmc::U01< Open, Closed, uint32_t, double >
 Converting 32-bits unsigned to double precision uniform \((0,1]\). More...
 
struct  vsmc::U01< Open, Closed, uint32_t, float >
 Converting 32-bits unsigned to single precision uniform \((0,1]\). More...
 
struct  vsmc::U01< Open, Closed, uint64_t, double >
 Converting 64-bits unsigned to double precision uniform \((0,1]\). More...
 
struct  vsmc::U01< Open, Closed, uint64_t, float >
 Converting 64-bits unsigned to single precision uniform \((0,1]\). More...
 
struct  vsmc::U01< Open, Open, uint32_t, double >
 Converting 32-bits unsigned to double precision uniform \((0,1)\). More...
 
struct  vsmc::U01< Open, Open, uint32_t, float >
 Converting 32-bits unsigned to single precision uniform \((0,1)\). More...
 
struct  vsmc::U01< Open, Open, uint64_t, double >
 Converting 64-bits unsigned to double precision uniform \((0,1)\). More...
 
struct  vsmc::U01< Open, Open, uint64_t, float >
 Converting 64-bits unsigned to single precision uniform \((0,1)\). More...
 

Namespaces

 vsmc
 

Macros

#define VSMC_DEFINE_RNG_U01(FPType, Left, Right, left, right, UBits, FBits)
 

Macro Definition Documentation

#define VSMC_DEFINE_RNG_U01 (   FPType,
  Left,
  Right,
  left,
  right,
  UBits,
  FBits 
)
Value:
template <> struct U01<Left, Right, uint##UBits##_t, FPType> \
{ \
FPType operator() (uint##UBits##_t u) const \
{return ::u01_##left##_##right##_##UBits##_##FBits(u);} \
\
static FPType uint2fp (uint##UBits##_t u) \
{return ::u01_##left##_##right##_##UBits##_##FBits(u);} \
};

Definition at line 38 of file u01.hpp.