Mercurial > trustbridge
view ui/taskscheduler.h @ 1011:9c4543128666
(issue94) Move install / remove labels into ctor and translate them.
author | Andre Heinecke <andre.heinecke@intevation.de> |
---|---|
date | Tue, 02 Sep 2014 14:43:48 +0200 |
parents | 8de162b91a22 |
children | 78798d3af8f0 |
line wrap: on
line source
/* Copyright (C) 2014 by Bundesamt für Sicherheit in der Informationstechnik * Software engineering by Intevation GmbH * * This file is Free Software under the GNU GPL (v>=2) * and comes with ABSOLUTELY NO WARRANTY! * See LICENSE.txt for details. */ #ifndef TASKSCHEDULER_H #define TASKSCHEDULER_H /** * @file Interface to the Task Scheduler API * @brief Provides a Qt / C++ API to work with the windows task scheduler */ #include <QString> #include <QTime> #ifndef INITGUID #define INITGUID #include <mstask.h> #undef INITGUID #endif //struct ITaskScheduler; class TaskScheduler { public: /** @brief Initializes the COM objects */ TaskScheduler(); /**@brief Uninitializes the COM objects */ ~TaskScheduler(); /** @brief create a task that is executed daily if the user is logged in. * * @param[in] executable Absolute path to the executable to run. * @param[in] args the arguements to pass to the executable. * @param[in] startTime the preferred time to start the task. * * @returns True on success, false on error */ bool createDailyTask(const QString &executable, const QString &args, const QTime &startTime); /** @brief check if the Initialization was successful */ bool isInitialized() {return mInitialized;} private: bool mInitialized; ITaskScheduler *mTaskScheduler; }; #endif // TASKSCHEDULER_H