Init
This commit is contained in:
5
Shared/.vscode/settings.json
vendored
Normal file
5
Shared/.vscode/settings.json
vendored
Normal file
@ -0,0 +1,5 @@
|
||||
{
|
||||
"cSpell.words": [
|
||||
"Phares"
|
||||
]
|
||||
}
|
0
Shared/Models/%ClassName%.cs .ai
Normal file
0
Shared/Models/%ClassName%.cs .ai
Normal file
27
Shared/Models/Console.cs
Normal file
27
Shared/Models/Console.cs
Normal file
@ -0,0 +1,27 @@
|
||||
using System.Text.Json;
|
||||
using View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
namespace View_by_Distance.Shared.Models;
|
||||
|
||||
public class Console : Properties.IConsole, IConsole
|
||||
{
|
||||
|
||||
ConsoleKey IConsole.ReadKey()
|
||||
{
|
||||
ConsoleKey result = System.Console.ReadKey().Key;
|
||||
return result;
|
||||
}
|
||||
|
||||
string? IConsole.ReadLine()
|
||||
{
|
||||
string? result = System.Console.ReadLine();
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
|
||||
return result;
|
||||
}
|
||||
|
||||
}
|
46
Shared/Models/DirectoryFileSystem.cs
Normal file
46
Shared/Models/DirectoryFileSystem.cs
Normal file
@ -0,0 +1,46 @@
|
||||
using System.Text.Json;
|
||||
using System.Text.Json.Serialization;
|
||||
using View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
namespace View_by_Distance.Shared.Models;
|
||||
|
||||
public class DirectoryFileSystem : Models.FileSystem, Properties.IDirectoryFileSystem, IDirectoryFileSystem
|
||||
{
|
||||
|
||||
// protected new string _ClassName;
|
||||
// protected new string _DataDisplayFileName;
|
||||
// protected new string _DataFullFileName;
|
||||
// protected new string _Display;
|
||||
// protected new DateTime _LastModified;
|
||||
// public new string ClassName => _ClassName;
|
||||
// public new string DataDisplayFileName => _DataDisplayFileName;
|
||||
// public new string DataFullFileName => _DataFullFileName;
|
||||
// public new string Display => _Display;
|
||||
// public new DateTime LastModified => _LastModified;
|
||||
|
||||
[JsonConstructor]
|
||||
public DirectoryFileSystem(string className, string dataDisplayFileName, string dataFullFileName, string display, DateTime lastModified) : base(className, dataDisplayFileName, dataFullFileName, display, lastModified)
|
||||
{
|
||||
_ClassName = className;
|
||||
_DataDisplayFileName = dataDisplayFileName;
|
||||
_DataFullFileName = dataFullFileName;
|
||||
_Display = display;
|
||||
_LastModified = lastModified;
|
||||
}
|
||||
|
||||
internal DirectoryFileSystem(DirectoryInfo directoryInfo) : base(string.Empty, string.Empty, string.Empty, string.Empty, DateTime.MinValue)
|
||||
{
|
||||
_ClassName = "directory";
|
||||
_DataDisplayFileName = directoryInfo.Name;
|
||||
_DataFullFileName = directoryInfo.FullName;
|
||||
_Display = directoryInfo.Name;
|
||||
_LastModified = directoryInfo.LastWriteTime;
|
||||
}
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
|
||||
return result;
|
||||
}
|
||||
|
||||
}
|
57
Shared/Models/Face.cs
Normal file
57
Shared/Models/Face.cs
Normal file
@ -0,0 +1,57 @@
|
||||
using System.Text.Json;
|
||||
using System.Text.Json.Serialization;
|
||||
using View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
namespace View_by_Distance.Shared.Models;
|
||||
|
||||
public class Face : Properties.IFace, IFace
|
||||
{
|
||||
|
||||
protected double? _Α;
|
||||
protected DateTime _DateTime;
|
||||
protected Models.FaceEncoding _FaceEncoding;
|
||||
protected Dictionary<string, Models.FacePoint[]> _FaceLandmarks;
|
||||
protected Models.OutputResolution _OutputResolution;
|
||||
protected Models.Location _Location;
|
||||
protected int? _LocationIndex;
|
||||
protected bool _Populated;
|
||||
protected string _RelativePath;
|
||||
public double? α => _Α;
|
||||
public DateTime DateTime => _DateTime;
|
||||
public Models.FaceEncoding FaceEncoding => _FaceEncoding;
|
||||
public Dictionary<string, Models.FacePoint[]> FaceLandmarks => _FaceLandmarks;
|
||||
public Models.OutputResolution OutputResolution => _OutputResolution;
|
||||
public Models.Location Location => _Location;
|
||||
public int? LocationIndex => _LocationIndex;
|
||||
public bool Populated => _Populated;
|
||||
public string RelativePath => _RelativePath;
|
||||
|
||||
[JsonConstructor]
|
||||
public Face(double? α, DateTime dateTime, View_by_Distance.Shared.Models.FaceEncoding faceEncoding, Dictionary<string, View_by_Distance.Shared.Models.FacePoint[]> faceLandmarks, Models.OutputResolution outputResolution, View_by_Distance.Shared.Models.Location location, int? locationIndex, bool populated, string relativePath)
|
||||
{
|
||||
_Α = α;
|
||||
_DateTime = dateTime;
|
||||
_FaceEncoding = faceEncoding;
|
||||
_FaceLandmarks = faceLandmarks;
|
||||
_Location = location;
|
||||
_LocationIndex = locationIndex;
|
||||
_OutputResolution = outputResolution;
|
||||
_Populated = populated;
|
||||
_RelativePath = relativePath;
|
||||
}
|
||||
|
||||
double Stateless.Methods.IFace.TestStatic_Getα(int x1, int x2, int y1, int y2) => throw new NotImplementedException();
|
||||
|
||||
string Stateless.Methods.IFace.TestStatic_GetJson(string jsonFileFullName) => throw new NotImplementedException();
|
||||
|
||||
Face Stateless.Methods.IFace.TestStatic_GetFace(string jsonFileFullName) => throw new NotImplementedException();
|
||||
|
||||
Face[] Stateless.Methods.IFace.TestStatic_GetFaces(string jsonFileFullName) => throw new NotImplementedException();
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
|
||||
return result;
|
||||
}
|
||||
|
||||
}
|
28
Shared/Models/FaceEncoding.cs
Normal file
28
Shared/Models/FaceEncoding.cs
Normal file
@ -0,0 +1,28 @@
|
||||
using System.Text.Json;
|
||||
using System.Text.Json.Serialization;
|
||||
using View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
namespace View_by_Distance.Shared.Models;
|
||||
|
||||
public class FaceEncoding : Properties.IFaceEncoding, IFaceEncoding
|
||||
{
|
||||
|
||||
protected double[] _RawEncoding;
|
||||
protected int _Size;
|
||||
public double[] RawEncoding => _RawEncoding;
|
||||
public int Size => _Size;
|
||||
|
||||
[JsonConstructor]
|
||||
public FaceEncoding(double[] rawEncoding, int size)
|
||||
{
|
||||
_RawEncoding = rawEncoding;
|
||||
_Size = size;
|
||||
}
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
|
||||
return result;
|
||||
}
|
||||
|
||||
}
|
226
Shared/Models/FaceFileSystem.cs
Normal file
226
Shared/Models/FaceFileSystem.cs
Normal file
@ -0,0 +1,226 @@
|
||||
using System.Text.Json;
|
||||
using System.Text.Json.Serialization;
|
||||
using View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
namespace View_by_Distance.Shared.Models;
|
||||
|
||||
public class FaceFileSystem : Models.FileSystem, Properties.IFaceFileSystem, IFaceFileSystem
|
||||
{
|
||||
|
||||
// protected new string _ClassName;
|
||||
protected string _Confidence;
|
||||
// protected new string _DataDisplayFileName;
|
||||
// protected new string _DataFullFileName;
|
||||
// protected new string _Display;
|
||||
protected int? _FaceBottom;
|
||||
protected string _FaceFullFileName;
|
||||
protected int? _FaceHeight;
|
||||
protected int? _FaceLeft;
|
||||
protected string _FaceRelativePath;
|
||||
protected int? _FaceRight;
|
||||
protected int? _FaceTop;
|
||||
protected int? _FaceWidth;
|
||||
protected int _ImageHeight;
|
||||
protected int _ImageWidth;
|
||||
// protected new DateTime _LastModified;
|
||||
protected string _LocationDisplayIndex;
|
||||
protected int? _LocationIndex;
|
||||
protected bool? _Populated;
|
||||
protected string _RelativePath;
|
||||
protected string _SourceFullFileName;
|
||||
protected string _SourceRelativePath;
|
||||
protected long? _SourceSize;
|
||||
// public new string ClassName => _ClassName;
|
||||
public string Confidence => _Confidence;
|
||||
// public new string DataDisplayFileName => _DataDisplayFileName;
|
||||
// public new string DataFullFileName => _DataFullFileName;
|
||||
// public new string Display => _Display;
|
||||
public int? FaceBottom => _FaceBottom;
|
||||
public string FaceFullFileName => _FaceFullFileName;
|
||||
public int? FaceHeight => _FaceHeight;
|
||||
public int? FaceLeft => _FaceLeft;
|
||||
public string FaceRelativePath => _FaceRelativePath;
|
||||
public int? FaceRight => _FaceRight;
|
||||
public int? FaceTop => _FaceTop;
|
||||
public int? FaceWidth => _FaceWidth;
|
||||
public int ImageHeight => _ImageHeight;
|
||||
public int ImageWidth => _ImageWidth;
|
||||
// public new DateTime LastModified => _LastModified;
|
||||
public string LocationDisplayIndex => _LocationDisplayIndex;
|
||||
public int? LocationIndex => _LocationIndex;
|
||||
public bool? Populated => _Populated;
|
||||
public string RelativePath => _RelativePath;
|
||||
public string SourceFullFileName => _SourceFullFileName;
|
||||
public string SourceRelativePath => _SourceRelativePath;
|
||||
public long? SourceSize => _SourceSize;
|
||||
|
||||
[JsonConstructor]
|
||||
public FaceFileSystem(string className, string confidence, string dataDisplayFileName, string dataFullFileName, string display, int? faceBottom, string faceFullFileName, int? faceHeight, int? faceLeft, string faceRelativePath, int? faceRight, int? faceTop, int? faceWidth, int imageHeight, int imageWidth, DateTime lastModified, string locationDisplayIndex, int? locationIndex, bool? populated, string relativePath, string sourceFullFileName, string sourceRelativePath, long? sourceSize) : base(className, dataDisplayFileName, dataFullFileName, display, lastModified)
|
||||
{
|
||||
_Confidence = confidence;
|
||||
_FaceBottom = faceBottom;
|
||||
_FaceFullFileName = faceFullFileName;
|
||||
_FaceHeight = faceHeight;
|
||||
_FaceLeft = faceLeft;
|
||||
_FaceRelativePath = faceRelativePath;
|
||||
_FaceRight = faceRight;
|
||||
_FaceTop = faceTop;
|
||||
_FaceWidth = faceWidth;
|
||||
_ImageHeight = imageHeight;
|
||||
_ImageWidth = imageWidth;
|
||||
_LocationDisplayIndex = locationDisplayIndex;
|
||||
_LocationIndex = locationIndex;
|
||||
_Populated = populated;
|
||||
_RelativePath = relativePath;
|
||||
_SourceFullFileName = sourceFullFileName;
|
||||
_SourceRelativePath = sourceRelativePath;
|
||||
_SourceSize = sourceSize;
|
||||
}
|
||||
|
||||
internal FaceFileSystem(string requestPath, int rootResultsDirectoryAbsoluteUriLength, string cResizeContent, string dFacesContentDirectory, string dataFullFileName, Face face) : base(string.Empty, string.Empty, dataFullFileName, string.Empty, DateTime.MinValue)
|
||||
{
|
||||
string confidence;
|
||||
int? faceBottom;
|
||||
int? faceHeight;
|
||||
int? faceLeft;
|
||||
int? faceRight;
|
||||
int? faceTop;
|
||||
int? faceWidth;
|
||||
int imageHeight;
|
||||
int imageWidth;
|
||||
string locationDisplayIndex;
|
||||
int locationIndex;
|
||||
long sourceSize;
|
||||
if (face.LocationIndex is null)
|
||||
{
|
||||
locationIndex = 0;
|
||||
locationDisplayIndex = "01";
|
||||
}
|
||||
else
|
||||
{
|
||||
locationIndex = face.LocationIndex.Value;
|
||||
locationDisplayIndex = (face.LocationIndex.Value + 1).ToString("00");
|
||||
}
|
||||
if (face.Location is null)
|
||||
{
|
||||
faceTop = null;
|
||||
faceLeft = null;
|
||||
faceRight = null;
|
||||
faceWidth = null;
|
||||
faceBottom = null;
|
||||
faceHeight = null;
|
||||
confidence = "0";
|
||||
}
|
||||
else
|
||||
{
|
||||
faceTop = face.Location.Top;
|
||||
faceLeft = face.Location.Left;
|
||||
faceRight = face.Location.Right;
|
||||
faceBottom = face.Location.Bottom;
|
||||
faceWidth = face.Location.Right - face.Location.Left;
|
||||
faceHeight = face.Location.Bottom - face.Location.Top;
|
||||
confidence = face.Location.Confidence.ToString("00.000");
|
||||
}
|
||||
string? directoryName = Path.GetDirectoryName(face.RelativePath);
|
||||
string fileNameWithoutExtension = Path.GetFileNameWithoutExtension(face.RelativePath);
|
||||
string sourceFullFileName = string.Concat(cResizeContent, face.RelativePath);
|
||||
if (directoryName is null)
|
||||
throw new Exception();
|
||||
string faceFullFileName = string.Concat(dFacesContentDirectory, Path.Combine(directoryName, fileNameWithoutExtension, $"{locationIndex} - {fileNameWithoutExtension}.png"));
|
||||
string faceRelativePath = string.Concat(requestPath, new Uri(faceFullFileName).AbsoluteUri[rootResultsDirectoryAbsoluteUriLength..]);
|
||||
string sourceRelativePath = string.Concat(requestPath, new Uri(sourceFullFileName).AbsoluteUri[rootResultsDirectoryAbsoluteUriLength..]);
|
||||
FileInfo fileInfo = new(sourceFullFileName);
|
||||
if (face.Populated && !File.Exists(faceFullFileName))
|
||||
Stateless.Methods.IFaceFileSystem.SearchForMissingFile(faceFullFileName, fileInfo: new FileInfo(string.Empty), dataFullFileName);
|
||||
if (!fileInfo.Exists)
|
||||
{
|
||||
sourceSize = 0;
|
||||
if (face.OutputResolution is null)
|
||||
{
|
||||
imageWidth = 0;
|
||||
imageHeight = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
imageWidth = face.OutputResolution.Width;
|
||||
imageHeight = face.OutputResolution.Height;
|
||||
}
|
||||
Stateless.Methods.IFaceFileSystem.SearchForMissingFile(fileInfo.FullName, fileInfo, dataFullFileName);
|
||||
}
|
||||
else
|
||||
{
|
||||
sourceSize = fileInfo.Length;
|
||||
if (face.OutputResolution is not null)
|
||||
{
|
||||
imageWidth = face.OutputResolution.Width;
|
||||
imageHeight = face.OutputResolution.Height;
|
||||
}
|
||||
else
|
||||
{
|
||||
System.Drawing.Size size = Stateless.Methods.ImageHelper.GetDimensions(fileInfo.FullName, faceRight, faceBottom);
|
||||
imageWidth = size.Width;
|
||||
imageHeight = size.Height;
|
||||
}
|
||||
}
|
||||
_ClassName = "file";
|
||||
_FaceBottom = faceBottom;
|
||||
_Confidence = confidence;
|
||||
_DataDisplayFileName = Path.GetFileName(dataFullFileName);
|
||||
_DataFullFileName = dataFullFileName;
|
||||
_Display = string.Concat(locationDisplayIndex, " - ", Path.GetFileName(sourceFullFileName));
|
||||
_FaceFullFileName = faceFullFileName;
|
||||
_FaceRelativePath = faceRelativePath;
|
||||
_FaceHeight = faceHeight;
|
||||
_ImageHeight = imageHeight;
|
||||
_LastModified = face.DateTime;
|
||||
_FaceLeft = faceLeft;
|
||||
_LocationDisplayIndex = locationDisplayIndex;
|
||||
_LocationIndex = face.LocationIndex;
|
||||
_Populated = face.Populated;
|
||||
_RelativePath = string.Empty;
|
||||
_FaceRight = faceRight;
|
||||
_SourceFullFileName = sourceFullFileName;
|
||||
_SourceRelativePath = sourceRelativePath;
|
||||
_SourceSize = sourceSize;
|
||||
_FaceTop = faceTop;
|
||||
_FaceWidth = faceWidth;
|
||||
_ImageWidth = imageWidth;
|
||||
}
|
||||
|
||||
string IFileSystem.GetDate()
|
||||
{
|
||||
string result = _LastModified.ToString("MM/dd/yyyy hh:mm:ss tt");
|
||||
return result;
|
||||
}
|
||||
|
||||
string IFaceFileSystem.GetSize()
|
||||
{
|
||||
string result;
|
||||
if (_SourceSize is null)
|
||||
result = string.Empty;
|
||||
else
|
||||
{
|
||||
int order = 0;
|
||||
double len = _SourceSize.Value;
|
||||
string[] sizes = { "B", "KB", "MB", "GB", "TB" };
|
||||
while (len >= 1024 && order < sizes.Length - 1)
|
||||
{
|
||||
order++;
|
||||
len /= 1024;
|
||||
}
|
||||
result = String.Format("{0:0.##} {1}", len, sizes[order]);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
void Stateless.Methods.IFaceFileSystem.TestStatic_SearchForMissingFile(string fullFileName, FileInfo fileInfo, string dataFullFileName) => throw new NotImplementedException();
|
||||
|
||||
FaceFileSystem[][] Stateless.Methods.IFaceFileSystem.TestStatic_GetFaceFileSystemCollection(string requestPath, string rootResultsDirectory, (string RootResultsDirectoryAbsoluteUri, string C_ResizeContentDirectory, string D_FacesContentDirectory, string E_DistanceCollectionDirectory) tuple, string selectedFileFullName) => throw new NotImplementedException();
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
|
||||
return result;
|
||||
}
|
||||
|
||||
}
|
31
Shared/Models/FacePoint.cs
Normal file
31
Shared/Models/FacePoint.cs
Normal file
@ -0,0 +1,31 @@
|
||||
using System.Text.Json;
|
||||
using System.Text.Json.Serialization;
|
||||
using View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
namespace View_by_Distance.Shared.Models;
|
||||
|
||||
public class FacePoint : Properties.IFacePoint, IFacePoint
|
||||
{
|
||||
|
||||
protected int _Index;
|
||||
protected int _X;
|
||||
protected int _Y;
|
||||
public int Index => _Index;
|
||||
public int X => _X;
|
||||
public int Y => _Y;
|
||||
|
||||
[JsonConstructor]
|
||||
public FacePoint(int index, int x, int y)
|
||||
{
|
||||
_Index = index;
|
||||
_X = x;
|
||||
_Y = y;
|
||||
}
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
|
||||
return result;
|
||||
}
|
||||
|
||||
}
|
54
Shared/Models/FileSystem.cs
Normal file
54
Shared/Models/FileSystem.cs
Normal file
@ -0,0 +1,54 @@
|
||||
using System.Text.Json;
|
||||
using System.Text.Json.Serialization;
|
||||
using View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
namespace View_by_Distance.Shared.Models;
|
||||
|
||||
public class FileSystem : Properties.IFileSystem, IFileSystem
|
||||
{
|
||||
|
||||
protected string _ClassName;
|
||||
protected string _DataDisplayFileName;
|
||||
protected string _DataFullFileName;
|
||||
protected string _Display;
|
||||
protected DateTime _LastModified;
|
||||
public string ClassName => _ClassName;
|
||||
public string DataDisplayFileName => _DataDisplayFileName;
|
||||
public string DataFullFileName => _DataFullFileName;
|
||||
public string Display => _Display;
|
||||
public DateTime LastModified => _LastModified;
|
||||
|
||||
[JsonConstructor]
|
||||
public FileSystem(string className, string dataDisplayFileName, string dataFullFileName, string display, DateTime lastModified)
|
||||
{
|
||||
_ClassName = className;
|
||||
_DataDisplayFileName = dataDisplayFileName;
|
||||
_DataFullFileName = dataFullFileName;
|
||||
_Display = display;
|
||||
_LastModified = lastModified;
|
||||
}
|
||||
|
||||
public FileSystem(string dataFullFileName, Exception ex)
|
||||
{
|
||||
_ClassName = string.Empty;
|
||||
_DataDisplayFileName = string.Empty;
|
||||
_DataFullFileName = dataFullFileName;
|
||||
_Display = string.Concat(ex.Message, Environment.NewLine, ex.StackTrace, Environment.NewLine, dataFullFileName);
|
||||
_LastModified = DateTime.Now;
|
||||
}
|
||||
|
||||
string IFileSystem.GetDate()
|
||||
{
|
||||
string result = _LastModified.ToString("MM/dd/yyyy hh:mm:ss tt");
|
||||
return result;
|
||||
}
|
||||
|
||||
List<FileSystem> Stateless.Methods.IFileSystem.TestStatic_GetFileSystemCollection(string requestPath, string rootResultsDirectory, (string RootResultsDirectoryAbsoluteUri, string C_ResizeContentDirectory, string D_FacesContentDirectory, string E_DistanceCollectionDirectory) tuple, string[] directories, string[] files, bool all) => throw new NotImplementedException();
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
|
||||
return result;
|
||||
}
|
||||
|
||||
}
|
37
Shared/Models/Location.cs
Normal file
37
Shared/Models/Location.cs
Normal file
@ -0,0 +1,37 @@
|
||||
using System.Text.Json;
|
||||
using System.Text.Json.Serialization;
|
||||
using View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
namespace View_by_Distance.Shared.Models;
|
||||
|
||||
public class Location : Properties.ILocation, ILocation
|
||||
{
|
||||
|
||||
protected double _Confidence;
|
||||
protected int _Bottom;
|
||||
protected int _Left;
|
||||
protected int _Right;
|
||||
protected int _Top;
|
||||
public double Confidence => _Confidence;
|
||||
public int Bottom => _Bottom;
|
||||
public int Left => _Left;
|
||||
public int Right => _Right;
|
||||
public int Top => _Top;
|
||||
|
||||
[JsonConstructor]
|
||||
public Location(double confidence, int bottom, int left, int right, int top)
|
||||
{
|
||||
_Confidence = confidence;
|
||||
_Bottom = bottom;
|
||||
_Left = left;
|
||||
_Right = right;
|
||||
_Top = top;
|
||||
}
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
|
||||
return result;
|
||||
}
|
||||
|
||||
}
|
32
Shared/Models/MetadataFile.cs
Normal file
32
Shared/Models/MetadataFile.cs
Normal file
@ -0,0 +1,32 @@
|
||||
using System.Text.Json;
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace View_by_Distance.Shared.Models;
|
||||
|
||||
public class MetadataFile : Properties.IMetadataFile
|
||||
{
|
||||
|
||||
protected readonly MetadataFileId _Id; // {-_-}SingletonClass
|
||||
protected readonly MetadataFileCollection _Collection; // {-_-}SingletonClass
|
||||
|
||||
public MetadataFileId Id => _Id; // {-_-}SingletonClass
|
||||
public MetadataFileCollection Collection => _Collection; // {-_-}SingletonClass
|
||||
|
||||
[JsonConstructor]
|
||||
public MetadataFile
|
||||
(
|
||||
MetadataFileId id,
|
||||
MetadataFileCollection collection
|
||||
)
|
||||
{
|
||||
_Id = id; // {-_-}SingletonClass
|
||||
_Collection = collection; // {-_-}SingletonClass
|
||||
}
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
|
||||
return result;
|
||||
} // ...
|
||||
|
||||
}
|
25
Shared/Models/MetadataFileCollection.cs
Normal file
25
Shared/Models/MetadataFileCollection.cs
Normal file
@ -0,0 +1,25 @@
|
||||
using System.Text.Json;
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace View_by_Distance.Shared.Models;
|
||||
|
||||
public class MetadataFileCollection : Properties.IMetadataFileCollection
|
||||
{
|
||||
|
||||
protected readonly Dictionary<string, List<KeyValuePair<string, string>>> _Values; // {{1}}SingletonValue
|
||||
|
||||
public Dictionary<string, List<KeyValuePair<string, string>>> Values => _Values; // {{1}}SingletonValue
|
||||
|
||||
[JsonConstructor]
|
||||
public MetadataFileCollection
|
||||
(
|
||||
Dictionary<string, List<KeyValuePair<string, string>>> values
|
||||
) => _Values = values; // {{1}}SingletonValue
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
|
||||
return result;
|
||||
} // ...
|
||||
|
||||
}
|
25
Shared/Models/MetadataFileId.cs
Normal file
25
Shared/Models/MetadataFileId.cs
Normal file
@ -0,0 +1,25 @@
|
||||
using System.Text.Json;
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace View_by_Distance.Shared.Models;
|
||||
|
||||
public class MetadataFileId : Properties.IMetadataFileId
|
||||
{
|
||||
|
||||
protected readonly string _Value; // {{1}}SingletonValue
|
||||
|
||||
public string Value => _Value; // {{1}}SingletonValue
|
||||
|
||||
[JsonConstructor]
|
||||
public MetadataFileId
|
||||
(
|
||||
string value
|
||||
) => _Value = value; // {{1}}SingletonValue
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
|
||||
return result;
|
||||
} // ...
|
||||
|
||||
}
|
0
Shared/Models/Methods/I%ClassName%.cs .ai
Normal file
0
Shared/Models/Methods/I%ClassName%.cs .ai
Normal file
12
Shared/Models/Methods/IBackground.cs
Normal file
12
Shared/Models/Methods/IBackground.cs
Normal file
@ -0,0 +1,12 @@
|
||||
namespace View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
public interface IBackground
|
||||
{
|
||||
|
||||
void Update();
|
||||
void Dispose();
|
||||
List<string> DoBackup();
|
||||
void Stop(bool immediate);
|
||||
void Catch(Exception exception);
|
||||
|
||||
}
|
6
Shared/Models/Methods/IConfiguration.cs
Normal file
6
Shared/Models/Methods/IConfiguration.cs
Normal file
@ -0,0 +1,6 @@
|
||||
namespace View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
public interface IConfiguration
|
||||
{
|
||||
|
||||
}
|
9
Shared/Models/Methods/IConsole.cs
Normal file
9
Shared/Models/Methods/IConsole.cs
Normal file
@ -0,0 +1,9 @@
|
||||
namespace View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
public interface IConsole
|
||||
{
|
||||
|
||||
string? ReadLine();
|
||||
ConsoleKey ReadKey();
|
||||
|
||||
}
|
8
Shared/Models/Methods/IFace.cs
Normal file
8
Shared/Models/Methods/IFace.cs
Normal file
@ -0,0 +1,8 @@
|
||||
namespace View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
public interface IFace : Stateless.Methods.IFace
|
||||
{ // ...
|
||||
|
||||
//
|
||||
|
||||
}
|
6
Shared/Models/Methods/IFaceEncoding.cs
Normal file
6
Shared/Models/Methods/IFaceEncoding.cs
Normal file
@ -0,0 +1,6 @@
|
||||
namespace View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
public interface IFaceEncoding
|
||||
{
|
||||
|
||||
}
|
8
Shared/Models/Methods/IFaceFileSystem.cs
Normal file
8
Shared/Models/Methods/IFaceFileSystem.cs
Normal file
@ -0,0 +1,8 @@
|
||||
namespace View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
public interface IFaceFileSystem : Stateless.Methods.IFaceFileSystem, IFileSystem
|
||||
{
|
||||
|
||||
string GetSize();
|
||||
|
||||
}
|
6
Shared/Models/Methods/IFacePoint.cs
Normal file
6
Shared/Models/Methods/IFacePoint.cs
Normal file
@ -0,0 +1,6 @@
|
||||
namespace View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
public interface IFacePoint
|
||||
{
|
||||
|
||||
}
|
8
Shared/Models/Methods/IFileSystem.cs
Normal file
8
Shared/Models/Methods/IFileSystem.cs
Normal file
@ -0,0 +1,8 @@
|
||||
namespace View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
public interface IFileSystem : Stateless.Methods.IFileSystem
|
||||
{
|
||||
|
||||
string GetDate();
|
||||
|
||||
}
|
6
Shared/Models/Methods/IIdentify.cs
Normal file
6
Shared/Models/Methods/IIdentify.cs
Normal file
@ -0,0 +1,6 @@
|
||||
namespace View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
public interface IIdentify
|
||||
{
|
||||
|
||||
}
|
8
Shared/Models/Methods/IIndex.cs
Normal file
8
Shared/Models/Methods/IIndex.cs
Normal file
@ -0,0 +1,8 @@
|
||||
namespace View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
public interface IIndex : Stateless.Methods.IIndex
|
||||
{ // ...
|
||||
|
||||
//
|
||||
|
||||
}
|
6
Shared/Models/Methods/ILocation.cs
Normal file
6
Shared/Models/Methods/ILocation.cs
Normal file
@ -0,0 +1,6 @@
|
||||
namespace View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
public interface ILocation
|
||||
{
|
||||
|
||||
}
|
8
Shared/Models/Methods/IMetadataFile.cs
Normal file
8
Shared/Models/Methods/IMetadataFile.cs
Normal file
@ -0,0 +1,8 @@
|
||||
namespace View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
public interface IMetadataFile : Stateless.Methods.IMetadataFile
|
||||
{
|
||||
|
||||
// ...
|
||||
|
||||
}
|
8
Shared/Models/Methods/IMetadataFileCollection.cs
Normal file
8
Shared/Models/Methods/IMetadataFileCollection.cs
Normal file
@ -0,0 +1,8 @@
|
||||
namespace View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
public interface IMetadataFileCollection : Stateless.Methods.IMetadataFileCollection
|
||||
{
|
||||
|
||||
// ...
|
||||
|
||||
}
|
8
Shared/Models/Methods/IMetadataFileId.cs
Normal file
8
Shared/Models/Methods/IMetadataFileId.cs
Normal file
@ -0,0 +1,8 @@
|
||||
namespace View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
public interface IMetadataFileId : Stateless.Methods.IMetadataFileId
|
||||
{
|
||||
|
||||
// ...
|
||||
|
||||
}
|
6
Shared/Models/Methods/INavigate.cs
Normal file
6
Shared/Models/Methods/INavigate.cs
Normal file
@ -0,0 +1,6 @@
|
||||
namespace View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
public interface INavigate
|
||||
{
|
||||
|
||||
}
|
6
Shared/Models/Methods/IOutputResolution.cs
Normal file
6
Shared/Models/Methods/IOutputResolution.cs
Normal file
@ -0,0 +1,6 @@
|
||||
namespace View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
public interface IOutputResolution
|
||||
{
|
||||
|
||||
}
|
8
Shared/Models/Methods/IPerson.cs
Normal file
8
Shared/Models/Methods/IPerson.cs
Normal file
@ -0,0 +1,8 @@
|
||||
namespace View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
public interface IPerson : Stateless.Methods.IPerson
|
||||
{
|
||||
|
||||
// ...
|
||||
|
||||
}
|
8
Shared/Models/Methods/IPersonAddress.cs
Normal file
8
Shared/Models/Methods/IPersonAddress.cs
Normal file
@ -0,0 +1,8 @@
|
||||
namespace View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
public interface IPersonAddress : Stateless.Methods.IPersonAddress
|
||||
{
|
||||
|
||||
// ...
|
||||
|
||||
}
|
8
Shared/Models/Methods/IPersonAddressCity.cs
Normal file
8
Shared/Models/Methods/IPersonAddressCity.cs
Normal file
@ -0,0 +1,8 @@
|
||||
namespace View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
public interface IPersonAddressCity : Stateless.Methods.IPersonAddressCity
|
||||
{
|
||||
|
||||
// ...
|
||||
|
||||
}
|
8
Shared/Models/Methods/IPersonAddressState.cs
Normal file
8
Shared/Models/Methods/IPersonAddressState.cs
Normal file
@ -0,0 +1,8 @@
|
||||
namespace View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
public interface IPersonAddressState : Stateless.Methods.IPersonAddressState
|
||||
{
|
||||
|
||||
// ...
|
||||
|
||||
}
|
8
Shared/Models/Methods/IPersonAddressStreet.cs
Normal file
8
Shared/Models/Methods/IPersonAddressStreet.cs
Normal file
@ -0,0 +1,8 @@
|
||||
namespace View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
public interface IPersonAddressStreet : Stateless.Methods.IPersonAddressStreet
|
||||
{
|
||||
|
||||
// ...
|
||||
|
||||
}
|
8
Shared/Models/Methods/IPersonAddressZipCode.cs
Normal file
8
Shared/Models/Methods/IPersonAddressZipCode.cs
Normal file
@ -0,0 +1,8 @@
|
||||
namespace View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
public interface IPersonAddressZipCode : Stateless.Methods.IPersonAddressZipCode
|
||||
{
|
||||
|
||||
// ...
|
||||
|
||||
}
|
8
Shared/Models/Methods/IPersonBirthday.cs
Normal file
8
Shared/Models/Methods/IPersonBirthday.cs
Normal file
@ -0,0 +1,8 @@
|
||||
namespace View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
public interface IPersonBirthday : Stateless.Methods.IPersonBirthday
|
||||
{
|
||||
|
||||
// ...
|
||||
|
||||
}
|
8
Shared/Models/Methods/IPersonComment.cs
Normal file
8
Shared/Models/Methods/IPersonComment.cs
Normal file
@ -0,0 +1,8 @@
|
||||
namespace View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
public interface IPersonComment : Stateless.Methods.IPersonComment
|
||||
{
|
||||
|
||||
// ...
|
||||
|
||||
}
|
8
Shared/Models/Methods/IPersonEmail.cs
Normal file
8
Shared/Models/Methods/IPersonEmail.cs
Normal file
@ -0,0 +1,8 @@
|
||||
namespace View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
public interface IPersonEmail : Stateless.Methods.IPersonEmail
|
||||
{
|
||||
|
||||
// ...
|
||||
|
||||
}
|
8
Shared/Models/Methods/IPersonId.cs
Normal file
8
Shared/Models/Methods/IPersonId.cs
Normal file
@ -0,0 +1,8 @@
|
||||
namespace View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
public interface IPersonId : Stateless.Methods.IPersonId
|
||||
{
|
||||
|
||||
// ...
|
||||
|
||||
}
|
8
Shared/Models/Methods/IPersonName.cs
Normal file
8
Shared/Models/Methods/IPersonName.cs
Normal file
@ -0,0 +1,8 @@
|
||||
namespace View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
public interface IPersonName : Stateless.Methods.IPersonName
|
||||
{
|
||||
|
||||
// ...
|
||||
|
||||
}
|
8
Shared/Models/Methods/IPersonNameAlias.cs
Normal file
8
Shared/Models/Methods/IPersonNameAlias.cs
Normal file
@ -0,0 +1,8 @@
|
||||
namespace View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
public interface IPersonNameAlias : Stateless.Methods.IPersonNameAlias
|
||||
{
|
||||
|
||||
// ...
|
||||
|
||||
}
|
8
Shared/Models/Methods/IPersonNameFirst.cs
Normal file
8
Shared/Models/Methods/IPersonNameFirst.cs
Normal file
@ -0,0 +1,8 @@
|
||||
namespace View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
public interface IPersonNameFirst : Stateless.Methods.IPersonNameFirst
|
||||
{
|
||||
|
||||
// ...
|
||||
|
||||
}
|
8
Shared/Models/Methods/IPersonNameLast.cs
Normal file
8
Shared/Models/Methods/IPersonNameLast.cs
Normal file
@ -0,0 +1,8 @@
|
||||
namespace View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
public interface IPersonNameLast : Stateless.Methods.IPersonNameLast
|
||||
{
|
||||
|
||||
// ...
|
||||
|
||||
}
|
8
Shared/Models/Methods/IPersonNameMiddle.cs
Normal file
8
Shared/Models/Methods/IPersonNameMiddle.cs
Normal file
@ -0,0 +1,8 @@
|
||||
namespace View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
public interface IPersonNameMiddle : Stateless.Methods.IPersonNameMiddle
|
||||
{
|
||||
|
||||
// ...
|
||||
|
||||
}
|
8
Shared/Models/Methods/IPersonNumber.cs
Normal file
8
Shared/Models/Methods/IPersonNumber.cs
Normal file
@ -0,0 +1,8 @@
|
||||
namespace View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
public interface IPersonNumber : Stateless.Methods.IPersonNumber
|
||||
{
|
||||
|
||||
// ...
|
||||
|
||||
}
|
8
Shared/Models/Methods/IPersonURL.cs
Normal file
8
Shared/Models/Methods/IPersonURL.cs
Normal file
@ -0,0 +1,8 @@
|
||||
namespace View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
public interface IPersonURL : Stateless.Methods.IPersonURL
|
||||
{
|
||||
|
||||
// ...
|
||||
|
||||
}
|
6
Shared/Models/Methods/IProperty.cs
Normal file
6
Shared/Models/Methods/IProperty.cs
Normal file
@ -0,0 +1,6 @@
|
||||
namespace View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
public interface IProperty
|
||||
{
|
||||
|
||||
}
|
6
Shared/Models/Methods/IRelativePaths.cs
Normal file
6
Shared/Models/Methods/IRelativePaths.cs
Normal file
@ -0,0 +1,6 @@
|
||||
namespace View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
public interface IRelativePaths
|
||||
{
|
||||
|
||||
}
|
8
Shared/Models/Methods/IStorage.cs
Normal file
8
Shared/Models/Methods/IStorage.cs
Normal file
@ -0,0 +1,8 @@
|
||||
namespace View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
public interface IStorage : Stateless.Methods.IStorage
|
||||
{
|
||||
|
||||
// ...
|
||||
|
||||
}
|
39
Shared/Models/Navigate.cs
Normal file
39
Shared/Models/Navigate.cs
Normal file
@ -0,0 +1,39 @@
|
||||
using System.Text.Json;
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace View_by_Distance.Shared.Models;
|
||||
|
||||
public class Navigate : Properties.INavigate
|
||||
{
|
||||
|
||||
protected List<string[]> _Levels;
|
||||
protected string _SourceDirectory;
|
||||
protected string _DirectoryRelativePath;
|
||||
protected string _EncodedSourceDirectory;
|
||||
protected Models.FaceFileSystem[] _FaceFileSystemCollection;
|
||||
protected Models.DirectoryFileSystem[] _DirectoryFileSystemCollection;
|
||||
public List<string[]> Levels => _Levels;
|
||||
public string SourceDirectory => _SourceDirectory;
|
||||
public string DirectoryRelativePath => _DirectoryRelativePath;
|
||||
public string EncodedSourceDirectory => _EncodedSourceDirectory;
|
||||
public Models.FaceFileSystem[] FaceFileSystemCollection => _FaceFileSystemCollection;
|
||||
public Models.DirectoryFileSystem[] DirectoryFileSystemCollection => _DirectoryFileSystemCollection;
|
||||
|
||||
[JsonConstructor]
|
||||
public Navigate(List<string[]> levels, string sourceDirectory, string directoryRelativePath, string encodedSourceDirectory, Models.FaceFileSystem[] faceFileSystemCollection, Models.DirectoryFileSystem[] directoryFileSystemCollection)
|
||||
{
|
||||
_Levels = levels;
|
||||
_SourceDirectory = sourceDirectory;
|
||||
_DirectoryRelativePath = directoryRelativePath;
|
||||
_EncodedSourceDirectory = encodedSourceDirectory;
|
||||
_FaceFileSystemCollection = faceFileSystemCollection;
|
||||
_DirectoryFileSystemCollection = directoryFileSystemCollection;
|
||||
}
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
|
||||
return result;
|
||||
}
|
||||
|
||||
}
|
31
Shared/Models/OutputResolution.cs
Normal file
31
Shared/Models/OutputResolution.cs
Normal file
@ -0,0 +1,31 @@
|
||||
using System.Text.Json;
|
||||
using System.Text.Json.Serialization;
|
||||
using View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
namespace View_by_Distance.Shared.Models;
|
||||
|
||||
public class OutputResolution : Properties.IOutputResolution, IOutputResolution
|
||||
{
|
||||
|
||||
protected int _Height;
|
||||
protected int _Orientation;
|
||||
protected int _Width;
|
||||
public int Height => _Height;
|
||||
public int Orientation => _Orientation;
|
||||
public int Width => _Width;
|
||||
|
||||
[JsonConstructor]
|
||||
public OutputResolution(int height, int orientation, int width)
|
||||
{
|
||||
_Height = height;
|
||||
_Orientation = orientation;
|
||||
_Width = width;
|
||||
}
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
|
||||
return result;
|
||||
}
|
||||
|
||||
}
|
56
Shared/Models/Person.cs
Normal file
56
Shared/Models/Person.cs
Normal file
@ -0,0 +1,56 @@
|
||||
using System.Text.Json;
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace View_by_Distance.Shared.Models;
|
||||
|
||||
public class Person : Properties.IPerson
|
||||
{
|
||||
|
||||
protected readonly PersonId _Id; // {-_-}SingletonClass
|
||||
protected readonly PersonBirthday _Birthday; // {-_-}SingletonClass
|
||||
protected readonly PersonName _Name; // {{_}}JsonValueKindObject
|
||||
protected readonly List<PersonComment> _Comments; // <{_}>PluralClass
|
||||
protected readonly List<PersonURL> _URLs; // <{_}>PluralClass
|
||||
protected readonly List<PersonNumber> _Numbers; // <{_}>PluralClass
|
||||
protected readonly List<PersonEmail> _Emails; // <{_}>PluralClass
|
||||
protected readonly List<PersonAddress> _Addresses; // <<_>>JsonValueKindArray
|
||||
|
||||
public PersonId Id => _Id; // {-_-}SingletonClass
|
||||
public PersonBirthday Birthday => _Birthday; // {-_-}SingletonClass
|
||||
public PersonName Name => _Name; // {{_}}JsonValueKindObject
|
||||
public List<PersonComment> Comments => _Comments; // <{_}>PluralClass
|
||||
public List<PersonURL> URLs => _URLs; // <{_}>PluralClass
|
||||
public List<PersonNumber> Numbers => _Numbers; // <{_}>PluralClass
|
||||
public List<PersonEmail> Emails => _Emails; // <{_}>PluralClass
|
||||
public List<PersonAddress> Addresses => _Addresses; // <<_>>JsonValueKindArray
|
||||
|
||||
[JsonConstructor]
|
||||
public Person
|
||||
(
|
||||
PersonId id,
|
||||
PersonBirthday birthday,
|
||||
PersonName name,
|
||||
List<PersonComment> comments,
|
||||
List<PersonURL> uRLs,
|
||||
List<PersonNumber> numbers,
|
||||
List<PersonEmail> emails,
|
||||
List<PersonAddress> addresses
|
||||
)
|
||||
{
|
||||
_Id = id; // {-_-}SingletonClass
|
||||
_Birthday = birthday; // {-_-}SingletonClass
|
||||
_Name = name; // {{_}}JsonValueKindObject
|
||||
_Comments = comments; // <{_}>PluralClass
|
||||
_URLs = uRLs; // <{_}>PluralClass
|
||||
_Numbers = numbers; // <{_}>PluralClass
|
||||
_Emails = emails; // <{_}>PluralClass
|
||||
_Addresses = addresses; // <<_>>JsonValueKindArray
|
||||
}
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
|
||||
return result;
|
||||
} // ...
|
||||
|
||||
}
|
40
Shared/Models/PersonAddress.cs
Normal file
40
Shared/Models/PersonAddress.cs
Normal file
@ -0,0 +1,40 @@
|
||||
using System.Text.Json;
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace View_by_Distance.Shared.Models;
|
||||
|
||||
public class PersonAddress : Properties.IPersonAddress
|
||||
{
|
||||
|
||||
protected readonly PersonAddressStreet _Street; // {-_-}SingletonClass
|
||||
protected readonly PersonAddressCity _City; // {-_-}SingletonClass
|
||||
protected readonly PersonAddressState _State; // {-_-}SingletonClass
|
||||
protected readonly PersonAddressZipCode _ZipCode; // {-_-}SingletonClass
|
||||
|
||||
public PersonAddressStreet Street => _Street; // {-_-}SingletonClass
|
||||
public PersonAddressCity City => _City; // {-_-}SingletonClass
|
||||
public PersonAddressState State => _State; // {-_-}SingletonClass
|
||||
public PersonAddressZipCode ZipCode => _ZipCode; // {-_-}SingletonClass
|
||||
|
||||
[JsonConstructor]
|
||||
public PersonAddress
|
||||
(
|
||||
PersonAddressStreet street,
|
||||
PersonAddressCity city,
|
||||
PersonAddressState state,
|
||||
PersonAddressZipCode zipCode
|
||||
)
|
||||
{
|
||||
_Street = street; // {-_-}SingletonClass
|
||||
_City = city; // {-_-}SingletonClass
|
||||
_State = state; // {-_-}SingletonClass
|
||||
_ZipCode = zipCode; // {-_-}SingletonClass
|
||||
}
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
|
||||
return result;
|
||||
} // ...
|
||||
|
||||
}
|
25
Shared/Models/PersonAddressCity.cs
Normal file
25
Shared/Models/PersonAddressCity.cs
Normal file
@ -0,0 +1,25 @@
|
||||
using System.Text.Json;
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace View_by_Distance.Shared.Models;
|
||||
|
||||
public class PersonAddressCity : Properties.IPersonAddressCity
|
||||
{
|
||||
|
||||
protected readonly string _Value; // {{1}}SingletonValue
|
||||
|
||||
public string Value => _Value; // {{1}}SingletonValue
|
||||
|
||||
[JsonConstructor]
|
||||
public PersonAddressCity
|
||||
(
|
||||
string value
|
||||
) => _Value = value; // {{1}}SingletonValue
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
|
||||
return result;
|
||||
} // ...
|
||||
|
||||
}
|
25
Shared/Models/PersonAddressState.cs
Normal file
25
Shared/Models/PersonAddressState.cs
Normal file
@ -0,0 +1,25 @@
|
||||
using System.Text.Json;
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace View_by_Distance.Shared.Models;
|
||||
|
||||
public class PersonAddressState : Properties.IPersonAddressState
|
||||
{
|
||||
|
||||
protected readonly string _Value; // {{1}}SingletonValue
|
||||
|
||||
public string Value => _Value; // {{1}}SingletonValue
|
||||
|
||||
[JsonConstructor]
|
||||
public PersonAddressState
|
||||
(
|
||||
string value
|
||||
) => _Value = value; // {{1}}SingletonValue
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
|
||||
return result;
|
||||
} // ...
|
||||
|
||||
}
|
25
Shared/Models/PersonAddressStreet.cs
Normal file
25
Shared/Models/PersonAddressStreet.cs
Normal file
@ -0,0 +1,25 @@
|
||||
using System.Text.Json;
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace View_by_Distance.Shared.Models;
|
||||
|
||||
public class PersonAddressStreet : Properties.IPersonAddressStreet
|
||||
{
|
||||
|
||||
protected readonly string _Value; // {{1}}SingletonValue
|
||||
|
||||
public string Value => _Value; // {{1}}SingletonValue
|
||||
|
||||
[JsonConstructor]
|
||||
public PersonAddressStreet
|
||||
(
|
||||
string value
|
||||
) => _Value = value; // {{1}}SingletonValue
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
|
||||
return result;
|
||||
} // ...
|
||||
|
||||
}
|
25
Shared/Models/PersonAddressZipCode.cs
Normal file
25
Shared/Models/PersonAddressZipCode.cs
Normal file
@ -0,0 +1,25 @@
|
||||
using System.Text.Json;
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace View_by_Distance.Shared.Models;
|
||||
|
||||
public class PersonAddressZipCode : Properties.IPersonAddressZipCode
|
||||
{
|
||||
|
||||
protected readonly string _Value; // {{1}}SingletonValue
|
||||
|
||||
public string Value => _Value; // {{1}}SingletonValue
|
||||
|
||||
[JsonConstructor]
|
||||
public PersonAddressZipCode
|
||||
(
|
||||
string value
|
||||
) => _Value = value; // {{1}}SingletonValue
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
|
||||
return result;
|
||||
} // ...
|
||||
|
||||
}
|
25
Shared/Models/PersonBirthday.cs
Normal file
25
Shared/Models/PersonBirthday.cs
Normal file
@ -0,0 +1,25 @@
|
||||
using System.Text.Json;
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace View_by_Distance.Shared.Models;
|
||||
|
||||
public class PersonBirthday : Properties.IPersonBirthday
|
||||
{
|
||||
|
||||
protected readonly DateTime _Value; // {{1}}SingletonValue
|
||||
|
||||
public DateTime Value => _Value; // {{1}}SingletonValue
|
||||
|
||||
[JsonConstructor]
|
||||
public PersonBirthday
|
||||
(
|
||||
DateTime value
|
||||
) => _Value = value; // {{1}}SingletonValue
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
|
||||
return result;
|
||||
} // ...
|
||||
|
||||
}
|
25
Shared/Models/PersonComment.cs
Normal file
25
Shared/Models/PersonComment.cs
Normal file
@ -0,0 +1,25 @@
|
||||
using System.Text.Json;
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace View_by_Distance.Shared.Models;
|
||||
|
||||
public class PersonComment : Properties.IPersonComment
|
||||
{
|
||||
|
||||
protected readonly string _Value; // <{1}>PluralValue
|
||||
|
||||
public string Value => _Value; // <{1}>PluralValue
|
||||
|
||||
[JsonConstructor]
|
||||
public PersonComment
|
||||
(
|
||||
string value
|
||||
) => _Value = value; // <{1}>PluralValue
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
|
||||
return result;
|
||||
} // ...
|
||||
|
||||
}
|
25
Shared/Models/PersonEmail.cs
Normal file
25
Shared/Models/PersonEmail.cs
Normal file
@ -0,0 +1,25 @@
|
||||
using System.Text.Json;
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace View_by_Distance.Shared.Models;
|
||||
|
||||
public class PersonEmail : Properties.IPersonEmail
|
||||
{
|
||||
|
||||
protected readonly string _Value; // <{1}>PluralValue
|
||||
|
||||
public string Value => _Value; // <{1}>PluralValue
|
||||
|
||||
[JsonConstructor]
|
||||
public PersonEmail
|
||||
(
|
||||
string value
|
||||
) => _Value = value; // <{1}>PluralValue
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
|
||||
return result;
|
||||
} // ...
|
||||
|
||||
}
|
25
Shared/Models/PersonId.cs
Normal file
25
Shared/Models/PersonId.cs
Normal file
@ -0,0 +1,25 @@
|
||||
using System.Text.Json;
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace View_by_Distance.Shared.Models;
|
||||
|
||||
public class PersonId : Properties.IPersonId
|
||||
{
|
||||
|
||||
protected readonly long _Value; // {{1}}SingletonValue
|
||||
|
||||
public long Value => _Value; // {{1}}SingletonValue
|
||||
|
||||
[JsonConstructor]
|
||||
public PersonId
|
||||
(
|
||||
long value
|
||||
) => _Value = value; // {{1}}SingletonValue
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
|
||||
return result;
|
||||
} // ...
|
||||
|
||||
}
|
37
Shared/Models/PersonImport.cs
Normal file
37
Shared/Models/PersonImport.cs
Normal file
@ -0,0 +1,37 @@
|
||||
using System.Text.Json;
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace View_by_Distance.Shared.Models;
|
||||
|
||||
public class PersonImport
|
||||
{
|
||||
|
||||
public DateTime _Key;
|
||||
public string _Name;
|
||||
public string _MergeName;
|
||||
public string _OldName;
|
||||
public string _Comment;
|
||||
|
||||
public DateTime Key => _Key;
|
||||
public string Name => _Name;
|
||||
public string MergeName => _MergeName;
|
||||
public string OldName => _OldName;
|
||||
public string Comment => _Comment;
|
||||
|
||||
[JsonConstructor]
|
||||
public PersonImport(DateTime key, string name, string mergeName, string oldName, string comment)
|
||||
{
|
||||
_Key = key;
|
||||
_Name = name;
|
||||
_MergeName = mergeName;
|
||||
_OldName = oldName;
|
||||
_Comment = comment;
|
||||
}
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
|
||||
return result;
|
||||
}
|
||||
|
||||
}
|
40
Shared/Models/PersonName.cs
Normal file
40
Shared/Models/PersonName.cs
Normal file
@ -0,0 +1,40 @@
|
||||
using System.Text.Json;
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace View_by_Distance.Shared.Models;
|
||||
|
||||
public class PersonName : Properties.IPersonName
|
||||
{
|
||||
|
||||
protected readonly PersonNameFirst _First; // {-_-}SingletonClass
|
||||
protected readonly PersonNameMiddle _Middle; // {-_-}SingletonClass
|
||||
protected readonly PersonNameLast _Last; // {-_-}SingletonClass
|
||||
protected readonly PersonNameAlias _Alias; // {-_-}SingletonClass
|
||||
|
||||
public PersonNameFirst First => _First; // {-_-}SingletonClass
|
||||
public PersonNameMiddle Middle => _Middle; // {-_-}SingletonClass
|
||||
public PersonNameLast Last => _Last; // {-_-}SingletonClass
|
||||
public PersonNameAlias Alias => _Alias; // {-_-}SingletonClass
|
||||
|
||||
[JsonConstructor]
|
||||
public PersonName
|
||||
(
|
||||
PersonNameFirst first,
|
||||
PersonNameMiddle middle,
|
||||
PersonNameLast last,
|
||||
PersonNameAlias alias
|
||||
)
|
||||
{
|
||||
_First = first; // {-_-}SingletonClass
|
||||
_Middle = middle; // {-_-}SingletonClass
|
||||
_Last = last; // {-_-}SingletonClass
|
||||
_Alias = alias; // {-_-}SingletonClass
|
||||
}
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
|
||||
return result;
|
||||
} // ...
|
||||
|
||||
}
|
25
Shared/Models/PersonNameAlias.cs
Normal file
25
Shared/Models/PersonNameAlias.cs
Normal file
@ -0,0 +1,25 @@
|
||||
using System.Text.Json;
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace View_by_Distance.Shared.Models;
|
||||
|
||||
public class PersonNameAlias : Properties.IPersonNameAlias
|
||||
{
|
||||
|
||||
protected readonly string _Value; // {{1}}SingletonValue
|
||||
|
||||
public string Value => _Value; // {{1}}SingletonValue
|
||||
|
||||
[JsonConstructor]
|
||||
public PersonNameAlias
|
||||
(
|
||||
string value
|
||||
) => _Value = value; // {{1}}SingletonValue
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
|
||||
return result;
|
||||
} // ...
|
||||
|
||||
}
|
25
Shared/Models/PersonNameFirst.cs
Normal file
25
Shared/Models/PersonNameFirst.cs
Normal file
@ -0,0 +1,25 @@
|
||||
using System.Text.Json;
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace View_by_Distance.Shared.Models;
|
||||
|
||||
public class PersonNameFirst : Properties.IPersonNameFirst
|
||||
{
|
||||
|
||||
protected readonly string _Value; // {{1}}SingletonValue
|
||||
|
||||
public string Value => _Value; // {{1}}SingletonValue
|
||||
|
||||
[JsonConstructor]
|
||||
public PersonNameFirst
|
||||
(
|
||||
string value
|
||||
) => _Value = value; // {{1}}SingletonValue
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
|
||||
return result;
|
||||
} // ...
|
||||
|
||||
}
|
25
Shared/Models/PersonNameLast.cs
Normal file
25
Shared/Models/PersonNameLast.cs
Normal file
@ -0,0 +1,25 @@
|
||||
using System.Text.Json;
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace View_by_Distance.Shared.Models;
|
||||
|
||||
public class PersonNameLast : Properties.IPersonNameLast
|
||||
{
|
||||
|
||||
protected readonly string _Value; // {{1}}SingletonValue
|
||||
|
||||
public string Value => _Value; // {{1}}SingletonValue
|
||||
|
||||
[JsonConstructor]
|
||||
public PersonNameLast
|
||||
(
|
||||
string value
|
||||
) => _Value = value; // {{1}}SingletonValue
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
|
||||
return result;
|
||||
} // ...
|
||||
|
||||
}
|
25
Shared/Models/PersonNameMiddle.cs
Normal file
25
Shared/Models/PersonNameMiddle.cs
Normal file
@ -0,0 +1,25 @@
|
||||
using System.Text.Json;
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace View_by_Distance.Shared.Models;
|
||||
|
||||
public class PersonNameMiddle : Properties.IPersonNameMiddle
|
||||
{
|
||||
|
||||
protected readonly string _Value; // {{1}}SingletonValue
|
||||
|
||||
public string Value => _Value; // {{1}}SingletonValue
|
||||
|
||||
[JsonConstructor]
|
||||
public PersonNameMiddle
|
||||
(
|
||||
string value
|
||||
) => _Value = value; // {{1}}SingletonValue
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
|
||||
return result;
|
||||
} // ...
|
||||
|
||||
}
|
25
Shared/Models/PersonNumber.cs
Normal file
25
Shared/Models/PersonNumber.cs
Normal file
@ -0,0 +1,25 @@
|
||||
using System.Text.Json;
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace View_by_Distance.Shared.Models;
|
||||
|
||||
public class PersonNumber : Properties.IPersonNumber
|
||||
{
|
||||
|
||||
protected readonly string _Value; // <{1}>PluralValue
|
||||
|
||||
public string Value => _Value; // <{1}>PluralValue
|
||||
|
||||
[JsonConstructor]
|
||||
public PersonNumber
|
||||
(
|
||||
string value
|
||||
) => _Value = value; // <{1}>PluralValue
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
|
||||
return result;
|
||||
} // ...
|
||||
|
||||
}
|
25
Shared/Models/PersonURL.cs
Normal file
25
Shared/Models/PersonURL.cs
Normal file
@ -0,0 +1,25 @@
|
||||
using System.Text.Json;
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace View_by_Distance.Shared.Models;
|
||||
|
||||
public class PersonURL : Properties.IPersonURL
|
||||
{
|
||||
|
||||
protected readonly string _Value; // <{1}>PluralValue
|
||||
|
||||
public string Value => _Value; // <{1}>PluralValue
|
||||
|
||||
[JsonConstructor]
|
||||
public PersonURL
|
||||
(
|
||||
string value
|
||||
) => _Value = value; // <{1}>PluralValue
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
|
||||
return result;
|
||||
} // ...
|
||||
|
||||
}
|
0
Shared/Models/Properties/I%ClassName%.cs .ai
Normal file
0
Shared/Models/Properties/I%ClassName%.cs .ai
Normal file
6
Shared/Models/Properties/IBackground.cs
Normal file
6
Shared/Models/Properties/IBackground.cs
Normal file
@ -0,0 +1,6 @@
|
||||
namespace View_by_Distance.Shared.Models.Properties;
|
||||
|
||||
public interface IBackground
|
||||
{
|
||||
|
||||
}
|
10
Shared/Models/Properties/IBackgroundPage.cs
Normal file
10
Shared/Models/Properties/IBackgroundPage.cs
Normal file
@ -0,0 +1,10 @@
|
||||
namespace View_by_Distance.Shared.Models.Properties;
|
||||
|
||||
public interface IBackgroundPage
|
||||
{
|
||||
|
||||
public List<Exception> Exceptions { get; }
|
||||
public string Message { get; }
|
||||
public string WorkingDirectory { get; }
|
||||
|
||||
}
|
45
Shared/Models/Properties/IConfiguration.cs
Normal file
45
Shared/Models/Properties/IConfiguration.cs
Normal file
@ -0,0 +1,45 @@
|
||||
// using View_by_Distance.Shared.Models.Methods;
|
||||
|
||||
// namespace View_by_Distance.Shared.Models.Properties;
|
||||
|
||||
// public interface IConfiguration
|
||||
// {
|
||||
|
||||
// public bool? checkJsonForDistanceResults;
|
||||
// public bool? loadOrCreateThenSaveDistanceResults;
|
||||
// public bool? loadOrCreateThenSaveImageFacesResults;
|
||||
// public bool? loadOrCreateThenSaveIndex;
|
||||
// public bool? overrideForFaceImages;
|
||||
// public bool? overrideForFaceLandmarkImages;
|
||||
// public bool? overrideForResizeImages;
|
||||
// public bool? propertiesChangedForDistance;
|
||||
// public bool? propertiesChangedForFaces;
|
||||
// public bool? propertiesChangedForIndex;
|
||||
// public bool? propertiesChangedForMetadata;
|
||||
// public bool? propertiesChangedForProperty;
|
||||
// public bool? propertiesChangedForResize;
|
||||
// public bool? reverse;
|
||||
// public bool? saveFullYearOfRandomFiles;
|
||||
// public bool? testDistanceResults;
|
||||
// public int? distanceFactor;
|
||||
// public int? locationConfidenceFactor;
|
||||
// public int? mappedMaxIndex;
|
||||
// public int? maxImagesInDirectoryForTopLevelFirstPass;
|
||||
// public int? maxItemsInDistanceCollection;
|
||||
// public int? numJitters;
|
||||
// public int? outputQuality;
|
||||
// public int? paddingLoops;
|
||||
// public string dateGroup;
|
||||
// public string modelDirectory;
|
||||
// public string modelName;
|
||||
// public string outputExtension;
|
||||
// public string predictorModelName;
|
||||
// public string rootDirectory;
|
||||
// public string[] ignoreExtensions;
|
||||
// public string[] ignoreRelativePaths;
|
||||
// public string[] mixedYearRelativePaths;
|
||||
// public string[] outputResolutions;
|
||||
// public string[] saveFaceLandmarkForOutputResolutions;
|
||||
// public string[] validResolutions;
|
||||
|
||||
// }
|
6
Shared/Models/Properties/IConsole.cs
Normal file
6
Shared/Models/Properties/IConsole.cs
Normal file
@ -0,0 +1,6 @@
|
||||
namespace View_by_Distance.Shared.Models.Properties;
|
||||
|
||||
public interface IConsole
|
||||
{
|
||||
|
||||
}
|
12
Shared/Models/Properties/IDirectoryFileSystem.cs
Normal file
12
Shared/Models/Properties/IDirectoryFileSystem.cs
Normal file
@ -0,0 +1,12 @@
|
||||
namespace View_by_Distance.Shared.Models.Properties;
|
||||
|
||||
public interface IDirectoryFileSystem
|
||||
{
|
||||
|
||||
// protected new string ClassName { get; }
|
||||
// protected new string DataDisplayFileName { get; }
|
||||
// protected new string DataFullFileName { get; }
|
||||
// protected new string Display { get; }
|
||||
// protected new DateTime LastModified { get; }
|
||||
|
||||
}
|
18
Shared/Models/Properties/IFace.cs
Normal file
18
Shared/Models/Properties/IFace.cs
Normal file
@ -0,0 +1,18 @@
|
||||
namespace View_by_Distance.Shared.Models.Properties;
|
||||
|
||||
public interface IFace
|
||||
{
|
||||
|
||||
#pragma warning disable IDE1006
|
||||
public double? α { get; }
|
||||
#pragma warning restore IDE1006
|
||||
public DateTime DateTime { get; }
|
||||
public Models.FaceEncoding FaceEncoding { get; }
|
||||
public Dictionary<string, Models.FacePoint[]> FaceLandmarks { get; }
|
||||
public Models.Location Location { get; }
|
||||
public int? LocationIndex { get; }
|
||||
public Models.OutputResolution OutputResolution { get; }
|
||||
public bool Populated { get; }
|
||||
public string RelativePath { get; }
|
||||
|
||||
}
|
9
Shared/Models/Properties/IFaceEncoding.cs
Normal file
9
Shared/Models/Properties/IFaceEncoding.cs
Normal file
@ -0,0 +1,9 @@
|
||||
namespace View_by_Distance.Shared.Models.Properties;
|
||||
|
||||
public interface IFaceEncoding
|
||||
{
|
||||
|
||||
public double[] RawEncoding { get; }
|
||||
public int Size { get; }
|
||||
|
||||
}
|
30
Shared/Models/Properties/IFaceFileSystem.cs
Normal file
30
Shared/Models/Properties/IFaceFileSystem.cs
Normal file
@ -0,0 +1,30 @@
|
||||
namespace View_by_Distance.Shared.Models.Properties;
|
||||
|
||||
public interface IFaceFileSystem // : IFaceFileSystem
|
||||
{
|
||||
|
||||
// protected new string ClassName { get; }
|
||||
public string Confidence { get; }
|
||||
// protected new string DataDisplayFileName { get; }
|
||||
// protected new string DataFullFileName { get; }
|
||||
// protected new string Display { get; }
|
||||
public int? FaceBottom { get; }
|
||||
public string FaceFullFileName { get; }
|
||||
public int? FaceHeight { get; }
|
||||
public int? FaceLeft { get; }
|
||||
public string FaceRelativePath { get; }
|
||||
public int? FaceRight { get; }
|
||||
public int? FaceTop { get; }
|
||||
public int? FaceWidth { get; }
|
||||
public int ImageHeight { get; }
|
||||
public int ImageWidth { get; }
|
||||
// protected new DateTime LastModified { get; }
|
||||
public string LocationDisplayIndex { get; }
|
||||
public int? LocationIndex { get; }
|
||||
public bool? Populated { get; }
|
||||
public string RelativePath { get; }
|
||||
public string SourceFullFileName { get; }
|
||||
public string SourceRelativePath { get; }
|
||||
public long? SourceSize { get; }
|
||||
|
||||
}
|
10
Shared/Models/Properties/IFacePoint.cs
Normal file
10
Shared/Models/Properties/IFacePoint.cs
Normal file
@ -0,0 +1,10 @@
|
||||
namespace View_by_Distance.Shared.Models.Properties;
|
||||
|
||||
public interface IFacePoint
|
||||
{
|
||||
|
||||
public int Index { get; }
|
||||
public int X { get; }
|
||||
public int Y { get; }
|
||||
|
||||
}
|
12
Shared/Models/Properties/IFileSystem.cs
Normal file
12
Shared/Models/Properties/IFileSystem.cs
Normal file
@ -0,0 +1,12 @@
|
||||
namespace View_by_Distance.Shared.Models.Properties;
|
||||
|
||||
public interface IFileSystem
|
||||
{
|
||||
|
||||
public string ClassName { get; }
|
||||
public string DataDisplayFileName { get; }
|
||||
public string DataFullFileName { get; }
|
||||
public string Display { get; }
|
||||
public DateTime LastModified { get; }
|
||||
|
||||
}
|
12
Shared/Models/Properties/IIdentify.cs
Normal file
12
Shared/Models/Properties/IIdentify.cs
Normal file
@ -0,0 +1,12 @@
|
||||
namespace View_by_Distance.Shared.Models.Properties;
|
||||
|
||||
public interface IIdentify
|
||||
{
|
||||
|
||||
public int DirectoryCount { get; }
|
||||
public string ParentDirectoryName { get; }
|
||||
public string Person { get; }
|
||||
public string PossibleYear { get; }
|
||||
public string RelativePath { get; }
|
||||
|
||||
}
|
10
Shared/Models/Properties/IIndex.cs
Normal file
10
Shared/Models/Properties/IIndex.cs
Normal file
@ -0,0 +1,10 @@
|
||||
namespace View_by_Distance.Shared.Models.Properties;
|
||||
|
||||
public interface IIndex
|
||||
{
|
||||
|
||||
public DateTime? DateTime { get; }
|
||||
public int? Index { get; }
|
||||
public List<string> RelativePaths { get; }
|
||||
|
||||
}
|
12
Shared/Models/Properties/ILocation.cs
Normal file
12
Shared/Models/Properties/ILocation.cs
Normal file
@ -0,0 +1,12 @@
|
||||
namespace View_by_Distance.Shared.Models.Properties;
|
||||
|
||||
public interface ILocation
|
||||
{
|
||||
|
||||
public double Confidence { get; }
|
||||
public int Bottom { get; }
|
||||
public int Left { get; }
|
||||
public int Right { get; }
|
||||
public int Top { get; }
|
||||
|
||||
}
|
9
Shared/Models/Properties/IMetadataFile.cs
Normal file
9
Shared/Models/Properties/IMetadataFile.cs
Normal file
@ -0,0 +1,9 @@
|
||||
namespace View_by_Distance.Shared.Models.Properties;
|
||||
|
||||
public interface IMetadataFile
|
||||
{
|
||||
|
||||
public MetadataFileId Id { get; } //string
|
||||
public MetadataFileCollection Collection { get; } //string
|
||||
|
||||
} // ...
|
8
Shared/Models/Properties/IMetadataFileCollection.cs
Normal file
8
Shared/Models/Properties/IMetadataFileCollection.cs
Normal file
@ -0,0 +1,8 @@
|
||||
namespace View_by_Distance.Shared.Models.Properties;
|
||||
|
||||
public interface IMetadataFileCollection
|
||||
{
|
||||
|
||||
public Dictionary<string, List<KeyValuePair<string, string>>> Values { get; }
|
||||
|
||||
} // ...
|
8
Shared/Models/Properties/IMetadataFileId.cs
Normal file
8
Shared/Models/Properties/IMetadataFileId.cs
Normal file
@ -0,0 +1,8 @@
|
||||
namespace View_by_Distance.Shared.Models.Properties;
|
||||
|
||||
public interface IMetadataFileId
|
||||
{
|
||||
|
||||
public string Value { get; }
|
||||
|
||||
} // ...
|
12
Shared/Models/Properties/INavigate.cs
Normal file
12
Shared/Models/Properties/INavigate.cs
Normal file
@ -0,0 +1,12 @@
|
||||
namespace View_by_Distance.Shared.Models.Properties;
|
||||
|
||||
public interface INavigate
|
||||
{
|
||||
|
||||
public List<string[]> Levels { get; }
|
||||
public string SourceDirectory { get; }
|
||||
public string DirectoryRelativePath { get; }
|
||||
public Models.FaceFileSystem[] FaceFileSystemCollection { get; }
|
||||
public Models.DirectoryFileSystem[] DirectoryFileSystemCollection { get; }
|
||||
|
||||
}
|
10
Shared/Models/Properties/IOutputResolution.cs
Normal file
10
Shared/Models/Properties/IOutputResolution.cs
Normal file
@ -0,0 +1,10 @@
|
||||
namespace View_by_Distance.Shared.Models.Properties;
|
||||
|
||||
public interface IOutputResolution
|
||||
{
|
||||
|
||||
public int Height { get; }
|
||||
public int Orientation { get; }
|
||||
public int Width { get; }
|
||||
|
||||
}
|
15
Shared/Models/Properties/IPerson.cs
Normal file
15
Shared/Models/Properties/IPerson.cs
Normal file
@ -0,0 +1,15 @@
|
||||
namespace View_by_Distance.Shared.Models.Properties;
|
||||
|
||||
public interface IPerson
|
||||
{
|
||||
|
||||
public PersonId Id { get; } //long
|
||||
public PersonBirthday Birthday { get; } //DateTime
|
||||
public PersonName Name { get; } //JsonValueKind.Object
|
||||
public List<PersonComment> Comments { get; } //string
|
||||
public List<PersonURL> URLs { get; } //string
|
||||
public List<PersonNumber> Numbers { get; } //string
|
||||
public List<PersonEmail> Emails { get; } //string
|
||||
public List<PersonAddress> Addresses { get; } //JsonValueKind.Array
|
||||
|
||||
} // ...
|
11
Shared/Models/Properties/IPersonAddress.cs
Normal file
11
Shared/Models/Properties/IPersonAddress.cs
Normal file
@ -0,0 +1,11 @@
|
||||
namespace View_by_Distance.Shared.Models.Properties;
|
||||
|
||||
public interface IPersonAddress
|
||||
{
|
||||
|
||||
public PersonAddressStreet Street { get; } //string
|
||||
public PersonAddressCity City { get; } //string
|
||||
public PersonAddressState State { get; } //string
|
||||
public PersonAddressZipCode ZipCode { get; } //string
|
||||
|
||||
} // ...
|
8
Shared/Models/Properties/IPersonAddressCity.cs
Normal file
8
Shared/Models/Properties/IPersonAddressCity.cs
Normal file
@ -0,0 +1,8 @@
|
||||
namespace View_by_Distance.Shared.Models.Properties;
|
||||
|
||||
public interface IPersonAddressCity
|
||||
{
|
||||
|
||||
public string Value { get; }
|
||||
|
||||
} // ...
|
8
Shared/Models/Properties/IPersonAddressState.cs
Normal file
8
Shared/Models/Properties/IPersonAddressState.cs
Normal file
@ -0,0 +1,8 @@
|
||||
namespace View_by_Distance.Shared.Models.Properties;
|
||||
|
||||
public interface IPersonAddressState
|
||||
{
|
||||
|
||||
public string Value { get; }
|
||||
|
||||
} // ...
|
8
Shared/Models/Properties/IPersonAddressStreet.cs
Normal file
8
Shared/Models/Properties/IPersonAddressStreet.cs
Normal file
@ -0,0 +1,8 @@
|
||||
namespace View_by_Distance.Shared.Models.Properties;
|
||||
|
||||
public interface IPersonAddressStreet
|
||||
{
|
||||
|
||||
public string Value { get; }
|
||||
|
||||
} // ...
|
8
Shared/Models/Properties/IPersonAddressZipCode.cs
Normal file
8
Shared/Models/Properties/IPersonAddressZipCode.cs
Normal file
@ -0,0 +1,8 @@
|
||||
namespace View_by_Distance.Shared.Models.Properties;
|
||||
|
||||
public interface IPersonAddressZipCode
|
||||
{
|
||||
|
||||
public string Value { get; }
|
||||
|
||||
} // ...
|
8
Shared/Models/Properties/IPersonBirthday.cs
Normal file
8
Shared/Models/Properties/IPersonBirthday.cs
Normal file
@ -0,0 +1,8 @@
|
||||
namespace View_by_Distance.Shared.Models.Properties;
|
||||
|
||||
public interface IPersonBirthday
|
||||
{
|
||||
|
||||
public DateTime Value { get; }
|
||||
|
||||
} // ...
|
8
Shared/Models/Properties/IPersonComment.cs
Normal file
8
Shared/Models/Properties/IPersonComment.cs
Normal file
@ -0,0 +1,8 @@
|
||||
namespace View_by_Distance.Shared.Models.Properties;
|
||||
|
||||
public interface IPersonComment
|
||||
{
|
||||
|
||||
public string Value { get; }
|
||||
|
||||
} // ...
|
8
Shared/Models/Properties/IPersonEmail.cs
Normal file
8
Shared/Models/Properties/IPersonEmail.cs
Normal file
@ -0,0 +1,8 @@
|
||||
namespace View_by_Distance.Shared.Models.Properties;
|
||||
|
||||
public interface IPersonEmail
|
||||
{
|
||||
|
||||
public string Value { get; }
|
||||
|
||||
} // ...
|
8
Shared/Models/Properties/IPersonId.cs
Normal file
8
Shared/Models/Properties/IPersonId.cs
Normal file
@ -0,0 +1,8 @@
|
||||
namespace View_by_Distance.Shared.Models.Properties;
|
||||
|
||||
public interface IPersonId
|
||||
{
|
||||
|
||||
public long Value { get; }
|
||||
|
||||
} // ...
|
11
Shared/Models/Properties/IPersonName.cs
Normal file
11
Shared/Models/Properties/IPersonName.cs
Normal file
@ -0,0 +1,11 @@
|
||||
namespace View_by_Distance.Shared.Models.Properties;
|
||||
|
||||
public interface IPersonName
|
||||
{
|
||||
|
||||
public PersonNameFirst First { get; } //string
|
||||
public PersonNameMiddle Middle { get; } //string
|
||||
public PersonNameLast Last { get; } //string
|
||||
public PersonNameAlias Alias { get; } //string
|
||||
|
||||
} // ...
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user