Vanilla.PDF  2.0.0
Cross-platform toolkit for creating and modifying PDF documents
c_types.h
Go to the documentation of this file.
1#ifndef _C_TYPES_H
2#define _C_TYPES_H
3
9#include "c_platform.h"
10
11// C++ specific headers
12#ifdef __cplusplus
13 #include <cstdint>
14 #include <cstddef>
15#endif /* __cplusplus */
16
17// C specific headers
18#include <stdint.h>
19#include <stddef.h>
20
25typedef uint32_t error_type;
26
31typedef int8_t boolean_type;
32
41typedef double real_type;
42
46typedef uint16_t ushort_type;
47
51typedef int32_t integer_type;
52
56typedef int64_t offset_type;
57
61#if defined(ENVIRONMENT_32_BIT)
62 typedef uint32_t size_type;
63#elif defined(ENVIRONMENT_64_BIT)
64 typedef uint64_t size_type;
65#elif !defined(ENVIRONMENT_32_BIT) && !defined(ENVIRONMENT_64_BIT)
66 #error Unknown environment size type
67#endif /* ENVIRONMENT_32_BIT */
68
72typedef int64_t bigint_type;
73
77typedef uint64_t biguint_type;
78
82typedef const char* string_type;
83
87typedef char* byte_array_type;
88
89 /* group_types */
90
91#endif /* _C_TYPES_H */
This file contains macro declarations about current platform and compiler.
uint32_t error_type
This is return value type of all API functions.
Definition c_types.h:25
int64_t offset_type
Offset type compatible with standard IO.
Definition c_types.h:56
int64_t bigint_type
64-bit signed integer type
Definition c_types.h:72
uint64_t biguint_type
64-bit unsigned integer type
Definition c_types.h:77
uint16_t ushort_type
16-bit unsigned integer
Definition c_types.h:46
int32_t integer_type
32-bit signed integer
Definition c_types.h:51
int8_t boolean_type
Boolean type supported in C.
Definition c_types.h:31
uint32_t size_type
Size type defined in standard library.
Definition c_types.h:62
const char * string_type
C-Style string.
Definition c_types.h:82
double real_type
Floating point values.
Definition c_types.h:41
char * byte_array_type
Writeable byte array.
Definition c_types.h:87