MagickCore  7.0.10
random_.h
Go to the documentation of this file.
1 /*
2  Copyright 1999-2020 ImageMagick Studio LLC, a non-profit organization
3  dedicated to making software imaging solutions freely available.
4 
5  You may not use this file except in compliance with the License. You may
6  obtain a copy of the License at
7 
8  https://imagemagick.org/script/license.php
9 
10  Unless required by applicable law or agreed to in writing, software
11  distributed under the License is distributed on an "AS IS" BASIS,
12  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  See the License for the specific language governing permissions and
14  limitations under the License.
15 
16  MagickCore random methods.
17 */
18 #ifndef MAGICKCORE_RANDOM__H
19 #define MAGICKCORE_RANDOM__H
20 
21 #include "MagickCore/string_.h"
22 
23 #if defined(__cplusplus) || defined(c_plusplus)
24 extern "C" {
25 #endif
26 
27 /*
28  Typedef declarations.
29 */
30 typedef struct _RandomInfo
31  RandomInfo;
32 
33 /*
34  Method declarations.
35 */
36 extern MagickExport double
39 
41  *AcquireRandomInfo(void),
43 
45  *GetRandomKey(RandomInfo *,const size_t);
46 
47 extern MagickExport unsigned long
49 
50 extern MagickExport void
51  SetRandomKey(RandomInfo *,const size_t,unsigned char *),
52  SetRandomSecretKey(const unsigned long),
54 
55 #if defined(__cplusplus) || defined(c_plusplus)
56 }
57 #endif
58 
59 #endif
#define magick_restrict
Definition: MagickCore.h:41
MagickExport void SetRandomTrueRandom(const MagickBooleanType true_random)
Definition: random.c:982
MagickExport unsigned long GetRandomSecretKey(const RandomInfo *random_info)
Definition: random.c:741
MagickExport void SetRandomKey(RandomInfo *random_info, const size_t length, unsigned char *key)
Definition: random.c:876
MagickExport RandomInfo * DestroyRandomInfo(RandomInfo *random_info)
Definition: random.c:274
MagickBooleanType
Definition: magick-type.h:169
MagickExport RandomInfo * AcquireRandomInfo(void)
Definition: random.c:163
MagickExport double GetRandomValue(RandomInfo *random_info)
Definition: random.c:766
MagickExport double GetPseudoRandomValue(RandomInfo *magick_restrict random_info)
Definition: random.c:610
#define MagickExport
MagickExport StringInfo * GetRandomKey(RandomInfo *random_info, const size_t length)
Definition: random.c:708
MagickExport void SetRandomSecretKey(const unsigned long key)
Definition: random.c:953