diff options
Diffstat (limited to 'src/localdevice/qlocaldevice.cpp')
-rw-r--r-- | src/localdevice/qlocaldevice.cpp | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/src/localdevice/qlocaldevice.cpp b/src/localdevice/qlocaldevice.cpp new file mode 100644 index 0000000..86893fd --- /dev/null +++ b/src/localdevice/qlocaldevice.cpp @@ -0,0 +1,57 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Digia Plc +** All rights reserved. +** For any questions to Digia, please use the contact form at +** http://www.qt.io +** +** This file is part of Qt Enterprise Embedded. +** +** Licensees holding valid Qt Enterprise licenses may use this file in +** accordance with the Qt Enterprise License Agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and Digia. +** +** If you have questions regarding the use of this file, please use +** the contact form at http://www.qt.io +** +****************************************************************************/ +#include "qlocaldevice.h" +#include <unistd.h> +#include <sys/reboot.h> + + +QLocalDevice::QLocalDevice(QObject *parent) + : QObject(parent) +{ +} + +QLocalDevice::~QLocalDevice() +{ +} + +/*! + * Reboots the system. Does not return. + * + * \sa powerOff() + */ +void QLocalDevice::reboot() +{ + sync(); + ::reboot(RB_AUTOBOOT); + qWarning("reboot returned"); +} + + +/*! + * Shuts down the system. Does not return. + * + * \sa reboot() + */ +void QLocalDevice::powerOff() +{ + sync(); + ::reboot(RB_POWER_OFF); + qWarning("powerOff returned"); +} + |