blob: b6f6a2e899cb145892ff941b06c549781fdbc56f [file] [log] [blame]
Elly Jonesa44d22d2012-01-05 18:05:56 -05001// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
Elly Jonese7cb5b32011-12-01 14:18:32 -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 PROCESS_WITH_ID_H
6#define PROCESS_WITH_ID_H
7
8#include <chromeos/process.h>
9
10namespace debugd {
11
12// @brief Represents a process with an immutable ID.
13//
14// The ID is random, unguessable, and may be given to other processes. It is a
15// null-terminated ASCII string.
16class ProcessWithId : public chromeos::ProcessImpl {
17 public:
18 ProcessWithId();
19 bool Init();
20 std::string id() const { return id_; }
21 private:
22 bool generate_id();
23 std::string id_;
24};
25
26}; // namespace debugd
27
28#endif // PROCESS_WITH_ID_H