blob: ab477e2ada1767dc38c3811ee4f5651100a47f8e [file] [log] [blame]
Anders Carlsson7bca8ca2018-08-30 09:30:29 +02001/*
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
11#import <UIKit/UIKit.h>
12
13typedef NS_ENUM(NSInteger, RTCDeviceType) {
14 RTCDeviceTypeUnknown,
15 RTCDeviceTypeIPhone1G,
16 RTCDeviceTypeIPhone3G,
17 RTCDeviceTypeIPhone3GS,
18 RTCDeviceTypeIPhone4,
19 RTCDeviceTypeIPhone4Verizon,
20 RTCDeviceTypeIPhone4S,
21 RTCDeviceTypeIPhone5GSM,
22 RTCDeviceTypeIPhone5GSM_CDMA,
23 RTCDeviceTypeIPhone5CGSM,
24 RTCDeviceTypeIPhone5CGSM_CDMA,
25 RTCDeviceTypeIPhone5SGSM,
26 RTCDeviceTypeIPhone5SGSM_CDMA,
27 RTCDeviceTypeIPhone6Plus,
28 RTCDeviceTypeIPhone6,
29 RTCDeviceTypeIPhone6S,
30 RTCDeviceTypeIPhone6SPlus,
31 RTCDeviceTypeIPhone7,
32 RTCDeviceTypeIPhone7Plus,
33 RTCDeviceTypeIPhoneSE,
34 RTCDeviceTypeIPhone8,
35 RTCDeviceTypeIPhone8Plus,
36 RTCDeviceTypeIPhoneX,
Yura Yaroshevichc6de47e2018-10-23 16:55:04 +030037 RTCDeviceTypeIPhoneXS,
38 RTCDeviceTypeIPhoneXSMax,
39 RTCDeviceTypeIPhoneXR,
Yura Yaroshevichde365952019-10-31 12:01:53 +030040 RTCDeviceTypeIPhone11,
41 RTCDeviceTypeIPhone11Pro,
42 RTCDeviceTypeIPhone11ProMax,
Dave Cowartb853d722021-01-19 15:29:11 -060043 RTCDeviceTypeIPhone12Mini,
44 RTCDeviceTypeIPhone12,
45 RTCDeviceTypeIPhone12Pro,
46 RTCDeviceTypeIPhone12ProMax,
Yura Yaroshevichea4cefa2022-03-29 12:01:29 +020047 RTCDeviceTypeIPhoneSE2Gen,
48 RTCDeviceTypeIPhone13,
49 RTCDeviceTypeIPhone13Mini,
50 RTCDeviceTypeIPhone13Pro,
51 RTCDeviceTypeIPhone13ProMax,
52
Anders Carlsson7bca8ca2018-08-30 09:30:29 +020053 RTCDeviceTypeIPodTouch1G,
54 RTCDeviceTypeIPodTouch2G,
55 RTCDeviceTypeIPodTouch3G,
56 RTCDeviceTypeIPodTouch4G,
57 RTCDeviceTypeIPodTouch5G,
58 RTCDeviceTypeIPodTouch6G,
Yura Yaroshevichde365952019-10-31 12:01:53 +030059 RTCDeviceTypeIPodTouch7G,
Anders Carlsson7bca8ca2018-08-30 09:30:29 +020060 RTCDeviceTypeIPad,
61 RTCDeviceTypeIPad2Wifi,
62 RTCDeviceTypeIPad2GSM,
63 RTCDeviceTypeIPad2CDMA,
64 RTCDeviceTypeIPad2Wifi2,
65 RTCDeviceTypeIPadMiniWifi,
66 RTCDeviceTypeIPadMiniGSM,
67 RTCDeviceTypeIPadMiniGSM_CDMA,
68 RTCDeviceTypeIPad3Wifi,
69 RTCDeviceTypeIPad3GSM_CDMA,
70 RTCDeviceTypeIPad3GSM,
71 RTCDeviceTypeIPad4Wifi,
72 RTCDeviceTypeIPad4GSM,
73 RTCDeviceTypeIPad4GSM_CDMA,
74 RTCDeviceTypeIPad5,
75 RTCDeviceTypeIPad6,
76 RTCDeviceTypeIPadAirWifi,
77 RTCDeviceTypeIPadAirCellular,
78 RTCDeviceTypeIPadAirWifiCellular,
79 RTCDeviceTypeIPadAir2,
80 RTCDeviceTypeIPadMini2GWifi,
81 RTCDeviceTypeIPadMini2GCellular,
82 RTCDeviceTypeIPadMini2GWifiCellular,
83 RTCDeviceTypeIPadMini3,
84 RTCDeviceTypeIPadMini4,
85 RTCDeviceTypeIPadPro9Inch,
86 RTCDeviceTypeIPadPro12Inch,
87 RTCDeviceTypeIPadPro12Inch2,
88 RTCDeviceTypeIPadPro10Inch,
Yura Yaroshevichde365952019-10-31 12:01:53 +030089 RTCDeviceTypeIPad7Gen10Inch,
90 RTCDeviceTypeIPadPro3Gen11Inch,
91 RTCDeviceTypeIPadPro3Gen12Inch,
Dave Cowartb853d722021-01-19 15:29:11 -060092 RTCDeviceTypeIPadPro4Gen11Inch,
93 RTCDeviceTypeIPadPro4Gen12Inch,
Yura Yaroshevichde365952019-10-31 12:01:53 +030094 RTCDeviceTypeIPadMini5Gen,
95 RTCDeviceTypeIPadAir3Gen,
Dave Cowartb853d722021-01-19 15:29:11 -060096 RTCDeviceTypeIPad8,
Yura Yaroshevichea4cefa2022-03-29 12:01:29 +020097 RTCDeviceTypeIPad9,
98 RTCDeviceTypeIPadMini6,
Dave Cowartb853d722021-01-19 15:29:11 -060099 RTCDeviceTypeIPadAir4Gen,
Yura Yaroshevichea4cefa2022-03-29 12:01:29 +0200100 RTCDeviceTypeIPadPro5Gen11Inch,
101 RTCDeviceTypeIPadPro5Gen12Inch,
Anders Carlsson7bca8ca2018-08-30 09:30:29 +0200102 RTCDeviceTypeSimulatori386,
103 RTCDeviceTypeSimulatorx86_64,
104};
105
106@interface UIDevice (RTCDevice)
107
108+ (RTCDeviceType)deviceType;
109+ (BOOL)isIOS11OrLater;
110
111@end