Defines | Typedefs | Functions

# stdafx.h File Reference

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.

## Defines
#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 | SQ2OTTD(name) (name)
#define | OTTD2SQ(name) (name)
#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
## Typedefs
typedef unsigned char | byte
typedef unsigned int | uint
typedef unsigned char | uint8
typedef signed char | int8
typedef unsigned short | uint16
typedef signed short | int16
typedef unsigned int | uint32
typedef signed int | int32
typedef unsigned __int64 | uint64
typedef signed __int64 | int64
## 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.

## Detailed Description

Definition of base types and functions in a cross-platform compatible way.

Definition in file stdafx.h.

## Define Documentation

#define cpp_lengthof | ( |  | base,
|  |  | variable |
| ) |  |  | (cpp_sizeof(base, variable) / cpp_sizeof(base, variable[0]))

Gets the length of an array variable within a class.

Parameters:

  | base | The class the variable is in.
  | variable | The array variable to get the size of.

Returns:
  the length of the array

Definition at line 437 of file stdafx.h.

Referenced by NIHTown::GetPSASize(), and NIHIndustry::GetPSASize().

#define cpp_sizeof | ( |  | base,
|  |  | variable |
| ) |  |  | (sizeof(((base*)8)->variable))

Gets the size of a variable within a class.

Parameters:

  | base | The class the variable is in.
  | variable | The variable to get the size of.

Returns:
  the size of the variable

Definition at line 429 of file stdafx.h.

#define endof | ( |  | x | ) | (&x[lengthof(x)])

Get the end element of an fixed size array.

Parameters:

  | x | The pointer to the first element of the array

Returns:
  The pointer past to the last 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])

Get the last element of an fixed size array.

Parameters:

  | x | The pointer to the first element of the array

Returns:
  The pointer to the last element of the array

Definition at line 416 of file stdafx.h.

#define lengthof | ( |  | x | ) | (sizeof(x) / sizeof(x[0]))

Return the length of an fixed size array.

Unlike sizeof this function returns the number of elements of the given type.

Parameters:

  | x | The pointer to the first element of the array

Returns:
  The number of elements

Definition at line 400 of file stdafx.h.

#define MAX_UVALUE | ( |  | type | ) | ((type)~(type)0)

The largest value that can be entered in a variable.

Parameters:

  | type | the type of the variable

Definition at line 496 of file stdafx.h.

Referenced by CompanyCheckBankrupt(), AirportTileSpec::Get(), Town::GetRandom(), Industry::GetRandom(), HandleBankruptcyTakeover(), Scrollbar::SetCapacity(), Scrollbar::SetCount(), and IConsoleLine::Truncate().

## Function Documentation

static void free | ( | const void * | ptr | ) | `[inline, static]`

Version of the standard free that accepts const pointers.

Parameters:

  | ptr | The data to free.

Definition at line 487 of file stdafx.h.