view ui/processhelp.h @ 1220:60927efa48cc

(issue128) Add manifest for the correct execution level.
author Andre Heinecke <andre.heinecke@intevation.de>
date Wed, 24 Sep 2014 11:42:29 +0200
parents 2a1206932f53
children 2a1aa9df8f11
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.
 *
 * Parts of this code (especially windows) are based on kpimutils processes.cpp
 * available under LGPL 2.1 or later.
 */
#ifndef PROCESSHELP_H
#define PROCESSHELP_H

#include <QList>
#include <QString>

/**
 * @file processhelp.h 
 * @brief Static helper functions for process handling
 */

namespace ProcessHelp
{
/**
* @brief look up process id's for a processName
*
* Looks up processes run by the current user.
*
* @param[in] processName the name of the process to look for
* @returns a list of pids that match this process. May be empty
*/
const QList<int> getProcessesIdForName(const QString &processName);

/**
* @brief check if another process with the same name exists
*
* Under GNU/Linux this only works for processes that have a
* processName.pid file in QStandardPaths::DataLocation.
*
* @param[in] processName name of the process to look for.
*
* @returns true if one or more processes (other than the current process) exist
*/
bool otherProcessesExist(const QString &processName);

/**
* @brief Activates the window for first found process
* @param [in] executableName executableName (without path and .exe extension)
*/
void activateWindowForProcess(const QString &executableName);

/**
* @brief Clean up internaly used infrastructure like pid/lock files.
*/
 void cleanUp(void);
}

#endif // PROCESSHELP_H

http://wald.intevation.org/projects/trustbridge/