00001 /* RandomFunction.h 00002 * 00003 * Copyright (C) 2002-2003 -- Sebastian Nowozin 00004 */ 00005 00006 #ifndef RANDOMFUNCTION_H 00007 #define RANDOMFUNCTION_H 00008 00011 typedef struct { 00015 const double (* func)(void *); 00018 void * user; /* usedata to pass to the function */ 00019 } RandomFunction; 00020 00023 typedef struct { 00026 double low; 00029 double high; 00030 } RandomInterval; 00031 00032 00036 class 00037 RandomFunctions 00038 { 00039 public: 00042 static void rand_init (void); 00043 00050 static const double rand_normal (RandomInterval *range); 00051 }; 00052 00053 #endif 00054