LibCore+LibWebView: Move process statistics to LibCore

This will be needed to collect statistics from processes that do not
have anything to do with LibWebView. The ProcessInfo structure must be
virtual to allow callers to add application-specific information.
This commit is contained in:
Timothy Flynn 2024-04-20 23:35:17 -04:00 committed by Andrew Kaster
commit 5dd3b91f0e
Notes: sideshowbarker 2024-07-16 19:42:24 +09:00
17 changed files with 176 additions and 126 deletions

View file

@ -0,0 +1,39 @@
/*
* Copyright (c) 2024, Andrew Kaster <akaster@serenityos.org>
*
* SPDX-License-Identifier: BSD-2-Clause
*/
#pragma once
#include <AK/Types.h>
#include <LibCore/Platform/ProcessInfo.h>
#if defined(AK_OS_MACH)
# include <LibCore/MachPort.h>
#endif
namespace WebView {
enum class ProcessType {
Chrome,
WebContent,
WebWorker,
SQLServer,
RequestServer,
ImageDecoder,
};
struct ProcessInfo : public Core::Platform::ProcessInfo {
using Core::Platform::ProcessInfo::ProcessInfo;
ProcessInfo(ProcessType type, pid_t pid)
: Core::Platform::ProcessInfo(pid)
, type(type)
{
}
ProcessType type { ProcessType::WebContent };
};
}