blob: 898f02d4cfea6ec46b07665f77c8f6c80f863880 [file] [log] [blame]
Elly Jonesa44d22d2012-01-05 18:05:56 -05001// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
Elly Jones0c016cc2011-12-19 16:19:22 -05002// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef SUBPROCESS_TOOL_H
6#define SUBPROCESS_TOOL_H
7
8#include <map>
9#include <string>
10
11#include <base/basictypes.h>
12#include <dbus-c++/dbus.h>
13
14namespace debugd {
15
16class ProcessWithId;
17
18class SubprocessTool {
19 public:
20 SubprocessTool();
21 virtual ~SubprocessTool();
22
Elly Fong-Jonesd9a16cd2012-11-12 16:09:49 -050023 virtual ProcessWithId* CreateProcess(bool sandbox);
Elly Jones0c016cc2011-12-19 16:19:22 -050024 virtual void Stop(const std::string& handle, DBus::Error& error);
25 private:
26 std::map<std::string, ProcessWithId*> processes_;
27 DISALLOW_COPY_AND_ASSIGN(SubprocessTool);
28};
29
30}; // namespace debugd
31
32#endif // SUBPROCESS_TOOL_H