public Stream Scan() { var ms = new MemoryStream(); using var reader = File.OpenText(_path); while (reader.ReadLine() is { Length : > 0 } line) { MonitorChanged?.Invoke(this, new MonitorChangedEventArgs { Data = CollectMonitorData() }); ms.Write(Encoding.Default.GetBytes(line)); } ms.Seek(0, SeekOrigin.Begin); return(ms); }
public static extern bool RegisterMonitorChangedCallback([MarshalAs(UnmanagedType.FunctionPtr)] MonitorChanged callback);
private void Monitor_Modified(object sender, EventArgs e) { MonitorChanged?.Invoke(this, new RawMonitorEventArgs(Monitor)); }