digiKam
Loading...
Searching...
No Matches
randomnumbergenerator.h
Go to the documentation of this file.
1
/* ============================================================
2
*
3
* This file is a part of digiKam project
4
* https://www.digikam.org
5
*
6
* Date : 2010-11-03
7
* Description : Generating random numbers
8
*
9
* SPDX-FileCopyrightText: 2010-2011 by Marcel Wiesweg <marcel dot wiesweg at gmx dot de>
10
*
11
* SPDX-License-Identifier: GPL-2.0-or-later
12
*
13
* ============================================================ */
14
15
#pragma once
16
17
// Qt includes
18
19
#include <QByteArray>
20
21
// Local includes
22
23
#include "
digikam_export.h
"
24
25
namespace
Digikam
26
{
27
28
class
DIGIKAM_EXPORT
NonDeterministicRandomData
:
public
QByteArray
29
{
30
public
:
31
39
explicit
NonDeterministicRandomData
(
int
size);
40
};
41
42
// --------------------------------------------------------------------
43
53
class
DIGIKAM_EXPORT
RandomNumberGenerator
54
{
55
public
:
56
62
explicit
RandomNumberGenerator
();
63
~RandomNumberGenerator
();
64
71
quint32 seedNonDeterministic();
72
78
quint32 seedByTime();
79
83
static
quint32 nonDeterministicSeed();
84
89
static
quint32 timeSeed();
90
98
void
seed(quint32 seed);
99
106
void
reseed();
107
112
quint32 currentSeed()
const
;
113
119
int
number(
int
min,
int
max);
120
126
double
number(
double
min,
double
max);
127
133
bool
yesOrNo(
double
p);
134
135
private
:
136
137
// Disable
138
RandomNumberGenerator
(
const
RandomNumberGenerator
&) =
delete
;
139
RandomNumberGenerator
& operator=(
const
RandomNumberGenerator
&) =
delete
;
140
141
private
:
142
143
class
Private;
144
Private*
const
d =
nullptr
;
145
};
146
147
}
// namespace Digikam
Digikam::NonDeterministicRandomData
Definition
randomnumbergenerator.h:29
Digikam::RandomNumberGenerator
Definition
randomnumbergenerator.h:54
digikam_export.h
Digikam
Definition
datefolderview.cpp:34
core
libs
dimg
filters
randomnumbergenerator.h
Generated by
1.9.8