blob: 56cd3d32e856f0e0fb581ef967d5853af48638c6 [file] [log] [blame]
Elly Jonesa44d22d2012-01-05 18:05:56 -05001// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
Elly Jones00e439d2011-12-19 16:59:10 -05002// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
Alex Vakulenko262be3f2014-07-30 15:25:50 -07005#ifndef DEBUGD_SRC_TRACEPATH_TOOL_H_
6#define DEBUGD_SRC_TRACEPATH_TOOL_H_
Elly Jones00e439d2011-12-19 16:59:10 -05007
8#include <map>
9#include <string>
10
Ben Chan657bed82014-09-02 20:40:51 -070011#include <base/macros.h>
Elly Jones00e439d2011-12-19 16:59:10 -050012#include <dbus-c++/dbus.h>
13
Alex Vakulenko262be3f2014-07-30 15:25:50 -070014#include "debugd/src/subprocess_tool.h"
Elly Jones00e439d2011-12-19 16:59:10 -050015
16namespace debugd {
17
Elly Jones00e439d2011-12-19 16:59:10 -050018class TracePathTool : public SubprocessTool {
19 public:
Ben Chan78f89532014-08-29 09:35:09 -070020 TracePathTool() = default;
21 ~TracePathTool() override = default;
Elly Jones00e439d2011-12-19 16:59:10 -050022
23 std::string Start(const DBus::FileDescriptor& outfd,
24 const std::string& destination,
25 const std::map<std::string, DBus::Variant>& options,
Ben Chana0011d82014-05-13 00:19:29 -070026 DBus::Error* error);
Ben Chan657bed82014-09-02 20:40:51 -070027
28 private:
29 DISALLOW_COPY_AND_ASSIGN(TracePathTool);
Elly Jones00e439d2011-12-19 16:59:10 -050030};
31
Ben Chana0011d82014-05-13 00:19:29 -070032} // namespace debugd
Elly Jones00e439d2011-12-19 16:59:10 -050033
Alex Vakulenko262be3f2014-07-30 15:25:50 -070034#endif // DEBUGD_SRC_TRACEPATH_TOOL_H_