2023-11-17 22:39:39 +01:00
|
|
|
#ifndef _LA_RANDOM_H
|
|
|
|
#define _LA_RANDOM_H
|
2023-11-17 21:57:28 +01:00
|
|
|
|
|
|
|
namespace LA {
|
|
|
|
|
|
|
|
//RANDOM numbers defaulting to standard library but switchable to user's functions
|
|
|
|
#ifndef RANDDOUBLE
|
|
|
|
#define RANDDOUBLE randdouble
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifndef RANDDOUBLESIGNED
|
|
|
|
#define RANDDOUBLESIGNED randdoublesigned
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifndef RANDINT32
|
|
|
|
#define RANDINT32 randint32
|
|
|
|
#endif
|
|
|
|
|
|
|
|
extern "C" {
|
|
|
|
extern double randdouble();
|
|
|
|
extern double randdoublesigned();
|
|
|
|
extern int randint32();
|
|
|
|
}
|
|
|
|
|
|
|
|
#ifdef __GNUC__
|
|
|
|
#define WEAK_SYMBOL __attribute__((weak))
|
|
|
|
#else
|
|
|
|
#define WEAK_SYMBOL
|
|
|
|
#endif
|
|
|
|
|
|
|
|
}//namespace
|
|
|
|
|
|
|
|
#endif
|