plugin system docs

custom buttons for plugins
calibration functions for Leeform
This commit is contained in:
EugeneTes
2026-03-30 16:15:47 +02:00
parent a1838cafeb
commit 4bd117af47
76 changed files with 4521 additions and 59 deletions

View File

@@ -0,0 +1,38 @@
using Inspectron.Settings;
using VisionBuilder.UI.Common;
namespace Hawkeye.VisionBuilder.UI.Sources.Raspberry.Libcamera;
public class CaptureSettings : ISettings
{
public string CameraName { get; }
public CaptureSettings(string cameraName)
{
CameraName = cameraName;
}
public int Width { get; set; } = 2028;
public int Height { get; set; } = 1520;
public int ShutterSpeed { get; set; } = 10000;
public int Framerate { get; set; } = 2;
public double AwbGainRed { get; set; } = 3.86;
public double AwbGainBlue { get; set; } = 1.46;
public string BuildArguments()
{
return $"--codec mjpeg -t0 --width {Width} --height {Height} " +
$"--shutter {ShutterSpeed} --framerate {Framerate} " +
$"--awbgains {AwbGainRed:F2},{AwbGainBlue:F2} --nopreview -o -";
}
public void RegisterSettings(InspectronSettings settings)
{
settings.RegisterSimple(this, () => Width, CameraName + "/Sources/Libcamera", nameof(Width));
settings.RegisterSimple(this, () => Height, CameraName + "/Sources/Libcamera", nameof(Height));
settings.RegisterSimple(this, () => ShutterSpeed, CameraName + "/Sources/Libcamera", nameof(ShutterSpeed));
settings.RegisterSimple(this, () => Framerate, CameraName + "/Sources/Libcamera", nameof(Framerate));
settings.RegisterSimple(this, () => AwbGainRed, CameraName + "/Sources/Libcamera", nameof(AwbGainRed));
settings.RegisterSimple(this, () => AwbGainBlue, CameraName + "/Sources/Libcamera", nameof(AwbGainBlue));
}
}