Open Broadcaster Software
Free, open source software for live streaming and recording
Main Page
Related Pages
Data Structures
Files
File List
Globals
c99defs.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2013 Hugh Bailey <obs.jim@gmail.com>
3
*
4
* Permission to use, copy, modify, and distribute this software for any
5
* purpose with or without fee is hereby granted, provided that the above
6
* copyright notice and this permission notice appear in all copies.
7
*
8
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
9
* WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
10
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
11
* ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
12
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
13
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
14
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
15
*/
16
17
#pragma once
18
19
/*
20
* Contains hacks for getting some C99 stuff working in VC, things like
21
* bool, inline, stdint
22
*/
23
24
#define UNUSED_PARAMETER(param) (void)param
25
26
#ifdef _MSC_VER
27
#define DEPRECATED_START __declspec(deprecated)
28
#define DEPRECATED_END
29
#define FORCE_INLINE __forceinline
30
#else
31
#define DEPRECATED_START
32
#define DEPRECATED_END __attribute__ ((deprecated))
33
#define FORCE_INLINE inline __attribute__((always_inline))
34
#endif
35
36
#ifdef _MSC_VER
37
38
#pragma warning (disable : 4996)
39
40
/* Microsoft is one of the most inept companies on the face of the planet.
41
* The fact that even visual studio 2013 doesn't support the standard 'inline'
42
* keyword is so incredibly stupid that I just can't imagine what sort of
43
* incredibly inept moron could possibly be managing the visual C compiler
44
* project. They should be fired, and legally forbidden to have a job in
45
* ANYTHING even REMOTELY related to programming. FOREVER. This should also
46
* apply to the next 10 generations all of their descendents. */
47
#ifndef __cplusplus
48
#define inline __inline
49
#endif
50
51
#define EXPORT __declspec(dllexport)
52
#else
53
#define EXPORT
54
#endif
55
56
#if _MSC_VER && _MSC_VER < 0x0708
57
58
#include "
vc/vc_stdint.h
"
59
#include "
vc/vc_stdbool.h
"
60
61
#ifndef __off_t_defined
62
#define __off_t_defined
63
#if _FILE_OFFSET_BITS == 64
64
typedef
long
long
off_t;
65
#else
66
typedef
long
off_t;
67
#endif
68
typedef
int64_t
off64_t;
69
#endif
/* __off_t_defined */
70
71
#define SIZE_T_FORMAT "%u"
72
73
#else
74
75
#include <stddef.h>
76
#include <stdint.h>
77
#include <stdbool.h>
78
#include <sys/types.h>
79
80
#define SIZE_T_FORMAT "%zu"
81
82
#endif
/* _MSC_VER */
vc_stdint.h
vc_stdbool.h
int64_t
__int64 int64_t
Definition:
vc_stdint.h:32
libobs
util
c99defs.h
Generated on Sun Nov 27 2016 23:21:00 for Open Broadcaster Software by
1.8.11