Yeppp!
Main Page
Modules
Examples
All
Data Structures
Functions
Variables
Typedefs
Enumerations
Enumerator
Groups
Pages
yepRandom.h
1
/*
2
* Yeppp! library header
3
*
4
* This file is part of Yeppp! library and licensed under the New BSD license.
5
*
6
* Copyright (C) 2010-2012 Marat Dukhan
7
* Copyright (C) 2012-2013 Georgia Institute of Technology
8
* All rights reserved.
9
*
10
* Redistribution and use in source and binary forms, with or without
11
* modification, are permitted provided that the following conditions are met:
12
* * Redistributions of source code must retain the above copyright
13
* notice, this list of conditions and the following disclaimer.
14
* * Redistributions in binary form must reproduce the above copyright
15
* notice, this list of conditions and the following disclaimer in the
16
* documentation and/or other materials provided with the distribution.
17
* * Neither the name of the Georgia Institute of Technology nor the
18
* names of its contributors may be used to endorse or promote products
19
* derived from this software without specific prior written permission.
20
*
21
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
22
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
23
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
24
* DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
25
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
26
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
27
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
28
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
29
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
30
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31
*/
32
33
#pragma once
34
35
#include <yepPredefines.h>
36
#include <yepTypes.h>
37
45
#pragma pack(push, 1)
46
47
struct
YepRandom_WELL1024a
{
48
Yep32u
state[32];
49
Yep32u
index;
50
};
51
52
#pragma pack(pop)
53
54
#ifdef __cplusplus
55
extern
"C"
{
56
#endif
57
67
YEP_PUBLIC_SYMBOL
enum
YepStatus
YEPABI
yepRandom_WELL1024a_Init
(
struct
YepRandom_WELL1024a
*
YEP_RESTRICT
state);
77
YEP_PUBLIC_SYMBOL
enum
YepStatus
YEPABI
yepRandom_WELL1024a_Init_V32u
(
struct
YepRandom_WELL1024a
*
YEP_RESTRICT
state,
const
Yep32u
seed[32]);
89
YEP_PUBLIC_SYMBOL
enum
YepStatus
YEPABI
yepRandom_WELL1024a_GenerateDiscreteUniform__V8u
(
struct
YepRandom_WELL1024a
*
YEP_RESTRICT
state,
Yep8u
*
YEP_RESTRICT
samples,
YepSize
length);
101
YEP_PUBLIC_SYMBOL
enum
YepStatus
YEPABI
yepRandom_WELL1024a_GenerateDiscreteUniform__V16u
(
struct
YepRandom_WELL1024a
*
YEP_RESTRICT
state,
Yep16u
*
YEP_RESTRICT
samples,
YepSize
length);
113
YEP_PUBLIC_SYMBOL
enum
YepStatus
YEPABI
yepRandom_WELL1024a_GenerateDiscreteUniform__V32u
(
struct
YepRandom_WELL1024a
*
YEP_RESTRICT
state,
Yep32u
*
YEP_RESTRICT
samples,
YepSize
length);
125
YEP_PUBLIC_SYMBOL
enum
YepStatus
YEPABI
yepRandom_WELL1024a_GenerateDiscreteUniform__V64u
(
struct
YepRandom_WELL1024a
*
YEP_RESTRICT
state,
Yep64u
*
YEP_RESTRICT
samples,
YepSize
length);
139
YEP_PUBLIC_SYMBOL
enum
YepStatus
YEPABI
yepRandom_WELL1024a_GenerateDiscreteUniform_S8sS8s_V8s
(
struct
YepRandom_WELL1024a
*
YEP_RESTRICT
state,
Yep8s
supportMin,
Yep8s
supportMax,
Yep8s
*
YEP_RESTRICT
samples,
YepSize
length);
154
YEP_PUBLIC_SYMBOL
enum
YepStatus
YEPABI
yepRandom_WELL1024a_GenerateDiscreteUniform_S16sS16s_V16s
(
struct
YepRandom_WELL1024a
*
YEP_RESTRICT
state,
Yep16s
supportMin,
Yep16s
supportMax,
Yep16s
*
YEP_RESTRICT
samples,
YepSize
length);
169
YEP_PUBLIC_SYMBOL
enum
YepStatus
YEPABI
yepRandom_WELL1024a_GenerateDiscreteUniform_S32sS32s_V32s
(
struct
YepRandom_WELL1024a
*
YEP_RESTRICT
state,
Yep32s
supportMin,
Yep32s
supportMax,
Yep32s
*
YEP_RESTRICT
samples,
YepSize
length);
184
YEP_PUBLIC_SYMBOL
enum
YepStatus
YEPABI
yepRandom_WELL1024a_GenerateDiscreteUniform_S64sS64s_V64s
(
struct
YepRandom_WELL1024a
*
YEP_RESTRICT
state,
Yep64s
supportMin,
Yep64s
supportMax,
Yep64s
*
YEP_RESTRICT
samples,
YepSize
length);
198
YEP_PUBLIC_SYMBOL
enum
YepStatus
YEPABI
yepRandom_WELL1024a_GenerateDiscreteUniform_S8uS8u_V8u
(
struct
YepRandom_WELL1024a
*
YEP_RESTRICT
state,
Yep8u
supportMin,
Yep8u
supportMax,
Yep8u
*
YEP_RESTRICT
samples,
YepSize
length);
213
YEP_PUBLIC_SYMBOL
enum
YepStatus
YEPABI
yepRandom_WELL1024a_GenerateDiscreteUniform_S16uS16u_V16u
(
struct
YepRandom_WELL1024a
*
YEP_RESTRICT
state,
Yep16u
supportMin,
Yep16u
supportMax,
Yep16u
*
YEP_RESTRICT
samples,
YepSize
length);
228
YEP_PUBLIC_SYMBOL
enum
YepStatus
YEPABI
yepRandom_WELL1024a_GenerateDiscreteUniform_S32uS32u_V32u
(
struct
YepRandom_WELL1024a
*
YEP_RESTRICT
state,
Yep32u
supportMin,
Yep32u
supportMax,
Yep32u
*
YEP_RESTRICT
samples,
YepSize
length);
243
YEP_PUBLIC_SYMBOL
enum
YepStatus
YEPABI
yepRandom_WELL1024a_GenerateDiscreteUniform_S64uS64u_V64u
(
struct
YepRandom_WELL1024a
*
YEP_RESTRICT
state,
Yep64u
supportMin,
Yep64u
supportMax,
Yep64u
*
YEP_RESTRICT
samples,
YepSize
length);
258
YEP_PUBLIC_SYMBOL
enum
YepStatus
YEPABI
yepRandom_WELL1024a_GenerateUniform_S32fS32f_V32f_Acc32
(
struct
YepRandom_WELL1024a
*
YEP_RESTRICT
state,
Yep32f
supportMin,
Yep32f
supportMax,
Yep32f
*
YEP_RESTRICT
samples,
YepSize
length);
273
YEP_PUBLIC_SYMBOL
enum
YepStatus
YEPABI
yepRandom_WELL1024a_GenerateFPUniform_S32fS32f_V32f
(
struct
YepRandom_WELL1024a
*
YEP_RESTRICT
state,
Yep32f
supportMin,
Yep32f
supportMax,
Yep32f
*
YEP_RESTRICT
samples,
YepSize
length);
288
YEP_PUBLIC_SYMBOL
enum
YepStatus
YEPABI
yepRandom_WELL1024a_GenerateUniform_S64fS64f_V64f_Acc32
(
struct
YepRandom_WELL1024a
*
YEP_RESTRICT
state,
Yep64f
supportMin,
Yep64f
supportMax,
Yep64f
*
YEP_RESTRICT
samples,
YepSize
length);
303
YEP_PUBLIC_SYMBOL
enum
YepStatus
YEPABI
yepRandom_WELL1024a_GenerateUniform_S64fS64f_V64f_Acc64
(
struct
YepRandom_WELL1024a
*
YEP_RESTRICT
state,
Yep64f
supportMin,
Yep64f
supportMax,
Yep64f
*
YEP_RESTRICT
samples,
YepSize
length);
318
YEP_PUBLIC_SYMBOL
enum
YepStatus
YEPABI
yepRandom_WELL1024a_GenerateFPUniform_S64fS64f_V64f
(
struct
YepRandom_WELL1024a
*
YEP_RESTRICT
state,
Yep64f
supportMin,
Yep64f
supportMax,
Yep64f
*
YEP_RESTRICT
samples,
YepSize
length);
319
320
#ifdef __cplusplus
321
}
322
#endif
C/C++
FORTRAN
Java
C#
Generated by