Mike Phares 73de1070b8 SegmentB, personKey,
personKeyFormatted and Sorting
2022-09-01 01:18:08 -07:00

49 lines
1.4 KiB
C#

using System.Text.Json;
using System.Text.Json.Serialization;
namespace View_by_Distance.Shared.Models;
public class Sorting : Properties.ISorting
{
public double? Confidence { init; get; }
public double? Distance { init; get; }
public int? FaceEncoding { init; get; }
public int Id { init; get; }
public int? NormalizedPixelPercentage { init; get; }
[JsonConstructor]
public Sorting(double? confidence, double? distance, int? faceEncoding, int id, int? normalizedPixelPercentage)
{
Confidence = confidence;
Distance = distance;
FaceEncoding = faceEncoding;
Id = id;
NormalizedPixelPercentage = normalizedPixelPercentage;
}
public Sorting(double? confidence, int id, int? normalizedPixelPercentage)
{
Confidence = confidence;
Distance = null;
FaceEncoding = int.MaxValue;
Id = id;
NormalizedPixelPercentage = normalizedPixelPercentage;
}
public override string ToString()
{
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
return result;
}
public Sorting(Sorting sorting, double? distance)
{
Confidence = sorting.Confidence;
Distance = distance;
FaceEncoding = null;
Id = sorting.Id;
NormalizedPixelPercentage = sorting.NormalizedPixelPercentage;
}
}