using System.Runtime.Versioning; namespace ElectronNET.API.Entities { /// /// Process metrics information. /// /// Up-to-date with Electron API 39.2 public class ProcessMetric { /// /// Gets or sets the process id of the process. /// public int PId { get; set; } /// /// Gets or sets the process type. One of: Browser | Tab | Utility | Zygote | Sandbox helper | GPU | Pepper Plugin | Pepper Plugin Broker | Unknown. /// public string Type { get; set; } /// /// Gets or sets the CPU usage of the process. /// public CPUUsage Cpu { get; set; } /// /// Gets or sets the creation time for this process, represented as the number of milliseconds since the UNIX epoch. Since the pid can be reused after a process dies, use both pid and creationTime to uniquely identify a process. /// public double CreationTime { get; set; } /// /// Gets or sets the memory information for the process. /// public MemoryInfo Memory { get; set; } /// /// Gets or sets a value indicating whether the process is sandboxed on OS level. /// [SupportedOSPlatform("macos")] [SupportedOSPlatform("windows")] public bool Sandboxed { get; set; } /// /// Gets or sets the integrity level. One of: untrusted | low | medium | high | unknown. /// [SupportedOSPlatform("windows")] public string IntegrityLevel { get; set; } /// /// Gets or sets the name of the process. Examples for utility: Audio Service, Content Decryption Module Service, Network Service, Video Capture, etc. /// public string Name { get; set; } /// /// Gets or sets the non-localized name of the process. /// public string ServiceName { get; set; } } }