RandomIterator
RandomIterator.h
Go to the documentation of this file.
1 /*----------------------------------------------------------------------------
2 *
3 * Copyright (C) 2021 - 2024 Antonio Augusto Alves Junior
4 *
5 * This file is part of RandomIterator.
6 
7 * Redistribution and use in source and binary forms, with or without modification,
8 * are permitted provided that the following conditions are met:
9 *
10 * 1. Redistributions of source code must retain the above copyright notice,
11 * this list of conditions and the following disclaimer.
12 *
13 * 2. Redistributions in binary form must reproduce the above copyright notice,
14 * this list of conditions and the following disclaimer in the documentation and/or
15 * other materials provided with the distribution.
16 *
17 * 3. Neither the name of the copyright holder nor the names of its contributors
18 * may be used to endorse or promote products derived from this software without
19 * 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 DISCLAIMED.
24 * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
25 * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
26 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
27 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
28 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
29 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
30 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
31 * OF THE POSSIBILITY OF SUCH DAMAGE.
32 *
33 * ----------------------------------------------------------------------------*/
34 
35 /*
36  * RandomIterator.h
37  *
38  * Created on: 21/02/2021
39  * Author: Antonio Augusto Alves Junior
40  */
41 
42 #pragma once
43 
44 // This is the only RandomIterator header that is guaranteed to
45 // change with every RandomIterator release.
46 //
47 // RandomIterator_VERSION % 100 is the sub-minor version
48 // RandomIterator_VERSION / 100 % 1000 is the minor version
49 // RandomIterator_VERSION / 100000 is the major version
50 //
51 // Because this header does not #include <RandomIterator/detail/Config.h>,
52 // it is the only RandomIterator header that does not cause
53 // RandomIterator_HOST_SYSTEM and RandomIterator_DEVICE_SYSTEM to be defined.
54 
63 #define RandomIterator_VERSION 100001
64 
65 
70 #define RandomIterator_MAJOR_VERSION (RandomIterator_VERSION / 100000)
71 
76 #define RandomIterator_MINOR_VERSION (RandomIterator_VERSION / 100 % 1000)
77 
82 #define RandomIterator_PATCH_NUMBER 0
83 
84 
85 
86 // Declare these namespaces here for the purpose of Doxygenating them
87 
92 namespace random_iterator{ }
93 
94 
random_iterator is the top-level namespace which contains all RandomIterator functions and types.