1//===-- PostMortemProcess.h -------------------------------------*- C++ -*-===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8
9#ifndef LLDB_TARGET_POSTMORTEMPROCESS_H
10#define LLDB_TARGET_POSTMORTEMPROCESS_H
11
12#include "lldb/Target/Process.h"
13
14namespace lldb_private {
15
16/// \class PostMortemProcess
17/// Base class for all processes that don't represent a live process, such as
18/// coredumps or processes traced in the past.
19///
20/// \a lldb_private::Process virtual functions overrides that are common
21/// between these kinds of processes can have default implementations in this
22/// class.
23class PostMortemProcess : public Process {
24 using Process::Process;
25
26public:
27 PostMortemProcess(lldb::TargetSP target_sp, lldb::ListenerSP listener_sp,
28 const FileSpec &core_file)
29 : Process(target_sp, listener_sp), m_core_file(core_file) {}
30
31 bool IsLiveDebugSession() const override { return false; }
32
33 FileSpec GetCoreFile() const override { return m_core_file; }
34
35protected:
36 FileSpec m_core_file;
37};
38
39} // namespace lldb_private
40
41#endif // LLDB_TARGET_POSTMORTEMPROCESS_H
42

source code of lldb/include/lldb/Target/PostMortemProcess.h