libtcod
Loading...
Searching...
No Matches
Random number generators

Classes

class  TCODRandom
 
struct  TCOD_dice_t
 
struct  TCOD_Random_MT_CMWC
 
union  TCOD_Random
 Pseudorandom number generator toolkit, all attributes are private. More...
 

Typedefs

typedef union TCOD_Random TCOD_Random
 Pseudorandom number generator toolkit, all attributes are private.
 
typedef union TCOD_RandomTCOD_random_t
 

Enumerations

enum  TCOD_random_algo_t { TCOD_RNG_MT , TCOD_RNG_CMWC }
 
enum  TCOD_distribution_t {
  TCOD_DISTRIBUTION_LINEAR , TCOD_DISTRIBUTION_GAUSSIAN , TCOD_DISTRIBUTION_GAUSSIAN_RANGE , TCOD_DISTRIBUTION_GAUSSIAN_INVERSE ,
  TCOD_DISTRIBUTION_GAUSSIAN_RANGE_INVERSE
}
 

Functions

TCOD_RandomTCOD_random_get_instance (void)
 
TCOD_RandomTCOD_random_new (TCOD_random_algo_t algo)
 
TCOD_RandomTCOD_random_save (TCOD_Random *mersenne)
 
void TCOD_random_restore (TCOD_Random *mersenne, TCOD_Random *backup)
 
TCOD_RandomTCOD_random_new_from_seed (TCOD_random_algo_t algo, uint32_t seed)
 
void TCOD_random_delete (TCOD_Random *mersenne)
 
void TCOD_random_set_distribution (TCOD_Random *mersenne, TCOD_distribution_t distribution)
 
int TCOD_random_get_int (TCOD_Random *mersenne, int min, int max)
 
float TCOD_random_get_float (TCOD_Random *mersenne, float min, float max)
 
double TCOD_random_get_double (TCOD_Random *mersenne, double min, double max)
 
int TCOD_random_get_int_mean (TCOD_Random *mersenne, int min, int max, int mean)
 
float TCOD_random_get_float_mean (TCOD_Random *mersenne, float min, float max, float mean)
 
double TCOD_random_get_double_mean (TCOD_Random *mersenne, double min, double max, double mean)
 
TCOD_dice_t TCOD_random_dice_new (const char *s)
 
int TCOD_random_dice_roll (TCOD_Random *mersenne, TCOD_dice_t dice)
 
int TCOD_random_dice_roll_s (TCOD_Random *mersenne, const char *s)
 

Detailed Description

Enumeration Type Documentation

◆ TCOD_random_algo_t

Enumerator
TCOD_RNG_MT 

Mersenne Twister implementation.

TCOD_RNG_CMWC 

Complementary-Multiply-With-Carry implementation.