kde-workspace/kscreensaver/kdesavers/vm_random.h
2014-12-10 18:09:09 +00:00

31 lines
1 KiB
C

#ifndef __VM_RANDOM_H__
#define __VM_RANDOM_H__
#define VM_RAND_MAX 2147483647
#define int32_t int
struct vm_random_data
{
int32_t *fptr; /* Front pointer. */
int32_t *rptr; /* Rear pointer. */
int32_t *state; /* Array of state values. */
int vm_rand_type; /* Type of random number generator. */
int vm_rand_deg; /* Degree of random number generator. */
int vm_rand_sep; /* Distance between front and rear. */
int32_t *end_ptr; /* Pointer behind state table. */
};
int vm_initstate (unsigned int seed,
void* arg_state,
size_t n,
struct vm_random_data* buf);
int vm_setstate (void* arg_state,
struct vm_random_data* buf);
void vm_default_initstate( int seed,
struct vm_random_data* buf );
int vm_srandom (unsigned int seed,
struct vm_random_data* buf);
int32_t vm_random (struct vm_random_data* buf);
#endif /* !defined( __VM_RANDOM_H__ ) */