3 #include <IOKit/pwr_mgt/IOPMLib.h>
7 IOPMAssertionID displayAssertionID = 0;
8 IOReturn displayRes = 0;
10 IOPMAssertionID systemAssertionID = 0;
11 IOReturn systemRes = 0;
15 bool Idle::preventDisplaySleep(const QString &reason) {
16 displayRes = IOPMAssertionCreateWithName(kIOPMAssertionTypePreventUserIdleDisplaySleep,
17 kIOPMAssertionLevelOn, reason.toCFString(),
19 return displayRes == kIOReturnSuccess;
22 bool Idle::allowDisplaySleep() {
23 displayRes = IOPMAssertionRelease(displayAssertionID);
24 return displayRes == kIOReturnSuccess;
27 QString Idle::displayErrorMessage() {
29 // return QString::fromUtf8(IOService::stringFromReturn(displayRes));
32 bool Idle::preventSystemSleep(const QString &reason) {
33 systemRes = IOPMAssertionCreateWithName(kIOPMAssertionTypePreventUserIdleSystemSleep,
34 kIOPMAssertionLevelOn, reason.toCFString(),
36 return systemRes == kIOReturnSuccess;
39 bool Idle::allowSystemSleep() {
40 systemRes = IOPMAssertionRelease(systemAssertionID);
41 return systemRes == kIOReturnSuccess;
44 QString Idle::systemErrorMessage() {
46 // return QString::fromUtf8(IOService::stringFromReturn(systemRes));