Loading...
include/libkern/OSThermalNotification.h Libc-583 Libc-1158.20.4
--- Libc/Libc-583/include/libkern/OSThermalNotification.h
+++ Libc/Libc-1158.20.4/include/libkern/OSThermalNotification.h
@@ -25,6 +25,7 @@
 #define _OSTHERMALNOTIFICATION_H_
 
 #include <sys/cdefs.h>
+#include <Availability.h>
 
 /*
 **  OSThermalNotification.h
@@ -37,14 +38,57 @@
 
 __BEGIN_DECLS
 
+/* Define pressure levels usable by OSThermalPressureLevel */
+typedef enum {
+	kOSThermalPressureLevelNominal = 0,
+	kOSThermalPressureLevelModerate,
+	kOSThermalPressureLevelHeavy,
+	kOSThermalPressureLevelTrapping,
+	kOSThermalPressureLevelSleeping
+} OSThermalPressureLevel;
+
+/*
+ ** External notify(3) string for thermal pressure level notification
+ */
+__OSX_AVAILABLE_STARTING(__MAC_10_10, __IPHONE_7_0)
+extern const char * const kOSThermalNotificationPressureLevelName;
+
+
+#if defined(__IPHONE_OS_VERSION_MIN_REQUIRED) && \
+	__IPHONE_OS_VERSION_MIN_REQUIRED >= __IPHONE_2_0
+
 typedef enum {
 	OSThermalNotificationLevelAny      = -1,
 	OSThermalNotificationLevelNormal   =  0,
-	OSThermalNotificationLevel70PercentBacklight  =  3,
-	OSThermalNotificationLevel50PercentBacklight  =  5,
-	OSThermalNotificationLevelAppTerminate  =  12,
-	OSThermalNotificationLevelDeviceRestart = 16
 } OSThermalNotificationLevel;
+
+extern OSThermalNotificationLevel _OSThermalNotificationLevelForBehavior(int) __OSX_AVAILABLE_STARTING(__MAC_NA, __IPHONE_4_2);
+extern void _OSThermalNotificationSetLevelForBehavior(int, int) __OSX_AVAILABLE_STARTING(__MAC_NA, __IPHONE_4_2);
+
+enum {
+	kOSThermalMitigationNone,
+	kOSThermalMitigation70PercentTorch,
+	kOSThermalMitigation70PercentBacklight,
+	kOSThermalMitigation50PercentTorch,
+	kOSThermalMitigation50PercentBacklight,
+	kOSThermalMitigationDisableTorch,
+	kOSThermalMitigation25PercentBacklight,
+	kOSThermalMitigationDisableMapsHalo,
+	kOSThermalMitigationAppTerminate,
+	kOSThermalMitigationDeviceRestart,
+	kOSThermalMitigationThermalTableReady,
+	kOSThermalMitigationCount
+};
+
+#define OSThermalNotificationLevel70PercentTorch _OSThermalNotificationLevelForBehavior(kOSThermalMitigation70PercentTorch)
+#define OSThermalNotificationLevel70PercentBacklight _OSThermalNotificationLevelForBehavior(kOSThermalMitigation70PercentBacklight)
+#define OSThermalNotificationLevel50PercentTorch _OSThermalNotificationLevelForBehavior(kOSThermalMitigation50PercentTorch)
+#define OSThermalNotificationLevel50PercentBacklight _OSThermalNotificationLevelForBehavior(kOSThermalMitigation50PercentBacklight)
+#define OSThermalNotificationLevelDisableTorch _OSThermalNotificationLevelForBehavior(kOSThermalMitigationDisableTorch)
+#define OSThermalNotificationLevel25PercentBacklight _OSThermalNotificationLevelForBehavior(kOSThermalMitigation25PercentBacklight)
+#define OSThermalNotificationLevelDisableMapsHalo _OSThermalNotificationLevelForBehavior(kOSThermalMitigationDisableMapsHalo)
+#define OSThermalNotificationLevelAppTerminate _OSThermalNotificationLevelForBehavior(kOSThermalMitigationAppTerminate)
+#define OSThermalNotificationLevelDeviceRestart _OSThermalNotificationLevelForBehavior(kOSThermalMitigationDeviceRestart)
 
 /* Backwards compatibility */
 #define OSThermalNotificationLevelWarning OSThermalNotificationLevel70PercentBacklight
@@ -54,14 +98,28 @@
 /*
 ** Simple polling interface to detect current thermal level
 */
-
-OSThermalNotificationLevel OSThermalNotificationCurrentLevel(void);
+__OSX_AVAILABLE_STARTING(__MAC_NA, __IPHONE_2_0)
+extern OSThermalNotificationLevel OSThermalNotificationCurrentLevel(void);
 
 /*
 ** External notify(3) string for manual notification setup
 */
+__OSX_AVAILABLE_STARTING(__MAC_NA, __IPHONE_2_0)
+extern const char * const kOSThermalNotificationName;
 
-extern const char *kOSThermalNotificationName;
+/*
+** External notify(3) string for alerting user of a thermal condition
+*/
+__OSX_AVAILABLE_STARTING(__MAC_NA, __IPHONE_6_0)
+extern const char * const kOSThermalNotificationAlert;
+
+/*
+** External notify(3) string for notifying system the options taken to resolve thermal condition
+*/
+__OSX_AVAILABLE_STARTING(__MAC_NA, __IPHONE_6_0)
+extern const char * const kOSThermalNotificationDecision;
+
+#endif // __IPHONE_OS_VERSION_MIN_REQUIRED
 
 __END_DECLS