blob: 08cb93829aa4a57b1877c08432d6798f63addfcc [file] [log] [blame]
tkchind1fb26d2016-02-03 01:51:18 -08001/*
2 * Copyright 2016 The WebRTC Project Authors. All rights reserved.
3 *
4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree.
9 */
10
Mirko Bonadei92ea95e2017-09-15 06:47:31 +020011#ifndef SDK_OBJC_FRAMEWORK_HEADERS_WEBRTC_RTCMACROS_H_
12#define SDK_OBJC_FRAMEWORK_HEADERS_WEBRTC_RTCMACROS_H_
tkchine54467f2016-03-15 16:54:03 -070013
tkchin8b577ed2016-04-19 10:04:41 -070014#define RTC_EXPORT __attribute__((visibility("default")))
15
tkchind1fb26d2016-02-03 01:51:18 -080016#if defined(__cplusplus)
tkchin8b577ed2016-04-19 10:04:41 -070017#define RTC_EXTERN extern "C" RTC_EXPORT
tkchind1fb26d2016-02-03 01:51:18 -080018#else
tkchin8b577ed2016-04-19 10:04:41 -070019#define RTC_EXTERN extern RTC_EXPORT
tkchind1fb26d2016-02-03 01:51:18 -080020#endif
tkchine54467f2016-03-15 16:54:03 -070021
22#ifdef __OBJC__
23#define RTC_FWD_DECL_OBJC_CLASS(classname) @class classname
24#else
25#define RTC_FWD_DECL_OBJC_CLASS(classname) typedef struct objc_object classname
26#endif
27
Mirko Bonadei92ea95e2017-09-15 06:47:31 +020028#endif // SDK_OBJC_FRAMEWORK_HEADERS_WEBRTC_RTCMACROS_H_