Ссылка IOPMLib.h
IOPMLib обеспечивает доступ к общим средствам управления питанием, как инициирование системного сна, получение текущих неактивных значений таймера, регистрация для уведомлений сна/следа и предотвращение системного сна.
Включенные заголовки
<CoreFoundation/CFArray.h>
<IOKit/IOKitLib.h>
<IOKit/pwr_mgt/IOPMLibDefs.h>
<IOKit/pwr_mgt/IOPMKeys.h>
<Availability.h>
-
Отмените ранее запланированное событие питания.
Объявление
Objective C
IOReturn IOPMCancelScheduledPowerEvent ( CFDateRef time_to_wake, CFStringRef my_id, CFStringRef type );
Параметры
time_to_wake
Аннулируйте запись с этой датой и временем.
my_id
Аннулируйте запись с этим именем.
type
Введите для отмены
Возвращаемое значение
kIOReturnSuccess на успехе, иначе при отказе
Обсуждение
Параметры зеркально отражают тех к IOPMSchedulePowerEvent. Все параметры должны соответствовать исходные параметры от того, когда было запланировано питание на. Должен быть вызван как корень.
Оператор импорта
Objective C
@import IOKit;
Доступность
Доступный в OS X v10.3 и позже.
-
Перечислите все запланированные события питания системы
Объявление
Objective C
CFArrayRef IOPMCopyScheduledPowerEvents ( void );
Возвращаемое значение
CFArray CFDictionaries событий питания. CFArray должен быть выпущен вызывающей стороной. NULL, при отсутствии запланированных событий.
Обсуждение
Возвращает CFArray CFDictionaries событий питания. Каждый CFDictionary содержит ключи для CFSTR (kIOPMPowerEventTimeKey), CFSTR (kIOPMPowerEventAppNameKey), и CFSTR (kIOPMPowerEventTypeKey).
Оператор импорта
Objective C
@import IOKit;
Доступность
Доступный в OS X v10.3 и позже.
-
Запланируйте машину, чтобы проснуться от сна, включиться, заснуть, или завершение работы.
Объявление
Objective C
IOReturn IOPMSchedulePowerEvent ( CFDateRef time_to_wake, CFStringRef my_id, CFStringRef type );
Параметры
time_to_wake
Дата и время, которую система приведет в действие вкл\выкл.
my_id
CFStringRef, идентифицирующий приложение вызова CFBundleIdentifier. Может быть NULL.
type
Тип включает Вас желание, или след от сна или включается. Выберите из: CFSTR (kIOPMAutoWake) == машина следа, CFSTR (kIOPMAutoPowerOn) == включают машину, CFSTR (kIOPMAutoWakeOrPowerOn) == просыпаются или включаются, CFSTR (kIOPMAutoSleep) ==, машина сна, CFSTR (kIOPMAutoShutdown) == выключают машину, CFSTR (kIOPMAutoRestart) == перезапускают машину.
Возвращаемое значение
kIOReturnSuccess на успехе, иначе при отказе
Обсуждение
Это событие будет добавлено к очереди системы событий питания и постоянно сохранено на диске. Сон и события завершения работы представляют графическое предупреждение и позволяют пользователю консоли отменять событие. Должен быть вызван как корень.
Оператор импорта
Objective C
@import IOKit;
Доступность
Доступный в OS X v10.3 и позже.
-
Вызывающая сторона подтверждает уведомление об изменении состояния электропитания на устройстве, для которого это зарегистрировалось для уведомлений через IORegisterForSystemPower или IORegisterApp.
Объявление
Objective C
IOReturn IOAllowPowerChange ( io_connect_t kernelPort, long notificationID );
Параметры
kernelPort
Порт раньше связывался с ядром из IORegisterApp или IORegisterForSystemPower.
notificationID
Копия уведомления ID, ставший частью подтверждаемого уведомления изменения состояния электропитания.
Возвращаемое значение
Возвраты kIOReturnSuccess или состояние ошибки, если запрос перестал работать.
Обсуждение
Должен использоваться при обработке kIOMessageCanSystemSleep и сообщения kIOMessageSystemWillSleep от питания системы IOPMrootDomain. Вызывающая сторона не должна вызывать IOAllowPowerChange в ответ ни на какие сообщения за исключением этих двух.
Оператор импорта
Objective C
@import IOKit;
Доступность
Доступный в OS X v10.0 и позже.
-
Вызывающая сторона отклоняет неактивное системное изменение состояния электропитания сна.
Объявление
Objective C
IOReturn IOCancelPowerChange ( io_connect_t kernelPort, long notificationID );
Параметры
kernelPort
Порт раньше связывался с ядром из IORegisterApp или IORegisterForSystemPower.
notificationID
Копия уведомления ID, ставший частью подтверждаемого уведомления изменения состояния электропитания.
Возвращаемое значение
Возвраты kIOReturnSuccess или состояние ошибки, если запрос перестал работать.
Обсуждение
Если только вызванный в ответ на kIOMessageCanSystemSleep обменивается сообщениями от IOPMrootDomain. IOCancelPowerChange не имеет никакого значения для ответа к kIOMessageSystemWillSleep (который является non-abortable), или любые другие сообщения.
Когда приложение реагирует на сообщение kIOMessageCanSystemSleep путем вызова IOCancelPowerChange, приложение накладывает вето на неактивный запрос сна. Система будет бодрствовать. Неактивный таймер протечет снова после того, как период неактивности и система отошлют то же сообщение kIOMessageCanSystemSleep, и заинтересованные приложения ответят усиление.
Оператор импорта
Objective C
@import IOKit;
Доступность
Доступный в OS X v10.0 и позже.
-
Разъединяет вызывающую сторону от IOService после получения уведомлений изменения состояния электропитания от IOService. (Вызывающая сторона должна также выпустить возврат IORegisterApp io_connect_t и возвратила IONotificationPortRef для полной очистки).
Объявление
Objective C
IOReturn IODeregisterApp ( io_object_t *notifier );
Параметры
notifier
Объект от IORegisterApp.
Возвращаемое значение
Возвраты kIOReturnSuccess или состояние ошибки, если запрос перестал работать.
Оператор импорта
Objective C
@import IOKit;
Доступность
Доступный в OS X v10.0 и позже.
-
Разъединяет вызывающую сторону от Корневого Домена питания IOService после получения уведомлений изменения состояния питания системы. (Вызывающая сторона должна также уничтожить IONotificationPortRef, возвращенный из IORegisterForSystemPower.)
Объявление
Objective C
IOReturn IODeregisterForSystemPower ( io_object_t *notifier );
Параметры
notifier
Объект возвратился из IORegisterForSystemPower.
Возвращаемое значение
Возвраты kIOReturnSuccess или состояние ошибки, если запрос перестал работать.
Оператор импорта
Objective C
@import IOKit;
Доступность
Доступный в OS X v10.0 и позже.
-
IORegisterApp IORegisterApp
(OS X v10.9)Подключает вызывающую сторону к IOService в целях получения уведомлений изменения состояния электропитания для устройства, которым управляет IOService.
Объявление
Objective C
io_connect_t IORegisterApp ( void *refcon, io_service_t theDriver, IONotificationPortRef *thePortRef, IOServiceInterestCallback callback, io_object_t *notifier );
Параметры
refcon
Данные возвратились на уведомлениях изменения состояния электропитания и не используемые ядром.
theDriver
Представление IOService, вероятно от IOServiceGetMatchingService.
thePortRef
Указатель на порт, на котором вызывающая сторона получит уведомления изменения состояния электропитания. Порт выделяется вызывающим приложением.
callback
C-функция, которую вызывают во время уведомления.
notifier
Указатель на notifier, который вызывающая сторона должна сохранить и передать последующему вызову в IODeregisterApp.
Возвращаемое значение
Если запрос перестал работать, возвращает io_connect_t сеанс для IOService или MACH_PORT_NULL. Вызывающая сторона должна закрыть возвращаемое значение через IOServiceClose () после вызова IODeregisterApp на notifier параметре.
Обсуждение
IORegisterApp требует, чтобы IOService интереса реализовали IOUserClient. Кроме того, тот IOUserClient должен реализовать allowPowerChange и cancelPowerChange методы, определенные в IOPMLibDefs.h. Если Вы интересуетесь получением уведомлений состояния электропитания от устройства без IOUserClient, попытайтесь использовать IOServiceAddInterestNotification с gIOGeneralInterest типа интереса вместо этого.
Оператор импорта
Objective C
@import IOKit;
Доступность
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.9.
-
Подключает вызывающую сторону к Корневому Домену питания IOService в целях получения сна и уведомлений следа для системы. Не обеспечивает завершение работы системы и перезапускает уведомления.
Объявление
Objective C
io_connect_t IORegisterForSystemPower ( void *refcon, IONotificationPortRef *thePortRef, IOServiceInterestCallback callback, io_object_t *notifier );
Параметры
refcon
Вызывающая сторона может предоставить данные для получения s параметр 'обратному вызову' на изменениях состояния электропитания.
thePortRef
По возврату thePortRef является указателем на IONotificationPortRef, который поставит уведомления питания. Порт выделяется этой функцией и должен быть позже выпущен вызывающей стороной (после того, как вызов
IODeregisterForSystemPower
). Вызывающая сторона должна также включить IONotificationPortRef путем вызоваIONotificationPortGetRunLoopSource
, илиIONotificationPortGetMachPort
, илиIONotificationPortSetDispatchQueue
.callback
C-функция, которую вызывают во время уведомления.
notifier
На успехе, возвращает указатель на уникальный notifier, который вызывающая сторона должна сохранить и передать последующему вызову в IODeregisterForSystemPower.
Возвращаемое значение
Если запрос перестал работать, возвращает io_connect_t сеанс для IOPMrootDomain или MACH_PORT_NULL. Вызывающая сторона должна закрыть возвращаемое значение через IOServiceClose () после вызова IODeregisterForSystemPower на notifier параметре.
Обсуждение
Обеспечивает уведомления сна/следа приложениям. Требует, чтобы приложения подтвердили некоторых, но не все уведомления. За жизненный цикл сна/следа регистр для уведомлений сна/следа передаст эти сообщения:
- kIOMessageSystemWillSleep поставлен в точке, система инициирует сон non-abortable. Вызывающие стороны MUST подтверждают это событие путем вызова IOAllowPowerChange. Если вызывающая сторона не подтвердит уведомление сна, то сон будет продолжаться так или иначе после 30 вторых тайм-аутов (приводящий к плохому пользовательскому опыту). Поставленный, прежде чем любые аппаратные средства выключаются.
- kIOMessageSystemWillPowerOn поставлен в раннее время пробуждения, прежде чем было включено большинство аппаратных средств. Знайте, что любые попытки получить доступ к диску, сети, дисплею, и т.д. могут привести к ошибкам или блокированию Вашего процесса, пока те ресурсы не становятся доступными. Вызывающая сторона не должна подтверждать kIOMessageSystemWillPowerOn; вызывающая сторона должна просто возвратиться из ее обработчика.
- kIOMessageSystemHasPoweredOn поставлен во время завершения пробуждения, после того, как все драйверы устройств и аппаратные средства обработали событие пробуждения. Ожидайте это событие 1-5 или больше спустя секунды после инициирования системного пробуждения. Вызывающая сторона не должна подтверждать kIOMessageSystemHasPoweredOn; вызывающая сторона должна просто возвратиться из ее обработчика.
- kIOMessageCanSystemSleep указывает, что система обдумывает неактивный сон, но дает приложениям шанс наложить вето на ту попытку сна. Вызывающая сторона должна подтвердить kIOMessageCanSystemSleep путем вызова IOAllowPowerChange или IOCancelPowerChange. Вызов IOAllowPowerChange не наложит вето на сон; любое приложение, вызывающее IOCancelPowerChange, наложит вето на неактивный сон. kIOMessageCanSystemSleep уведомление будет сопровождаться до 30 секунд спустя сообщением kIOMessageSystemWillSleep. или сообщение kIOMessageSystemWillNotSleep.
- когда некоторый клиент приложения наложил вето на неактивный запрос сна, kIOMessageSystemWillNotSleep поставлен. kIOMessageSystemWillNotSleep может следовать kIOMessageCanSystemSleep уведомлению, но не будет иначе отправлен. Вызывающая сторона не должна подтверждать kIOMessageSystemWillNotSleep; вызывающая сторона должна просто возвратиться из ее обработчика.
Для вычеркивания из списка для уведомлений сна/следа вызывающая сторона должна выполнить два вызова в этом порядке: - вызывают IODeregisterForSystemPower с 'notifier' параметром, возвращенным здесь. - Тогда вызывают IONotificationPortDestroy, передающий 'thePortRef' параметр, возвращенный здесь.
Оператор импорта
Objective C
@import IOKit;
Доступность
Доступный в OS X v10.0 и позже.
-
Указывает, как пользовательское действие, уровень заряда батареи и тепловой уровень каждый способствует полному уровню «SystemLoadAdvisory». В будущем этот объединенный уровень может представлять новые уровни также.
Объявление
Objective C
CFDictionaryRef IOCopySystemLoadAdvisoryDetailed ( void );
Возвращаемое значение
Возвращает CFDictionaryRef или NULL на ошибке. Вызывающая сторона должна выпустить возвращенный словарь.
Обсуждение
Посмотрите ключи словаря, определенные выше.
Оператор импорта
Objective C
@import IOKit;
Доступность
Доступный в OS X v10.6 и позже.
-
Возвращает подсказку о том, был ли бы теперь хорошим временем для выполнения нечувствительной ко времени работы.
Объявление
Objective C
IOSystemLoadAdvisoryLevel IOGetSystemLoadAdvisory ( void );
Возвращаемое значение
IOSystemLoadAdvisoryLevel - один из: kIOSystemLoadAdvisoryLevelGreat - Хорошее время для выполнения нечувствительной ко времени работы. kIOSystemLoadAdvisoryLevelOK - время OK для выполнения нечувствительной ко времени работы. kIOSystemLoadAdvisoryLevelBad - Плохое время для выполнения нечувствительной ко времени работы.
Обсуждение
На основе пользователя и системной нагрузки, IOGetSystemLoadAdvisory определяет «лучше» и «худшие» времена для выполнения дополнительного или нечувствительного ко времени CPU или дисковой работы.
Приложения могут использовать этот результат избежать ухудшать пользовательский опыт. Если это - «Плохое» время или время «OK» для выполнения работы, приложения должны замедлиться и выполнить работу менее настойчиво.
Нет никакой гарантии, что система когда-либо будет в «Большом» условии выполнить работу - вся существенная работа должна все еще быть выполнена даже в «Плохом», или времена «OK». Абсолютно дополнительная работа, такая как обновление кэшей, может быть отложена неопределенно.
Примечание: Можно более эффективно считать уровень SystemLoadAdvisory с помощью notify_get_state () вместо IOGetSystemLoadAdvisory. Результаты идентичны. notify_get_state () требует, чтобы Вы передали маркерный параметр, полученный путем регистрации для уведомлений SystemLoadAdvisory.
Оператор импорта
Objective C
@import IOKit;
Доступность
Доступный в OS X v10.6 и позже.
-
Состояние копии всех текущих уровней мощности ЦП.
Объявление
Objective C
IOReturn IOPMCopyCPUPowerStatus ( CFDictionaryRef *cpuPowerStatus );
Параметры
cpuPowerStatus
На успех, указатель на словарь, определяющий мощность ЦП; иначе NULL. Указатель будет заполнен с недавно создаваемым словарем по успешному возврату. Вызывающая сторона должна выпустить словарь.
Возвращаемое значение
kIOReturnSuccess или другое сообщение об ошибке. Возвраты kIOReturnNotFound, если не был опубликован CPU PowerStatus.
Обсуждение
Возвращенный словарь может определить некоторые из этих ключей, как определено в IOPM.h: - kIOPMCPUPowerLimitProcessorSpeedKey - kIOPMCPUPowerLimitProcessorCountKey - kIOPMCPUPowerLimitSchedulerTimeKey
Оператор импорта
Objective C
@import IOKit;
Доступность
Доступный в OS X v10.7 и позже.
-
Получите тепловой уровень предупреждения системы.
Объявление
Objective C
IOReturn IOPMGetThermalWarningLevel ( uint32_t *thermalLevel );
Возвращаемое значение
kIOReturnSuccess или другое сообщение об ошибке. Возвраты kIOReturnNotFound, если не был опубликован тепловой уровень предупреждения.
Оператор импорта
Objective C
@import IOKit;
Доступность
Доступный в OS X v10.7 и позже.
-
Копии детализируют о
IOPMAssertion
Объявление
Objective C
CFDictionaryRef IOPMAssertionCopyProperties ( IOPMAssertionID theAssertion );
Параметры
theAssertion
Утверждение ID для копирования информации о.
Возвращаемое значение
Словарь, описывающий утверждение с ключами, указанными в, Видит IOPMAssertionDictionaryKeys. Это - ответственность вызывающей стороны выпустить этот словарь.
Обсуждение
Возвращает словарь, описывающий спецификации IOPMASSERTION и текущее состояние.
Оператор импорта
Objective C
@import IOKit;
Доступность
Доступный в OS X v10.7 и позже.
-
IOPMAssertionCreate IOPMAssertionCreate
(OS X v10.6)Динамично запрашивает поведение системы от системы управления питанием.
Объявление
Objective C
IOReturn IOPMAssertionCreate ( CFStringRef AssertionType, IOPMAssertionLevel AssertionLevel, IOPMAssertionID *AssertionID );
Параметры
AssertionType
Утверждение CFString вводит для запроса от системы премьер-министра.
AssertionLevel
Передайте kIOPMAssertionLevelOn или kIOPMAssertionLevelOff.
AssertionID
На успехе уникальный идентификатор будет возвращен в этом параметре.
Возвращаемое значение
Возвраты kIOReturnSuccess на успехе, любой другой возврат указывает, что PM не мог успешно активировать указанное утверждение.
Обсуждение
Никакие специальные полномочия, необходимые для совершения этого вызова - любой процесс, не могут активировать утверждение питания.
Оператор импорта
Objective C
@import IOKit;
Доступность
Доступный в OS X v10.5 и позже.
Осуждаемый в OS X v10.6.
-
Объявление
Objective C
IOReturn IOPMAssertionCreateWithDescription ( CFStringRef AssertionType, CFStringRef Name, CFStringRef Details, CFStringRef HumanReadableReason, CFStringRef LocalizationBundlePath, CFTimeInterval Timeout, CFStringRef TimeoutAction, IOPMAssertionID *AssertionID );
Параметры
AssertionType
Постоянный тип утверждения. Вызывающая сторона должна указать этот параметр.
Name
Значение CFString для соответствия ключу
kIOPMAssertionNameKey
. Вызывающая сторона должна указать этот параметр.Details
Значение CFString для соответствия ключу
kIOPMAssertionDetailsKey
. Вызывающая сторона моя передача NULL, но это помогает продвинутым пользователям, и администраторы идентифицируют причины этого утверждения.HumanReadableReason
Значение CFString для соответствия ключу
kIOPMAssertionHumanReadableReasonKey
. Вызывающая сторона может передать NULL, но если она указала, что OS X может вывести на экран ее пользователям для описания активных утверждений в их системе.LocalizationBundlePath
Значение CFString для соответствия ключу
kIOPMAssertionLocalizationBundlePathKey
. Этот путь пакета должен включать локализацию для строкиHumanReadableReason
Вызывающая сторона может передать NULL, но этот параметр требуется, если вызывающая сторона указываетHumanReadableReason
Timeout
Указывает тайм-аут для этого утверждения. Передайте 0 ни для какого тайм-аута.
TimeoutAction
Указывает действие тайм-аута. Вызывающая сторона моя передача NULL. Если тайм-аут указан, но TimeoutAction не, действие тайм-аута по умолчанию
kIOPMAssertionTimeoutActionTurnOff
AssertionID
(Вывод) По успешному возврату, содержит уникальную ссылку на утверждение премьер-министра.
Возвращаемое значение
kIOReturnSuccess или другой код возврата IOKit на ошибке.
Обсуждение
Создает IOPMAssertion. Это - предпочтительный API для вызова для создания утверждения. Это позволяет вызывающей стороне указывать Имя, Подробные данные и Хумэнридэблерисона во время создания. Существуют другие ключи, которые могут далее описать утверждение, но большинство разработчиков не должно использовать их. Использовать
IOPMAssertionSetProperties
илиIOPMAssertionCreateWithProperties
если необходимо указать свойства, которые не доступны здесь.Оператор импорта
Objective C
@import IOKit;
Доступность
Доступный в OS X v10.7 и позже.
-
Динамично запрашивает поведение системы от системы управления питанием.
Объявление
Objective C
IOReturn IOPMAssertionCreateWithName ( CFStringRef AssertionType, IOPMAssertionLevel AssertionLevel, CFStringRef AssertionName, IOPMAssertionID *AssertionID );
Параметры
AssertionType
Утверждение CFString вводит для запроса от системы премьер-министра.
AssertionLevel
Передайте kIOPMAssertionLevelOn или kIOPMAssertionLevelOff.
AssertionName
Строка, описывающая имя вызывающей стороны и действия, обрабатываемого этим утверждением (например, «Почтовые Почтовые ящики Уплотнения»). Имя больше может не быть, чем 128 символов.
AssertionID
На успехе уникальный идентификатор будет возвращен в этом параметре.
Возвращаемое значение
Возвраты kIOReturnSuccess на успехе, любой другой возврат указывает, что PM не мог успешно активировать указанное утверждение.
Обсуждение
Никакие специальные полномочия не необходимы для совершения этого вызова - любой процесс может активировать утверждение питания. Вызывающая сторона должна указать AssertionName - NULL не является допустимым вводом.
Оператор импорта
Objective C
@import IOKit;
Доступность
Доступный в OS X v10.6 и позже.
-
Создает IOPMAssertion с большей гибкостью, чем
IOPMAssertionCreateWithDescription
.Объявление
Objective C
IOReturn IOPMAssertionCreateWithProperties ( CFDictionaryRef AssertionProperties, IOPMAssertionID *AssertionID );
Параметры
AssertionProperties
Словарь, обеспечивающий свойства утверждения, которое должно быть создано.
AssertionID
(Вывод) По успешному возврату, содержит уникальную ссылку на утверждение премьер-министра.
Обсуждение
Создайте новое утверждение PM - вызывающая сторона должна указать тип утверждения, начального уровня и его свойств, поскольку IOPMAssertionDictionaryKeys вводит
AssertionProperties
словарь. Следующие ключи, рекомендуют и/или требуемый быть указанным в параметре словаря AssertionProperties.ТРЕБУЕМЫЙ:
kIOPMAssertionTypeKey
определите тип утверждения.ТРЕБУЕМЫЙ:
kIOPMAssertionValueKey
определите значение inital.ТРЕБУЕМЫЙ:
kIOPMAssertionNameKey
Вызывающая сторона должна описать имя для действия, требующего изменения в поведении, предоставленном утверждением.ДОПОЛНИТЕЛЬНЫЙ:
kIOPMAssertionDetailsKey
Вызывающая сторона может описать зависящие от контекста данные об утверждении.ДОПОЛНИТЕЛЬНЫЙ:
kIOPMAssertionHumanReadableReasonKey
Вызывающая сторона может описать причину создания утверждения в локализуемом CFString. Это должно быть человекочитаемой фразой, описывающей меры, которые принимает обработка вызовов, в то время как утверждение сохранено, как «Загрузка эпизодов TV», или «Компиляция Проектов»ДОПОЛНИТЕЛЬНЫЙ:
kIOPMAssertionLocalizationBundlePathKey
Вызывающая сторона может обеспечить путь своего пакета, где OS X может локализовать для дисплея GUI CFString, указанныйkIOPMAssertionHumanReadableReasonKey
.ДОПОЛНИТЕЛЬНЫЙ:
kIOPMAssertionPlugInIDKey
если вызывающая сторона является плагином с различными идентификационными данными, чем процесс, это загружается в.ДОПОЛНИТЕЛЬНЫЙ:
kIOPMAssertionFrameworkIDKey
если вызывающая сторона является платформой, действующей от имени процесса.OPTIONAL: вызывающая сторона может указать тайм-аут.
Оператор импорта
Objective C
@import IOKit;
Доступность
Доступный в OS X v10.7 и позже.
-
Объявляет, что пользователь активен в системе. Это заставляет дисплей включать и откладывать сон дисплея до энергетических настроек Saver сна дисплея пользователя. Если бы Вы предпочитаете содержать дисплей, не спящий в течение более длительного периода, и Вы знаете, сколько времени требуется содержать его, рассмотрите утверждение взятия
kIOPMAssertionTypePreventUserIdleDisplaySleep
использованиеIOPMAssertionCreateWithDescription
API вместо этого.Объявление
Objective C
IOReturn IOPMAssertionDeclareUserActivity ( CFStringRef AssertionName, IOPMUserActiveType userType, IOPMAssertionID *AssertionID );
Параметры
AssertionName
Строка, описывающая имя вызывающей стороны и действия, обрабатываемого этим утверждением (например, «Почтовые Почтовые ящики Уплотнения»). Имя больше может не быть, чем 128 символов.
userType
Этот параметр указывает, расположен ли активный пользователь локально перед системой или подключен к системе по сети. Различные компоненты системы сохраняются на различных уровнях мощности в зависимости от пользовательского расположения.
AssertionID
На Успехе уникальный идентификатор будет возвращен в этом параметре. Вызывающая сторона может вызвать эту функцию снова с уникальным идентификатором retured ранее для создания отчетов о непрерывном пользовательском действии. Уникальный идентификатор, возвращенный этой функцией, может измениться на каждом вызове в зависимости от того, как часто этот вызов функции повторяется и текущее значение таймера автоматического отключения дисплея. Если Вы выполняете этот вызов несколько раз, отслеживаете возвращенное значение для assertionID и передаете его в как параметр на каждом вызове.
Возвращаемое значение
Возвраты kIOReturnSuccess на успехе, любой другой возврат указывает, что PM не мог успешно активировать указанное утверждение.
Обсуждение
Никакие специальные полномочия не необходимы для совершения этого вызова - любой процесс может вызвать этот API. Вызывающая сторона должна указать AssertionName - NULL не является допустимым вводом.
Оператор импорта
Objective C
@import IOKit;
Доступность
Доступный в OS X v10.7 и позже.
-
Постепенно уменьшается утверждение сохраняют количество.
Объявление
Objective C
IOReturn IOPMAssertionRelease ( IOPMAssertionID AssertionID );
Параметры
AssertionID
assertion_id, возвращенный из IOPMAssertionCreate, для отмены.
Возвращаемое значение
Возвраты kIOReturnSuccess на успехе.
Обсуждение
Если сохранить количество становится нулем, то это также освобождает и деактивировало утверждение, именуемое
assertionID
Вызовы к
IOPMAssertionCreate
иIOPMAssertionRelease
должен каждый быть соединен с вызовами к IOPMAssertionRelease.Оператор импорта
Objective C
@import IOKit;
Доступность
Доступный в OS X v10.5 и позже.
-
Постепенно увеличивается утверждение сохраняют количество.
Объявление
Objective C
void IOPMAssertionRetain ( IOPMAssertionID theAssertion );
Параметры
theAssertion
Утверждение ID для сохранения.
Обсуждение
Инкременты сохранить количество согласно стилю CoreFoundation сохраняют/выпускают семантику. Сохраните количество, может быть проверен в информационном словаре утверждения в ключе
kIOPMAssertionRetainCountKey
Оператор импорта
Objective C
@import IOKit;
Доступность
Доступный в OS X v10.7 и позже.
-
Устанавливает свойство в утверждении.
Объявление
Objective C
IOReturn IOPMAssertionSetProperty ( IOPMAssertionID theAssertion, CFStringRef theProperty, CFTypeRef theValue );
Параметры
theAssertion
IOPMAssertionID
из утверждения для изменения.theProperty
Ключ CFString, от
IOPMAssertionDictionaryKeys
изменить.theValue
Свойство для установки. Это должен быть CFNumber или CFString, как указано ключом свойства, названным в whichProperty.
Возвращаемое значение
Возвраты
kIOReturnNotPriviliged
если вызывающая сторона не имеет разрешения изменить это утверждение. ВозвратыkIOReturnNotFound
если PM не может определить местоположение этого утверждения. ВозвратыkIOReturnError
на неопознанную ошибку. ВозвратыkIOReturnSuccess
иначе.Обсуждение
Только процесс, создавший утверждение, может изменить свои свойства.
Оператор импорта
Objective C
@import IOKit;
Доступность
Доступный в OS X v10.7 и позже.
-
Возвращает словарь, перечисляющий все утверждения, сгруппированные их процессом владения.
Объявление
Objective C
IOReturn IOPMCopyAssertionsByProcess ( CFDictionaryRef *AssertionsByPID );
Параметры
AssertionsByPID
На успехе это возвращает словарь утверждений для каждого процесса. На верхнем уровне ключи к CFDictionary являются pids, сохраненным как CFNumbers (kCFNumberIntType). Значение, связанное с каждым CFNumber изодромный с предварением, является CFArray активных утверждений. Каждая запись в CFArray является утверждением, представленным как CFDictionary. Посмотрите ключи kIOPMAssertionTypeKey и kIOPMAssertionLevelKey. Вызывающая сторона должна CFRelease () этот словарь, когда сделано.
Возвращаемое значение
Возвраты kIOReturnSuccess на успехе.
Обсуждение
Примечания: Один процесс может иметь многократные утверждения. Несколько процессов, возможно, утверждали то же утверждение к разным уровням.
Оператор импорта
Objective C
@import IOKit;
Доступность
Доступный в OS X v10.5 и позже.
-
Возвращает список доступных утверждений и их уровней в масштабе всей системы.
Объявление
Objective C
IOReturn IOPMCopyAssertionsStatus ( CFDictionaryRef *AssertionsStatus );
Параметры
AssertionsStatus
На успехе это возвращает CFDictionary всех в настоящее время доступных утверждений. Ключи в словаре являются типами утверждения, и значение каждого является CFNumber, представляющим совокупный уровень для того утверждения. Вызывающая сторона должна CFRelease () этот словарь, когда сделано.
Возвращаемое значение
Возвраты kIOReturnSuccess на успехе.
Обсуждение
Уровень в масштабе всей системы является максимумом уровней всех отдельных утверждений.
Оператор импорта
Objective C
@import IOKit;
Доступность
Доступный в OS X v10.5 и позже.
-
Объявление
Objective C
/*! */ #define kIOPMAssertionTimeoutKey CFSTR("TimeoutSeconds") /*! */ #define kIOPMAssertionTimeoutActionKey CFSTR("TimeoutAction") /*! */ #define kIOPMAssertionTimeoutActionLog CFSTR("TimeoutActionLog") /*! */ #define kIOPMAssertionTimeoutActionTurnOff CFSTR("TimeoutActionTurnOff") /*! */ #define kIOPMAssertionTimeoutActionRelease CFSTR("TimeoutActionRelease") /*! */ #define kIOPMAssertionRetainCountKey CFSTR("RetainCount") /*! */ #define kIOPMAssertionNameKey CFSTR("AssertName") /*! */ #define kIOPMAssertionDetailsKey CFSTR("Details") /*! */ #define kIOPMAssertionHumanReadableReasonKey CFSTR("HumanReadableReason") /*! */ #define kIOPMAssertionLocalizationBundlePathKey CFSTR("BundlePath") /*! */ #define kIOPMAssertionFrameworkIDKey CFSTR("FrameworkBundleID") /*! */ #define kIOPMAssertionPlugInIDKey CFSTR("PlugInBundleID") /*! */ #define kIOPMAssertionTypeKey CFSTR("AssertType") /*! */ #define kIOPMAssertionLevelKey CFSTR("AssertLevel")
Обсуждение
Ключи в словари, описывающие утверждения.
См. также
kIOPMAssertionTimeoutKey
kIOPMAssertionTimeoutActionKey
kIOPMAssertionTimeoutActionLog
kIOPMAssertionTimeoutActionTurnOff
kIOPMAssertionTimeoutActionRelease
kIOPMAssertionRetainCountKey
kIOPMAssertionNameKey
kIOPMAssertionDetailsKey
kIOPMAssertionHumanReadableReasonKey
kIOPMAssertionLocalizationBundlePathKey
kIOPMAssertionFrameworkIDKey
kIOPMAssertionPlugInIDKey
kIOPMAssertionTypeKey
kIOPMAssertionLevelKey
-
Используйте в качестве параметра AssertionType
IOPMAssertionCreate
. Неактивный дисплей не будет спать, когда включено, и следовательно система не будет бездействовать сон.Объявление
Objective C
/*! */ #define kIOPMAssertionTypePreventUserIdleSystemSleep CFSTR("PreventUserIdleSystemSleep") /*! */ #define kIOPMAssertionTypePreventUserIdleDisplaySleep CFSTR("PreventUserIdleDisplaySleep") /*! */ #define kIOPMAssertionTypePreventSystemSleep CFSTR("PreventSystemSleep") /*! */ #define kIOPMAssertionTypeNoIdleSleep CFSTR("NoIdleSleepAssertion") /*! */ #define kIOPMAssertionTypeNoDisplaySleep CFSTR("NoDisplaySleepAssertion")
Обсуждение
Когда утверждается и установлено выравниваться
kIOPMAssertionLevelOn
, система предпочтет вводить Темное состояние Следа, или уже оставаться по Темному Следу если там, вместо того, чтобы засыпать.Утверждения являются просто предложениями к OS, и OS может только соблюдать их в меру его возможности. В случае низкой мощности или тепловой чрезвычайной ситуации, система может спать так или иначе несмотря на утверждение.
Утверждение должно опубликовать AssertionType в своем словаре свойств утверждения. AssertionType должен быть ключом в словаре свойств со значением CFNumber, содержащего значение kCFNumberIntegerType
kIOPMAssertionLevelOff
илиkIOPMAssertionLevelOn
. -
Запросите необработанные данные батареи от системы.
Объявление
Objective C
IOReturn IOPMCopyBatteryInfo ( mach_port_t masterPort, CFArrayRef *info );
Параметры
masterPort
Ведущий порт, полученный из IOMasterPort (). Просто передача MACH_PORT_NULL.
info
CFArray CFDictionaries, содержащего необработанные данные батареи.
Возвращаемое значение
Возвраты kIOReturnSuccess или состояние ошибки, если запрос перестал работать.
Обсуждение
WARNING! IOPMCoyBatteryInfo не поддерживается на ALL Intel, CPU базировал системы. Для PPC CPU базировал системы, это остается не рекомендуемым. В почти всех целях разработчики должны использовать более богатый IOPowerSources API (с уведомлениями изменения) вместо того, чтобы использовать IOPMCopyBatteryInfo. Ключи для дешифровки возврата IOPMCopyBatteryInfo CFArray существуют в IOPM.h.
Оператор импорта
Objective C
@import IOKit;
Доступность
Доступный в OS X v10.0 и позже.
-
Считает корневой домен питания IOService.
Объявление
Objective C
io_connect_t IOPMFindPowerManagement ( mach_port_t master_device_port );
Параметры
master_device_port
Просто передача в MACH_PORT_NULL для порта ведущего устройства.
Возвращаемое значение
Возвращает дескриптор io_connect_t на корневом домене. Должен быть выпущен с IOServiceClose (), когда сделано.
Оператор импорта
Objective C
@import IOKit;
Доступность
Доступный в OS X v10.0 и позже.
-
Получает текущую стоимость одного из факторов агрессивности в Управлении питанием IOKit.
Объявление
Objective C
IOReturn IOPMGetAggressiveness ( io_connect_t fb, unsigned long type, unsigned long *aggressiveness );
Параметры
fb
Представление корневого домена питания от IOPMFindPowerManagement.
type
Указывает, какой фактор агрессивности получается.
aggressiveness
Точки туда, где сохранить полученное значение фактора агрессивности.
Возвращаемое значение
Возвраты kIOReturnSuccess или состояние ошибки, если запрос перестал работать.
Оператор импорта
Objective C
@import IOKit;
Доступность
Доступный в OS X v10.0 и позже.
-
Наборы один из факторов агрессивности в Управлении питанием IOKit.
Объявление
Objective C
IOReturn IOPMSetAggressiveness ( io_connect_t fb, unsigned long type, unsigned long aggressiveness );
Параметры
fb
Представление корневого домена питания от IOPMFindPowerManagement.
type
Указывает, какой фактор агрессивности устанавливается.
aggressiveness
Новое значение фактора агрессивности.
Возвращаемое значение
Возвраты kIOReturnSuccess или состояние ошибки, если запрос перестал работать.
Оператор импорта
Objective C
@import IOKit;
Доступность
Доступный в OS X v10.0 и позже.
-
Говорит, поддерживает ли система полный сон, или просто дремлите
Объявление
Objective C
boolean_t IOPMSleepEnabled ( void );
Возвращаемое значение
Возвращает true, если система поддерживает сон, ложь, если некоторые аппаратные средства предотвращают полный сон.
Оператор импорта
Objective C
@import IOKit;
Доступность
Доступный в OS X v10.0 и позже.
-
Запросите, чтобы система инициировала сон.
Объявление
Objective C
IOReturn IOPMSleepSystem ( io_connect_t fb );
Параметры
fb
Порт раньше связывался с ядром из IOPMFindPowerManagement.
Возвращаемое значение
Возвраты kIOReturnSuccess или состояние ошибки, если запрос перестал работать.
Обсуждение
В целях безопасности вызывающая сторона должна быть корнем или пользователем консоли.
Оператор импорта
Objective C
@import IOKit;
Доступность
Доступный в OS X v10.0 и позже.
См. Обзор для документации уровня заголовка.
-
Введите для параметров AssertionID
IOPMAssertionCreateWithProperties
иIOPMAssertionRelease
Объявление
Objective C
typedef uint32_t IOPMAssertionID;
Оператор импорта
Objective C
@import IOKit;
Доступность
Доступный в OS X v10.5 и позже.
-
Введите для параметра AssertionLevel IOPMAssertionCreate
Объявление
Objective C
typedef uint32_t IOPMAssertionLevel;
Обсуждение
Возможные значения для
IOPMAssertionLevel
kIOPMAssertionLevelOff
иkIOPMAssertionLevelOn
Оператор импорта
Objective C
@import IOKit;
Доступность
Доступный в OS X v10.5 и позже.
-
Возвратите тип для IOGetSystemLoadAdvisory
Объявление
Objective C
typedef int IOSystemLoadAdvisoryLevel;
Обсуждение
Значение является одним из kIOSystemLoadAdvisoryLevelGreat, kIOSystemLoadAdvisoryLevelOK, или kIOSystemLoadAdvisoryLevelBad.
Оператор импорта
Objective C
@import IOKit;
Доступность
Доступный в OS X v10.6 и позже.
См. Обзор для документации уровня заголовка.
-
Объявление
Objective C
/*! */ #define kIOPMAssertionDetailsKey CFSTR("Details") /*! */ #define kIOPMAssertionFrameworkIDKey CFSTR("FrameworkBundleID") /*! */ #define kIOPMAssertionHumanReadableReasonKey CFSTR("HumanReadableReason") /*! */ #define kIOPMAssertionLevelKey CFSTR("AssertLevel") /*! */ #define kIOPMAssertionLocalizationBundlePathKey CFSTR("BundlePath") /*! */ #define kIOPMAssertionNameKey CFSTR("AssertName") /*! */ #define kIOPMAssertionPlugInIDKey CFSTR("PlugInBundleID") /*! */ #define kIOPMAssertionRetainCountKey CFSTR("RetainCount") /*! */ #define kIOPMAssertionTimeoutActionKey CFSTR("TimeoutAction") /*! */ #define kIOPMAssertionTimeoutActionLog CFSTR("TimeoutActionLog") /*! */ #define kIOPMAssertionTimeoutActionRelease CFSTR("TimeoutActionRelease") /*! */ #define kIOPMAssertionTimeoutActionTurnOff CFSTR("TimeoutActionTurnOff") /*! */ #define kIOPMAssertionTimeoutKey CFSTR("TimeoutSeconds") /*! */ #define kIOPMAssertionTypeKey CFSTR("AssertType") /*! */ #define kIOPMAssertionTypeNoDisplaySleep CFSTR("NoDisplaySleepAssertion") /*! */ #define kIOPMAssertionTypeNoIdleSleep CFSTR("NoIdleSleepAssertion") /*! */ #define kIOPMAssertionTypePreventSystemSleep CFSTR("PreventSystemSleep") /*! */ #define kIOPMAssertionTypePreventUserIdleDisplaySleep CFSTR("PreventUserIdleDisplaySleep") /*! */ #define kIOPMAssertionTypePreventUserIdleSystemSleep CFSTR("PreventUserIdleSystemSleep") #define kIOPMCPUPowerNotificationKey "com.apple.system.power.CPU" #define kIOPMThermalWarningNotificationKey "com.apple.system.power.thermal_warning" #define kIOSystemLoadAdvisoryBatteryLevelKey CFSTR("BatteryLevel") #define kIOSystemLoadAdvisoryCombinedLevelKey CFSTR("CombinedLevel") #define kIOSystemLoadAdvisoryNotifyName "com.apple.system.powermanagement.SystemLoadAdvisory" #define kIOSystemLoadAdvisoryThermalLevelKey CFSTR("ThermalLevel") #define kIOSystemLoadAdvisoryUserLevelKey CFSTR("UserLevel")
Константы
-
kIOPMAssertionDetailsKey
kIOPMAssertionDetailsKey
Ключ CFDictionary для имени утверждения. Устанавливание этого ключа требуется при создании утверждения.
kIOPMAssertionNameKey
описывает действие, которое защищает утверждение. Создатель должен указать, что значение CFString для этого ключа в словаре передалоIOPMAssertionCreateWithProperties
Имя утверждения является отдельным от поведения типа утверждения - указывают CFString как «Проверка почты» или «Компиляция», описывающая задачу, которую защищает это утверждение.
CFString, который Вы связываете с этим ключом, не должен быть локализуемым (OS X не попытается локализовать его.)
Опишите свое утверждение максимально полностью. Посмотрите эти другие ключи, могущие, можно также установить для добавления объяснения к утверждению: OPTIONAL
kIOPMAssertionDetailsKey
ДОПОЛНИТЕЛЬНЫЙkIOPMAssertionHumanReadableReasonKey
ДОПОЛНИТЕЛЬНЫЙkIOPMAssertionLocalizationBundlePathKey
Доступный в OS X v10.7 и позже.
-
kIOPMAssertionFrameworkIDKey
kIOPMAssertionFrameworkIDKey
Укажите, является ли создатель утверждения платформой.
Если код, создающий утверждение, находится в платформе или библиотеке, вызывающая сторона должна указать CFBundleIdentifier, как CFString, идентифицировав тот пакет здесь. Эта информация помогает разработчикам, и администраторы определяют источник утверждения.
Этот ключ может быть указан в словаре, переданном
IOPMAssertionCreateWithProperties
.Этот ключ может присутствовать в словаре, возвращенном из
IOPMAssertionCopyProperties
.Доступный в OS X v10.7 и позже.
-
kIOPMAssertionHumanReadableReasonKey
kIOPMAssertionHumanReadableReasonKey
Дополнительный ключ, обеспечивающий локализуемую строку для OS X для отображения Утверждений PM в GUI.
Вызывающая сторона должна указать эту строку в
IOPMAssertionCreateWithProperties
. Если настоящее, OS X может вывести на экран эту строку, локализованную на язык пользователя, для объяснения изменений в поведении системы, вызванном утверждением.Если установлено, вызывающая сторона должна также указать путь пакета для ключа
kIOPMAssertionLocalizationBundlePathKey
Пакет в том пути должен содержать информацию локализации для указанной строки.Этот ключ может быть указан в словаре, переданном
IOPMAssertionCreateWithProperties
.Этот ключ может присутствовать в словаре, возвращенном из
IOPMAssertionCopyProperties
.Опишите свое утверждение максимально полностью. Посмотрите эти другие ключи, могущие, можно установить для добавления объяснения к утверждению: REQUIRED
kIOPMAssertionNameKey
ДОПОЛНИТЕЛЬНЫЙkIOPMAssertionDetailsKey
Доступный в OS X v10.7 и позже.
-
kIOPMAssertionLevelKey
kIOPMAssertionLevelKey
Ключ CFDictionary для уровня утверждения в информационном словаре утверждения.
Значение для этого ключа будет CFNumber, kCFNumberIntType со значением
kIOPMAssertionLevelOff
илиkIOPMAssertionLevelOn
. Уровень отражает набор уровня утверждения при создании, или скорректированный черезIOPMAssertionSetLevel
Доступный в OS X v10.5 и позже.
-
kIOPMAssertionLocalizationBundlePathKey
kIOPMAssertionLocalizationBundlePathKey
Относится к CFURL, как CFString, идентифицируя путь к пакету вызывающей стороны, содержащему информацию локализации.
Пакет должен содержать локализации для
kIOPMAssertionHumanReadableReasonKey
Этот ключ может быть указан в словаре, переданном
IOPMAssertionCreateWithProperties
.Этот ключ может присутствовать в словаре, возвращенном из
IOPMAssertionCopyProperties
.Доступный в OS X v10.7 и позже.
-
kIOPMAssertionNameKey
kIOPMAssertionNameKey
Ключ CFDictionary для имени утверждения. Устанавливание этого ключа требуется при создании утверждения.
kIOPMAssertionNameKey
описывает действие, которое защищает утверждение. Создатель должен указать, что значение CFString для этого ключа в словаре передалоIOPMAssertionCreateWithProperties
Имя утверждения является отдельным от поведения типа утверждения - указывают CFString как «Проверка почты» или «Компиляция», описывающая задачу, которую защищает это утверждение.
CFString, который Вы связываете с этим ключом, не должен быть локализуемым (OS X не попытается локализовать его.)
Опишите свое утверждение максимально полностью. Посмотрите эти другие ключи, могущие, можно также установить для добавления объяснения к утверждению: OPTIONAL
kIOPMAssertionDetailsKey
ДОПОЛНИТЕЛЬНЫЙkIOPMAssertionHumanReadableReasonKey
ДОПОЛНИТЕЛЬНЫЙkIOPMAssertionLocalizationBundlePathKey
Доступный в OS X v10.6 и позже.
-
kIOPMAssertionPlugInIDKey
kIOPMAssertionPlugInIDKey
Укажите, является ли создатель утверждения плагином.
Если код, создающий утверждение, находится в плагине, вызывающая сторона должна указать CFBundleIdentifier, как CFString, идентифицировав пакет плагина здесь. Эта информация помогает разработчикам, и администраторы определяют источник утверждения.
Этот ключ может быть указан в словаре, переданном
IOPMAssertionCreateWithProperties
.Этот ключ может присутствовать в словаре, возвращенном из
IOPMAssertionCopyProperties
.Доступный в OS X v10.7 и позже.
-
kIOPMAssertionRetainCountKey
kIOPMAssertionRetainCountKey
Потенциальная ценность для
kIOPMAssertionTimeoutActionKey
kIOPMAssertionRetainCountKey отражает, что CoreFoundation-стиль сохраняет, рассчитывают на это утверждение. Создание или сохранение утверждения постепенно увеличивают сохранять количество. Выпустите утверждение декременты сохранять количество. Когда сохранить декременты количества для обнуления OS уничтожит объект.
Этот ключ может быть найден в словаре, возвращенном из
IOPMAssertionCopyProperties
.Доступный в OS X v10.7 и позже.
-
kIOPMAssertionTimeoutActionKey
kIOPMAssertionTimeoutActionKey
Указывает действие, чтобы брать истечение срока тайм-аута.
Если Вы также указываете, указание действия тайм-аута только имеет значение
kIOPMAssertionTimeoutKey
Если вызывающая сторона не указывает действие тайм-аута, действие по умолчаниюkIOPMAssertionTimeoutActionTurnOff
Этот ключ может быть указан в словаре, переданном
IOPMAssertionCreateWithProperties
.Этот ключ может присутствовать в словаре, возвращенном из
IOPMAssertionCopyProperties
.Доступный в OS X v10.7 и позже.
-
kIOPMAssertionTimeoutActionLog
kIOPMAssertionTimeoutActionLog
Потенциальная ценность для
kIOPMAssertionTimeoutActionKey
Когда это действие тайм-аута будет указано, PM зарегистрирует событие тайм-аута, но не будет выключать или влиять на установку утверждения всегда.
Доступный в OS X v10.7 и позже.
-
kIOPMAssertionTimeoutActionRelease
kIOPMAssertionTimeoutActionRelease
Потенциальная ценность для
kIOPMAssertionTimeoutActionKey
Когда тайм-аут истечет с этим действием, Управление питанием зарегистрирует событие тайм-аута и выпустит утверждение.
Доступный в OS X v10.7 и позже.
-
kIOPMAssertionTimeoutActionTurnOff
kIOPMAssertionTimeoutActionTurnOff
Потенциальная ценность для
kIOPMAssertionTimeoutActionKey
Когда тайм-аут истечет с этим действием, Управление питанием зарегистрирует событие тайм-аута и установит уровень утверждения в
kIOPMAssertionLevelOff
.Доступный в OS X v10.7 и позже.
-
kIOPMAssertionTimeoutKey
kIOPMAssertionTimeoutKey
kIOPMAssertionTimeoutKey указывает связанное внешнее в секундах, что должно утверждаться это утверждение.
Если Ваше приложение зависает или неспособно выполнить свою задачу утверждения в разумном количестве времени, указывая, что тайм-аут позволяет PM отключать Ваше утверждение, таким образом, система может возобновить нормальное действие. Один раз тайм-аут с
kIOPMAssertionTimeoutActionTurnOff
огни утверждения, уровень будет установлен вkIOPMAssertionTimeoutActionTurnOff
. Утверждение может быть перевооружено путем вызоваIOPMAssertionSetLevel
.Этот ключ может быть указан в словаре, переданном
IOPMAssertionCreateWithProperties
.Этот ключ может присутствовать в словаре, возвращенном из
IOPMAssertionCopyProperties
.Доступный в OS X v10.7 и позже.
-
kIOPMAssertionTypeKey
kIOPMAssertionTypeKey
Ключ CFDictionary для утверждения вводит в информационном словаре утверждения.
Значением для этого ключа будет CFStringRef со значением типа утверждения, указанного во время создания. Если вызывающая сторона указывает осуждаемый тип утверждения, Обратите внимание на то, что OS X может заменить строкой типа утверждения поддержки; в этом случае значение для этого ключа могло отличаться от предоставленного вызывающей стороной типа утверждения.
Доступный в OS X v10.5 и позже.
-
kIOPMAssertionTypeNoDisplaySleep
kIOPMAssertionTypeNoDisplaySleep
Используйте в качестве параметра AssertionType
IOPMAssertionCreate
. Неактивный дисплей не будет спать, когда включено, и следовательно система не будет бездействовать сон.Когда утверждается и установлено выравниваться
kIOPMAssertionLevelOn
, система предпочтет вводить Темное состояние Следа, или уже оставаться по Темному Следу если там, вместо того, чтобы засыпать.Утверждения являются просто предложениями к OS, и OS может только соблюдать их в меру его возможности. В случае низкой мощности или тепловой чрезвычайной ситуации, система может спать так или иначе несмотря на утверждение.
Утверждение должно опубликовать AssertionType в своем словаре свойств утверждения. AssertionType должен быть ключом в словаре свойств со значением CFNumber, содержащего значение kCFNumberIntegerType
kIOPMAssertionLevelOff
илиkIOPMAssertionLevelOn
.Доступный в OS X v10.5 и позже.
-
kIOPMAssertionTypeNoIdleSleep
kIOPMAssertionTypeNoIdleSleep
Передача как параметр AssertionType
IOPMAssertionCreate
. Система не будет бездействовать сон, когда включено (дисплей может спать). Обратите внимание на то, что система может спать по другим причинам.Когда утверждается и установлено выравниваться
kIOPMAssertionLevelOn
, система предпочтет вводить Темное состояние Следа, или уже оставаться по Темному Следу если там, вместо того, чтобы засыпать.Утверждения являются просто предложениями к OS, и OS может только соблюдать их в меру его возможности. В случае низкой мощности или тепловой чрезвычайной ситуации, система может спать так или иначе несмотря на утверждение.
Утверждение должно опубликовать AssertionType в своем словаре свойств утверждения. AssertionType должен быть ключом в словаре свойств со значением CFNumber, содержащего значение kCFNumberIntegerType
kIOPMAssertionLevelOff
илиkIOPMAssertionLevelOn
.Доступный в OS X v10.5 и позже.
-
kIOPMAssertionTypePreventSystemSleep
kIOPMAssertionTypePreventSystemSleep
Препятствует тому, чтобы система спала, и позволяет системе находиться по Темному Следу для произвольной длины времени.
Когда утверждается и установлено выравниваться
kIOPMAssertionLevelOn
, система предпочтет вводить Темное состояние Следа, или уже оставаться по Темному Следу если там, вместо того, чтобы засыпать.Утверждения являются просто предложениями к OS, и OS может только соблюдать их в меру его возможности. В случае низкой мощности или тепловой чрезвычайной ситуации, система может спать так или иначе несмотря на утверждение.
Утверждение должно опубликовать AssertionType в своем словаре свойств утверждения. AssertionType должен быть ключом в словаре свойств со значением CFNumber, содержащего значение kCFNumberIntegerType
kIOPMAssertionLevelOff
илиkIOPMAssertionLevelOn
.Доступный в OS X v10.7 и позже.
-
kIOPMAssertionTypePreventUserIdleDisplaySleep
kIOPMAssertionTypePreventUserIdleDisplaySleep
Препятствует тому, чтобы дисплей потускнел автоматически.
Когда утверждается и установлено выравниваться
kIOPMAssertionLevelOn
, будет препятствовать тому, чтобы дисплей выключил вследствие периода неактивного пользовательского действия. Обратите внимание на то, что дисплей может все еще спать от других причин, как пользователь, закрывающий крышку портативного устройства или сон машины. Если дисплей уже выключен, это утверждение не освещает дисплей. Если дисплей должен быть включен, то рассмотрите вызывающую функциюIOPMAssertionDeclareUserActivity
.В то время как дисплею препятствуют потускнеть, система не может войти в неактивный сон.
Это утверждение не помещает систему в Темный След.
Вызывающая сторона публикует AssertionType в своем словаре свойств утверждения. AssertionType должен быть ключом в словаре свойств со значением CFNumber, содержащего значение kCFNumberIntegerType
kIOPMAssertionLevelOff
илиkIOPMAssertionLevelOn
.Доступный в OS X v10.7 и позже.
-
kIOPMAssertionTypePreventUserIdleSystemSleep
kIOPMAssertionTypePreventUserIdleSystemSleep
Препятствует тому, чтобы система спала автоматически вследствие отсутствия пользовательского действия.
Когда утверждается и установлено выравниваться
kIOPMAssertionLevelOn
, будет препятствовать тому, чтобы система спала вследствие периода неактивного пользовательского действия.Дисплей может потускнеть и бездействовать сон, в то время как kIOPMAssertionTypePreventUserIdleSystemSleep включен, но система может не бездействовать сон.
Система может все еще спать для крышки близко, Меню Apple, низкого уровня заряда или других причин сна.
Это утверждение не помещает систему в Темный След.
Вызывающая сторона публикует AssertionType в своем словаре свойств утверждения. AssertionType должен быть ключом в словаре свойств со значением CFNumber, содержащего значение kCFNumberIntegerType
kIOPMAssertionLevelOff
илиkIOPMAssertionLevelOn
.Доступный в OS X v10.7 и позже.
-
kIOPMCPUPowerNotificationKey
kIOPMCPUPowerNotificationKey
Ключ для регистрации для BSD разрабатывает уведомления на мощности ЦП или тепловом изменении.
Доступный в OS X v10.7 и позже.
-
kIOPMThermalWarningNotificationKey
kIOPMThermalWarningNotificationKey
Ключ для регистрации для BSD разрабатывает уведомления в системе тепловые предупреждения.
Доступный в OS X v10.7 и позже.
-
kIOSystemLoadAdvisoryBatteryLevelKey
kIOSystemLoadAdvisoryBatteryLevelKey
Ключ для словаря, возвращенного IOCopySystemLoadAdvisoryDetailed
Указывает ограничения батареи на текущем уровне SystemLoadAdvisory.
Доступный в OS X v10.6 и позже.
-
kIOSystemLoadAdvisoryCombinedLevelKey
kIOSystemLoadAdvisoryCombinedLevelKey
Ключ для словаря, возвращенного IOCopySystemLoadAdvisoryDetailed
Обеспечивает объединенный уровень на основе UserLevel, BatteryLevel и ThermalLevels; объединенный уровень является минимумом этих уровней. В будущем этот объединенный уровень может представлять новые уровни также. Объединенный уровень идентичен значению, возвращенному IOGetSystemLoadAdvisory ().
Доступный в OS X v10.6 и позже.
-
kIOSystemLoadAdvisoryNotifyName
kIOSystemLoadAdvisoryNotifyName
Когда системное состояние «SystemLoadAdvisory» изменяется, уведомление этим именем стреляет.
Передайте эту строку как параметр для регистрации через, уведомляют (3). Можно запросить состояние SystemLoadAdvisory через notify_get_state (), когда это уведомление стреляет - это более эффективно, чем вызов IOGetSystemLoadAdvisory () и возвращает идентичное объединенное значение SystemLoadAdvisory.
Доступный в OS X v10.6 и позже.
-
kIOSystemLoadAdvisoryThermalLevelKey
kIOSystemLoadAdvisoryThermalLevelKey
Ключ для словаря, возвращенного IOCopySystemLoadAdvisoryDetailed
Указывает тепловые ограничения на текущем уровне SystemLoadAdvisory.
Доступный в OS X v10.6 и позже.
-
kIOSystemLoadAdvisoryUserLevelKey
kIOSystemLoadAdvisoryUserLevelKey
Ключ для словаря, возвращенного IOCopySystemLoadAdvisoryDetailed
Указывает пользовательские ограничения действия на текущем уровне SystemLoadAdvisory.
Доступный в OS X v10.6 и позже.
-
-
Уровень для включенного утверждения, переданного как параметр IOPMAssertionCreate.
Объявление
Objective C
enum { /*! */ kIOPMAssertionLevelOff = 0, /*! */ kIOPMAssertionLevelOn = 255 };
Константы
-
kIOPMAssertionLevelOff
kIOPMAssertionLevelOff
Доступный в OS X v10.5 и позже.
-
kIOPMAssertionLevelOn
kIOPMAssertionLevelOn
Доступный в OS X v10.5 и позже.
Обсуждение
Уровни
-