Changeset 11347 in vbox for trunk/include
- Timestamp:
- Aug 11, 2008 9:12:55 PM (17 years ago)
- svn:sync-xref-src-repo-rev:
- 34500
- Location:
- trunk/include/iprt
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/iprt/rand.h
r11018 r11347 113 113 RTDECL(uint64_t) RTRandU64(void) RT_NO_THROW; 114 114 115 116 /** 117 * Create an instance of the default random number generator. 118 * 119 * @returns IPRT status code. 120 * @param hRand Handle to the random number generator. 121 */ 122 RTDECL(int) RTRandAdvCreate(PRTRAND phRand) RT_NO_THROW; 123 124 /** 125 * Create an instance of the default pseudo random number generator. 126 * 127 * @returns IPRT status code. 128 * @param phRand Where to store the handle to the generator. 129 */ 130 RTDECL(int) RTRandAdvCreatePseudo(PRTRAND phRand) RT_NO_THROW; 131 132 133 /** 134 * Create an instance of the Park-Miller pseudo random number generator. 135 * 136 * @returns IPRT status code. 137 * @param phRand Where to store the handle to the generator. 138 */ 139 RTDECL(int) RTRandAdvCreateParkMiller(PRTRAND phRand) RT_NO_THROW; 140 141 /** 142 * Destroys a random number generator. 143 * 144 * @returns IPRT status code. 145 * @param hRand Handle to the random number generator. 146 */ 147 RTDECL(int) RTRandAdvDestroy(RTRAND hRand) RT_NO_THROW; 148 149 /** 150 * Generic method for seeding of a random number generator. 151 * 152 * The different generators may have specialized methods for 153 * seeding, use one of those if you desire better control 154 * over ther result. 155 * 156 * @returns IPRT status code. 157 * @param hRand Handle to the random number generator. 158 * @param u64Seed Seed. 159 */ 160 RTDECL(int) RTRandAdvSeed(RTRAND hRand, uint64_t u64Seed) RT_NO_THROW; 161 162 /** 163 * Fills a buffer with random bytes. 164 * 165 * @param hRand Handle to the random number generator. 166 * @param pv Where to store the random bytes. 167 * @param cb Number of bytes to generate. 168 */ 169 RTDECL(void) RTRandAdvBytes(RTRAND hRand, void *pv, size_t cb) RT_NO_THROW; 170 171 /** 172 * Generate a 32-bit signed random number in the set [i32First..i32Last]. 173 * 174 * @returns The random number. 175 * @param hRand Handle to the random number generator. 176 * @param i32First First number in the set. 177 * @param i32Last Last number in the set. 178 */ 179 RTDECL(int32_t) RTRandAdvS32Ex(RTRAND hRand, int32_t i32First, int32_t i32Last) RT_NO_THROW; 180 181 /** 182 * Generate a 32-bit signed random number. 183 * 184 * @returns The random number. 185 * @param hRand Handle to the random number generator. 186 */ 187 RTDECL(int32_t) RTRandAdvS32(RTRAND hRand) RT_NO_THROW; 188 189 /** 190 * Generate a 32-bit unsigned random number in the set [u32First..u32Last]. 191 * 192 * @returns The random number. 193 * @param hRand Handle to the random number generator. 194 * @param u32First First number in the set. 195 * @param u32Last Last number in the set. 196 */ 197 RTDECL(uint32_t) RTRandAdvU32Ex(RTRAND hRand, uint32_t u32First, uint32_t u32Last) RT_NO_THROW; 198 199 /** 200 * Generate a 32-bit unsigned random number. 201 * 202 * @returns The random number. 203 * @param hRand Handle to the random number generator. 204 */ 205 RTDECL(uint32_t) RTRandAdvU32(RTRAND hRand) RT_NO_THROW; 206 207 /** 208 * Generate a 64-bit signed random number in the set [i64First..i64Last]. 209 * 210 * @returns The random number. 211 * @param hRand Handle to the random number generator. 212 * @param i64First First number in the set. 213 * @param i64Last Last number in the set. 214 */ 215 RTDECL(int64_t) RTRandAdvS64Ex(RTRAND hRand, int64_t i64First, int64_t i64Last) RT_NO_THROW; 216 217 /** 218 * Generate a 64-bit signed random number. 219 * 220 * @returns The random number. 221 */ 222 RTDECL(int64_t) RTRandAdvS64(RTRAND hRand) RT_NO_THROW; 223 224 /** 225 * Generate a 64-bit unsigned random number in the set [u64First..u64Last]. 226 * 227 * @returns The random number. 228 * @param hRand Handle to the random number generator. 229 * @param u64First First number in the set. 230 * @param u64Last Last number in the set. 231 */ 232 RTDECL(uint64_t) RTRandAdvU64Ex(RTRAND hRand, uint64_t u64First, uint64_t u64Last) RT_NO_THROW; 233 234 /** 235 * Generate a 64-bit unsigned random number. 236 * 237 * @returns The random number. 238 * @param hRand Handle to the random number generator. 239 */ 240 RTDECL(uint64_t) RTRandAdvU64(RTRAND hRand) RT_NO_THROW; 241 242 115 243 /** @} */ 116 244 -
trunk/include/iprt/types.h
r11308 r11347 1147 1147 #define NIL_RTTIMERLR ((RTTIMERLR)0) 1148 1148 1149 /** Handle to a random number generator. */ 1150 typedef struct RTRANDINT *RTRAND; 1151 /** Pointer to a random number generator handle. */ 1152 typedef RTRAND *PRTRAND; 1153 /** NIL random number genrator handle value. */ 1154 #define NIL_RTRAND ((RTRAND)0) 1155 1149 1156 1150 1157 /**
Note:
See TracChangeset
for help on using the changeset viewer.