lintel 0.2.0
Loading...
Searching...
No Matches
ProcessInfo.h
Go to the documentation of this file.
1#pragma once
2
6
7namespace lintel {
13{
14private:
15 std::shared_ptr<Process> m_process;
17 bool m_isRunning;
18 int m_exitCode;
19 bool m_exitCodeValid;
20 std::string m_groupName;
21 std::string m_groupId;
22 std::optional<ProcessResourceData> m_resourceData;
23
24public:
36 ProcessInfo(std::shared_ptr<Process> process,
38 bool isRunning,
39 int exitCode,
40 std::string groupName,
41 std::string groupId,
42 bool exitCodeValid = true,
43 const std::optional<ProcessResourceData> &resourceData = std::nullopt);
44
46 [[nodiscard]] const std::shared_ptr<Process> &getProcess() const;
47
50
52 [[nodiscard]] constexpr bool isRunning() const { return m_isRunning; }
53
55 [[nodiscard]] constexpr int getExitCode() const { return m_exitCode; }
56
58 [[nodiscard]] constexpr bool isExitCodeValid() const { return m_exitCodeValid; }
59
61 [[nodiscard]] std::string getGroupName() const;
62
64 [[nodiscard]] std::string getGroupId() const;
65
67 [[nodiscard]] const std::optional<ProcessResourceData> &getResourceData() const;
68};
69}// namespace lintel
Definition ProcessInfo.h:13
constexpr bool isExitCodeValid() const
Definition ProcessInfo.h:58
constexpr int getExitCode() const
Definition ProcessInfo.h:55
const std::optional< ProcessResourceData > & getResourceData() const
std::string getGroupName() const
constexpr bool isRunning() const
Definition ProcessInfo.h:52
ProcessInfo(std::shared_ptr< Process > process, lintel::ProcessId id, bool isRunning, int exitCode, std::string groupName, std::string groupId, bool exitCodeValid=true, const std::optional< ProcessResourceData > &resourceData=std::nullopt)
lintel::ProcessId getProcessId() const
std::string getGroupId() const
const std::shared_ptr< Process > & getProcess() const
Definition BaseFeature.h:6
std::int64_t ProcessId
Definition Platform.h:33
constexpr std::string_view type_name()
Definition TypeName.h:9