LeviLamina
Loading...
Searching...
No Matches
SimpleRandom.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/math/IRandom.h"
7#include "mc/deps/core/math/IRandomSeeded.h"
8
9// auto generated forward declare list
10// clang-format off
12struct Seed128Bit;
13// clang-format on
14
15class SimpleRandom : public ::IRandom, public ::IRandomSeeded {
16public:
17 // member variables
18 // NOLINTBEGIN
21 // NOLINTEND
22
23public:
24 // prevent constructor by default
25 SimpleRandom& operator=(SimpleRandom const&);
26 SimpleRandom(SimpleRandom const&);
27 SimpleRandom();
28
29public:
30 // virtual functions
31 // NOLINTBEGIN
32 virtual int nextInt() /*override*/;
33
34 virtual int nextInt(int bound) /*override*/;
35
36 virtual int64 nextLong() /*override*/;
37
38 virtual bool nextBoolean() /*override*/;
39
40 virtual float nextFloat() /*override*/;
41
42 virtual double nextDouble() /*override*/;
43
44 virtual double nextGaussianDouble() /*override*/;
45
46 virtual void consumeCount(uint count) /*override*/;
47
48 virtual ::std::unique_ptr<::IRandom> fork() /*override*/;
49
50 virtual ::std::unique_ptr<::IPositionalRandomFactory> forkPositional() /*override*/;
51
52 virtual void setSeed(int64 seed) /*override*/;
53
54 virtual void setSeed(::Seed128Bit seed) /*override*/;
55
56 virtual int64 seed64() const /*override*/;
57
58 virtual ::Seed128Bit seed128() const /*override*/;
59
60 virtual ~SimpleRandom() /*override*/;
61 // NOLINTEND
62
63public:
64 // destructor thunk
65 // NOLINTBEGIN
66 MCNAPI void $dtor();
67 // NOLINTEND
68
69public:
70 // virtual function thunks
71 // NOLINTBEGIN
72 MCNAPI int $nextInt();
73
74 MCNAPI int $nextInt(int bound);
75
76 MCNAPI int64 $nextLong();
77
78 MCNAPI bool $nextBoolean();
79
80 MCNAPI float $nextFloat();
81
82 MCNAPI double $nextDouble();
83
84 MCNAPI double $nextGaussianDouble();
85
86 MCNAPI void $consumeCount(uint count);
87
88 MCNAPI ::std::unique_ptr<::IRandom> $fork();
89
90 MCNAPI ::std::unique_ptr<::IPositionalRandomFactory> $forkPositional();
91
92 MCNAPI void $setSeed(int64 seed);
93
94 MCNAPI void $setSeed(::Seed128Bit seed);
95
96 MCNAPI int64 $seed64() const;
97
98 MCNAPI ::Seed128Bit $seed128() const;
99
100
101 // NOLINTEND
102
103public:
104 // vftables
105 // NOLINTBEGIN
106 MCNAPI static void** $vftableForIRandomSeeded();
107
108 MCNAPI static void** $vftableForIRandom();
109 // NOLINTEND
110};
Definition IPositionalRandomFactory.h:11
Definition IRandomSeeded.h:10
Definition IRandom.h:13
MCAPI ::std::unique_ptr<::IRandom > $fork()
MCAPI bool $nextBoolean()
static MCAPI void ** $vftableForIRandomSeeded()
MCAPI int64 $nextLong()
MCAPI::Seed128Bit $seed128() const
MCAPI int $nextInt()
MCAPI double $nextDouble()
MCAPI void $setSeed(int64 seed)
static MCAPI void ** $vftableForIRandom()
MCAPI int64 $seed64() const
MCAPI void $setSeed(::Seed128Bit seed)
MCAPI void $dtor()
MCAPI void $consumeCount(uint count)
MCAPI ::std::unique_ptr<::IPositionalRandomFactory > $forkPositional()
MCAPI int $nextInt(int bound)
MCAPI float $nextFloat()
MCAPI double $nextGaussianDouble()
Definition Seed128Bit.h:5
Definition Alias.h:14