_________ __ __ / _____// |_____________ _/ |______ ____ __ __ ______ \_____ \\ __\_ __ \__ \\ __\__ \ / ___\| | \/ ___/ / \| | | | \// __ \| | / __ \_/ /_/ > | /\___ \ /_______ /|__| |__| (____ /__| (____ /\___ /|____//____ > \/ \/ \//_____/ \/ ______________________ ______________________ T H E W A R B E G I N S Stratagus - A free fantasy real time strategy game engine
#include <random>
#include "stratagus.h"
#include "util.h"
#include "SDL.h"
#include <ctype.h>
#include <errno.h>
#include <stdio.h>
#include <stdlib.h>
#include <stdarg.h>
#include <malloc.h>
#include <windows.h>
#include <intrin.h>
#include "st_backtrace.h"
#include <string.h>
util.cpp - General utilites. | |
unsigned | SyncRandSeed |
uint32_t | FileChecksums = 0 |
sync random seed value. More... | |
static std::random_device | dev |
int | opterr = 1 |
int | optind = 1 |
int | optopt |
char * | optarg |
void | InitSyncRand () |
checksums of all loaded lua files More... | |
int | SyncRand () |
Initialize the syncron rand. More... | |
int | SyncRand (int max) |
Syncron rand. More... | |
static std::mt19937 | rng_engine (dev()) |
static std::uniform_int_distribution< std::mt19937::result_type > | rng_dist (0, RAND_MAX) |
int | MyRand () |
Syncron rand. More... | |
long | isqrt (long num) |
Compute a square root using ints. More... | |
uint32_t | fletcher32 (const std::string &content) |
errno_t | strcpy_s (char *dst, size_t dstsize, const char *src) |
size_t | strnlen (const char *str, size_t strsize) |
determine length of a fixed-length string More... | |
errno_t | strncpy_s (char *dst, size_t dstsize, const char *src, size_t count) |
errno_t | strcat_s (char *dst, size_t dstsize, const char *src) |
char * | strcasestr (const char *a, const char *b) |
case insensitive strstr More... | |
static void | getopt_err (const char *argv0, const char *str, char opt) |
int | getopt (int argc, char *const *argv, const char *opts) |
int | GetClipboard (std::string &str) |
void | SetClipboard (std::string &str) |
int | UTF8GetPrev (const std::string &text, int curpos) |
int | UTF8GetNext (const std::string &text, int curpos) |
void | PrintLocation (const char *file, int line, const char *funcName) |
void | AbortAt (const char *file, int line, const char *funcName, const char *conditionStr) |
void | PrintOnStdOut (const char *format,...) |
bool | supportsSSE2 () |
bool | supportsAVX () |
void * | aligned_malloc (size_t alignment, size_t size) |
void | aligned_free (void *block) |
void AbortAt | ( | const char * | file, |
int | line, | ||
const char * | funcName, | ||
const char * | conditionStr | ||
) |
void* aligned_malloc | ( | size_t | alignment, |
size_t | size | ||
) |
uint32_t fletcher32 | ( | const std::string & | content | ) |
int GetClipboard | ( | std::string & | str | ) |
Paste text from the clipboard
int getopt | ( | int | argc, |
char *const * | argv, | ||
const char * | opts | ||
) |
|
static |
void InitSyncRand | ( | ) |
checksums of all loaded lua files
Inititalize sync rand seed.
long isqrt | ( | long | num | ) |
Compute a square root using ints.
Compute a square root using ints
Uses John Halleck's method, see http://www.cc.utah.edu/~nahaj/factoring/isqrt.legalize.c.html
num | Calculate the square root of this number |
int MyRand | ( | ) |
Syncron rand.
rand only used on this computer.
void PrintLocation | ( | const char * | file, |
int | line, | ||
const char * | funcName | ||
) |
void PrintOnStdOut | ( | const char * | format, |
... | |||
) |
|
static |
|
static |
void SetClipboard | ( | std::string & | str | ) |
char* strcasestr | ( | const char * | a, |
const char * | b | ||
) |
case insensitive strstr
Case insensitive version of strstr
a | String to search in |
b | Substring to search for |
errno_t strcat_s | ( | char * | dst, |
size_t | dstsize, | ||
const char * | src | ||
) |
errno_t strcpy_s | ( | char * | dst, |
size_t | dstsize, | ||
const char * | src | ||
) |
errno_t strncpy_s | ( | char * | dst, |
size_t | dstsize, | ||
const char * | src, | ||
size_t | count | ||
) |
size_t strnlen | ( | const char * | str, |
size_t | strsize | ||
) |
determine length of a fixed-length string
bool supportsAVX | ( | ) |
bool supportsSSE2 | ( | ) |
int SyncRand | ( | ) |
Initialize the syncron rand.
Synchronized random number.
int SyncRand | ( | int | max | ) |
Syncron rand.
Synchronized random number.
max | Max value of random number to return |
int UTF8GetNext | ( | const std::string & | text, |
int | curpos | ||
) |
int UTF8GetPrev | ( | const std::string & | text, |
int | curpos | ||
) |
|
static |
uint32_t FileChecksums = 0 |
sync random seed value.
Sync random seed value.
char* optarg |
int opterr = 1 |
Standard implementation of getopt(3).
One extension: If the first character of the optionsstring is a ':' the error return for 'argument required' is a ':' not a '?'. This makes it easier to differentiate between an 'illegal option' and an 'argument required' error.
int optind = 1 |
int optopt |
unsigned SyncRandSeed |