ringbuffer and statistics

This commit is contained in:
meelstorm
2025-07-18 10:13:46 +02:00
parent d3cb790bd9
commit 40d74d6da6
41 changed files with 1188 additions and 180 deletions

View File

@@ -1,10 +1,9 @@
using Inspectron.Settings;
using Inspectron.Settings.Attributes;
using System.ComponentModel;
using System.Security.Cryptography.X509Certificates;
using Lindt.Colorballs.Duo.Utils;
using VisionBuilder.UI.Common;
namespace Lindt.Colorballs.Duo.Utils;
namespace VisionBuilder.UI.Ringbuffer;
public class VisionBuilderRingbufferSettings : ISettings
{
@@ -23,48 +22,25 @@ public class VisionBuilderRingbufferSettings : ISettings
[SettingDescription(
@"
Specifies directory, in which MaxBad and MaxGood are applied.
You can use the following system variables:
$RECIPE_NAME - name of the current recipe
$DEFECT_NAME - name of the current defect(for bad images)
$CAMERA_NAME - name of the camera
$HOUR - hour of the image
$MINUTE - minute of the image
$SECOND - second of the image
$MS - milliseconds of the image
$DAY - day of the image
$MONTH - month of the image
$YEAR - year of the image
$SS_HOUR - hour of the session start
$SS_MINUTE - minute of the session start
$SS_SECOND - second of the session start
$SS_DAY - day of the session start
$SS_MONTH - month of the session start
$SS_YEAR - year of the session start
"
"+ PathSettingsUtils.INSTUCTIONS
)]
[SettingPreview(typeof(VisionBuilderRingbufferSettings), nameof(ImagesPathTemplatePreview))]
public string Root { get; set; } = @"..\Data\Ringbuffer\$SS_MONTH $SS_YEAR";
public string Root { get; set; } = @"..\Data\Ringbuffer\$SS_MONTH_NAME $SS_YEAR";
[SettingDescriptionAttribute("Specifies directory, relative to the Root")]
[SettingDescription("Specifies directory, relative to the Root")]
[SettingPreview(typeof(VisionBuilderRingbufferSettings), nameof(ImagesPathTemplatePreview))]
public string GoodImagesPathTemplate { get; set; } = @"\$RECIPE_NAME";
[SettingDescriptionAttribute("Specifies directory, relative to the Root")]
[SettingDescription("Specifies directory, relative to the Root")]
[SettingPreview(typeof(VisionBuilderRingbufferSettings),nameof(ImagesPathTemplatePreview))]
public string BadImagesPathTemplate { get; set; } =
@"\$RECIPE_NAME\$DEFECT_NAME";
[SettingPreview(typeof(VisionBuilderRingbufferSettings), nameof(ImagesPathTemplatePreview))]
public string FilenameTemplate { get; set; } = "$YEAR-$MONTH-$DAY $HOUR-$MINUTE-$SECOND $MS";
public string FilenameTemplate { get; set; } = "$YEAR-$MONTH_NUM-$DAY $HOUR-$MINUTE-$SECOND $MS";
public void RegisterSettings(InspectronSettings settings)