OpenTTD
|
Definition of base types and functions in a cross-platform compatible way. More...
#include <stdint.h>
#include <cstdio>
#include <cstddef>
#include <cstring>
#include <cstdlib>
#include <climits>
#include <cassert>
Go to the source code of this file.
Macros | |
#define | __STDC_LIMIT_MACROS |
#define | UINT64_MAX (18446744073709551615ULL) |
#define | INT64_MAX (9223372036854775807LL) |
#define | INT64_MIN (-INT64_MAX - 1) |
#define | UINT32_MAX (4294967295U) |
#define | INT32_MAX (2147483647) |
#define | INT32_MIN (-INT32_MAX - 1) |
#define | UINT16_MAX (65535U) |
#define | INT16_MAX (32767) |
#define | INT16_MIN (-INT16_MAX - 1) |
#define | UINT8_MAX (255) |
#define | INT8_MAX (127) |
#define | INT8_MIN (-INT8_MAX - 1) |
#define | SIZE_MAX ((size_t)-1) |
#define | fopen(file, mode) fopen(OTTD2FS(file), mode) |
#define | PATHSEP "/" |
#define | PATHSEPCHAR '/' |
#define | OTTD_PRINTF64 "%lld" |
#define | OTTD_PRINTFHEX64 "%llx" |
#define | PRINTF_SIZE "%zu" |
#define | PERSONAL_DIR "" |
#define | assert_compile(expr) typedef int __ct_assert__[1 - 2 * !(expr)] |
#define | assert_tcompile(expr) assert(expr) |
#define | M_PI_2 1.57079632679489661923 |
#define | M_PI 3.14159265358979323846 |
#define | lengthof(x) (sizeof(x) / sizeof(x[0])) |
Return the length of an fixed size array. | |
#define | endof(x) (&x[lengthof(x)]) |
Get the end element of an fixed size array. | |
#define | lastof(x) (&x[lengthof(x) - 1]) |
Get the last element of an fixed size array. | |
#define | cpp_offsetof(s, m) (((size_t)&reinterpret_cast<const volatile char&>((((s*)(char*)8)->m))) - 8) |
#define | offsetof(s, m) cpp_offsetof(s, m) |
#define | cpp_sizeof(base, variable) (sizeof(((base*)8)->variable)) |
Gets the size of a variable within a class. | |
#define | cpp_lengthof(base, variable) (cpp_sizeof(base, variable) / cpp_sizeof(base, variable[0])) |
Gets the length of an array variable within a class. | |
#define | NOT_REACHED() error("NOT_REACHED triggered at line %i of %s", __LINE__, __FILE__) |
#define | assert(expression) if (!(expression)) error("Assertion failed at line %i of %s: %s", __LINE__, __FILE__, #expression); |
#define | OTTD_ASSERT |
#define | MAX_PATH 260 |
#define | MAX_UVALUE(type) ((type)~(type)0) |
The largest value that can be entered in a variable. | |
#define | IGNORE_UNINITIALIZED_WARNING_START |
#define | IGNORE_UNINITIALIZED_WARNING_STOP |
Functions | |
const char * | FS2OTTD (const char *name) |
const char * | OTTD2FS (const char *name) |
assert_compile (sizeof(uint64)==8) | |
assert_compile (sizeof(uint32)==4) | |
assert_compile (sizeof(uint16)==2) | |
assert_compile (sizeof(uint8)==1) | |
assert_compile (SIZE_MAX >=UINT32_MAX) | |
void NORETURN CDECL | usererror (const char *str,...) WARN_FORMAT(1 |
void NORETURN CDECL void NORETURN CDECL | error (const char *str,...) WARN_FORMAT(1 |
static void | free (const void *ptr) |
Version of the standard free that accepts const pointers. |
Definition of base types and functions in a cross-platform compatible way.
Definition in file stdafx.h.
#define cpp_lengthof | ( | base, | |
variable | |||
) | (cpp_sizeof(base, variable) / cpp_sizeof(base, variable[0])) |
#define cpp_sizeof | ( | base, | |
variable | |||
) | (sizeof(((base*)8)->variable)) |
#define endof | ( | x | ) | (&x[lengthof(x)]) |
Get the end element of an fixed size array.
x | The pointer to the first element of the array |
Definition at line 408 of file stdafx.h.
Referenced by DoLoad(), DumpDebugFacilityNames(), SmallStackSafeStackAlloc< T, length >::EndOf(), GetDebugString(), AirportSpec::GetIndex(), GetSavegameFormat(), GrowTown(), HandleCrash(), CrashLog::InitialiseCrashLog(), LoadFromHighScore(), SaveToHighScore(), SetDebugString(), TerraformTileHeight(), and SelectCompanyLiveryWindow::UpdateWidgetSize().
#define lastof | ( | x | ) | (&x[lengthof(x) - 1]) |
#define lengthof | ( | x | ) | (sizeof(x) / sizeof(x[0])) |
#define MAX_UVALUE | ( | type | ) | ((type)~(type)0) |
The largest value that can be entered in a variable.
type | the type of the variable |
Definition at line 496 of file stdafx.h.
Referenced by CompanyCheckBankrupt(), AirportTileSpec::Get(), Industry::GetRandom(), Town::GetRandom(), HandleBankruptcyTakeover(), Scrollbar::SetCapacity(), Scrollbar::SetCount(), and IConsoleLine::Truncate().