HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
UT_XorShift Class Reference

#include <UT_XorShift.h>

+ Inheritance diagram for UT_XorShift:

Public Member Functions

SYS_FORCE_INLINE UT_XorShift ()
 
SYS_FORCE_INLINE UT_XorShift (uint64 seed0, uint64 seed1=0)
 
SYS_FORCE_INLINE UT_XorShift (uint32 seed0, uint32 seed1=0, uint32 seed2=0, uint32 seed3=0)
 
SYS_FORCE_INLINE void reseedSelf ()
 
void reseed (uint64 seed0, uint64 seed1=0)
 
SYS_FORCE_INLINE void reseed (uint32 seed0, uint32 seed1=0, uint32 seed2=0, uint32 seed3=0)
 
SYS_FORCE_INLINE uint64 get64 ()
 
SYS_FORCE_INLINE uint32 get ()
 
SYS_FORCE_INLINE float getFloat ()
 
SYS_FORCE_INLINE double getDouble ()
 

Static Public Member Functions

static SYS_FORCE_INLINE fpreal32 intToFloat01 (uint32 i)
 
static SYS_FORCE_INLINE fpreal64 int64ToDouble01 (uint64 i)
 

Detailed Description

Definition at line 25 of file UT_XorShift.h.

Constructor & Destructor Documentation

SYS_FORCE_INLINE UT_XorShift::UT_XorShift ( )
inline

Definition at line 31 of file UT_XorShift.h.

SYS_FORCE_INLINE UT_XorShift::UT_XorShift ( uint64  seed0,
uint64  seed1 = 0 
)
inline

Definition at line 32 of file UT_XorShift.h.

SYS_FORCE_INLINE UT_XorShift::UT_XorShift ( uint32  seed0,
uint32  seed1 = 0,
uint32  seed2 = 0,
uint32  seed3 = 0 
)
inline

Definition at line 36 of file UT_XorShift.h.

Member Function Documentation

SYS_FORCE_INLINE uint32 UT_XorShift::get ( )
inline

Definition at line 85 of file UT_XorShift.h.

SYS_FORCE_INLINE uint64 UT_XorShift::get64 ( )
inline

Definition at line 73 of file UT_XorShift.h.

SYS_FORCE_INLINE double UT_XorShift::getDouble ( )
inline

Definition at line 102 of file UT_XorShift.h.

SYS_FORCE_INLINE float UT_XorShift::getFloat ( )
inline

Definition at line 98 of file UT_XorShift.h.

static SYS_FORCE_INLINE fpreal64 UT_XorShift::int64ToDouble01 ( uint64  i)
inlinestatic

Definition at line 116 of file UT_XorShift.h.

static SYS_FORCE_INLINE fpreal32 UT_XorShift::intToFloat01 ( uint32  i)
inlinestatic

Definition at line 107 of file UT_XorShift.h.

void UT_XorShift::reseed ( uint64  seed0,
uint64  seed1 = 0 
)
inline

Definition at line 49 of file UT_XorShift.h.

SYS_FORCE_INLINE void UT_XorShift::reseed ( uint32  seed0,
uint32  seed1 = 0,
uint32  seed2 = 0,
uint32  seed3 = 0 
)
inline

Definition at line 69 of file UT_XorShift.h.

SYS_FORCE_INLINE void UT_XorShift::reseedSelf ( )
inline

This is useful for after copy constructing from another UT_XorShift. It will give a new random number sequence, consistently dependent on (though uncorrelated with) the original, without affecting the original.

Definition at line 45 of file UT_XorShift.h.


The documentation for this class was generated from the following file: