diff options
author | Christian Kandeler <christian.kandeler@digia.com> | 2013-08-08 14:05:11 +0200 |
---|---|---|
committer | Christian Kandeler <christian.kandeler@digia.com> | 2013-08-19 16:13:21 +0200 |
commit | 22599094b0d72e271ba4d8bad2c1587f9ce75c69 (patch) | |
tree | 5ec3ab520f062145bd7005d1357022269f9274c6 /src/plugins/remotelinux/linuxdevice.h | |
parent | dc07796c236d137d4fce2b2ea1117496839ccf08 (diff) |
Introduce the concept of a "device process".
Provide a QProcess-like abstraction that can be used
to implement processes running locally or on a remote
device. Objects of a concrete class implementing the functionality
are created by IDevice objects.
Current implementations are:
- Local execution (QProcess-based), provided via the DesktopDevice.
- Remote execution via SSH.
- A specialized case of the former for remote Linux systems (provided by
LinuxDevice).
The latter is already being used in a number of places. As a result, lots of
code dealing with details such as setting the remote environment could be
moved to a central location. These things are no longer the concern of whoever
is wishing to run a remote process.
Change-Id: I919260ee6e77a020ca47226a4a534e7b8398106f
Reviewed-by: hjk <hjk121@nokiamail.com>
Diffstat (limited to 'src/plugins/remotelinux/linuxdevice.h')
-rw-r--r-- | src/plugins/remotelinux/linuxdevice.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/plugins/remotelinux/linuxdevice.h b/src/plugins/remotelinux/linuxdevice.h index 7e8224a475..85946e735e 100644 --- a/src/plugins/remotelinux/linuxdevice.h +++ b/src/plugins/remotelinux/linuxdevice.h @@ -47,6 +47,7 @@ class REMOTELINUX_EXPORT LinuxDeviceProcessSupport : public ProjectExplorer::Dev public: QString killProcessByPidCommandLine(int pid) const; QString killProcessByNameCommandLine(const QString &filePath) const; + QString interruptProcessByNameCommandLine(const QString &filePath) const; }; class REMOTELINUX_EXPORT LinuxDevice : public ProjectExplorer::IDevice @@ -69,6 +70,8 @@ public: ProjectExplorer::IDevice::Ptr clone() const; ProjectExplorer::DeviceProcessSupport::Ptr processSupport() const; + bool canCreateProcess() const { return true; } + ProjectExplorer::DeviceProcess *createProcess(QObject *parent) const; bool canAutoDetectPorts() const; ProjectExplorer::PortsGatheringMethod::Ptr portsGatheringMethod() const; bool canCreateProcessModel() const { return true; } |