janwas
5d80d2ee5d
- add AlignedAllocator - an STL allocator that returns cache-line-aligned objects (required to avoid RFOs when threads write to various independent items in a container) - bits: bit_mask can now be used for N=0..numBits (works around full-word-shifts-are-undefined issue) - precompiled.h: remove scoped_ptr, add function-related stuff from TR1 - numa: . add numa_IsMemoryInterleaved . numa_Allocate is now able to allocate large pages as well (reduces TLB misses) - os_cpu: interface change to support 32-bit apps running on WoW64 systems with > 4 GB of memory - topology: use new x86_x64_EnumerateCaches API; fix detection of cache ID - x86_x64: provide the means of enumerating all caches returned by CPUID and detect L1 cache size This was SVN commit r6004.
22 lines
612 B
C
22 lines
612 B
C
/**
|
|
* =========================================================================
|
|
* File : rand.h
|
|
* Project : 0 A.D.
|
|
* Description : pseudorandom number generator
|
|
* =========================================================================
|
|
*/
|
|
|
|
// license: GPL; see lib/license.txt
|
|
|
|
#ifndef INCLUDED_RAND
|
|
#define INCLUDED_RAND
|
|
|
|
/**
|
|
* return random integer in [min, max).
|
|
* avoids several common pitfalls; see discussion at
|
|
* http://www.azillionmonkeys.com/qed/random.html
|
|
**/
|
|
LIB_API size_t rand(size_t min_inclusive, size_t max_exclusive);
|
|
|
|
#endif // #ifndef INCLUDED_RAND
|