AA.Compare Project to Match not runToDoCollectionFirst
Removed Layered AppSettings with Nested Objects at First Level
This commit is contained in:
.gitignore
.vscode
AA.slnCompare
Distance
AA.Distance.csproj
Models
Face
FaceRecognitionDotNet
AA.FaceRecognitionDotNet.csprojDisposableObject.cs
Dlib
Extensions
FaceEncoding.csFaceRecognition.csFaceRecognitionGroup.csFaceRecognitionModels.csImage.csModelParameter.csPoint.csMetadata/Models
People
Rename
Shared/Models
DistanceSettings.csExifDirectory.csFaceDistance.csFacePartAndFacePointArray.csFaceRecognitionGroup.csFileHolder.csFilePath.csFilePathAndWholePercentages.csLocation.csLocationContainer.csMappingFromFilterPost.csMetadataConfiguration.csMetadataGroup.csMetadataSettings.csPeopleSettings.csPersonBirthday.csPersonContainer.csPersonDirectory.csPersonKeyFormattedAndPersonBirthday.csPersonKeyFormattedAndPersonKeyTicks.cs
Properties
ReadOnlyCollections.csResultConfiguration.csResultSettings.csSaveContainer.csStateless
@ -3,33 +3,33 @@ namespace View_by_Distance.Shared.Models.Stateless;
|
||||
internal abstract class XResult
|
||||
{
|
||||
|
||||
internal static string GetResultsDateGroupDirectory(ResultConfiguration resultConfiguration, string description, string jsonGroup)
|
||||
internal static string GetResultsDateGroupDirectory(ResultSettings resultSettings, string description, string jsonGroup)
|
||||
{
|
||||
string result = Path.Combine(GetResultsDateGroupDirectory(resultConfiguration, description), jsonGroup);
|
||||
string result = Path.Combine(GetResultsDateGroupDirectory(resultSettings, description), jsonGroup);
|
||||
if (!Directory.Exists(result))
|
||||
_ = Directory.CreateDirectory(result);
|
||||
return result;
|
||||
}
|
||||
|
||||
internal static string GetResultsDateGroupDirectory(ResultConfiguration resultConfiguration, string description)
|
||||
internal static string GetResultsDateGroupDirectory(ResultSettings resultSettings, string description)
|
||||
{
|
||||
string result = Path.Combine(GetResultsGroupDirectory(resultConfiguration, description, create: true), resultConfiguration.DateGroup);
|
||||
string result = Path.Combine(GetResultsGroupDirectory(resultSettings, description, create: true), resultSettings.DateGroup);
|
||||
if (!Directory.Exists(result))
|
||||
_ = Directory.CreateDirectory(result);
|
||||
return result;
|
||||
}
|
||||
|
||||
internal static string GetRelativePath(ResultConfiguration resultConfiguration, string path)
|
||||
internal static string GetRelativePath(ResultSettings resultSettings, string path)
|
||||
{
|
||||
string result = Methods.IPath.GetRelativePath(path, resultConfiguration.RootDirectory.Length);
|
||||
string result = Methods.IPath.GetRelativePath(path, resultSettings.RootDirectory.Length);
|
||||
return result;
|
||||
}
|
||||
|
||||
private static void VerifyDirectories(ResultConfiguration resultConfiguration, string dateGroupDirectory, string jsonGroup)
|
||||
private static void VerifyDirectories(ResultSettings resultSettings, string dateGroupDirectory, string jsonGroup)
|
||||
{
|
||||
string checkDirectory;
|
||||
int currentYear = DateTime.Now.Year;
|
||||
for (int i = resultConfiguration.EpicYear; i < currentYear + 1; i++)
|
||||
for (int i = resultSettings.EpicYear; i < currentYear + 1; i++)
|
||||
{
|
||||
checkDirectory = Path.Combine(dateGroupDirectory, jsonGroup, i.ToString());
|
||||
if (!Directory.Exists(checkDirectory))
|
||||
@ -37,10 +37,10 @@ internal abstract class XResult
|
||||
}
|
||||
}
|
||||
|
||||
private static void CheckContent(ResultConfiguration resultConfiguration, string dateGroupDirectory, string contentDescription, string result)
|
||||
private static void CheckContent(ResultSettings resultSettings, string dateGroupDirectory, string contentDescription, string result)
|
||||
{
|
||||
VerifyDirectories(resultConfiguration, dateGroupDirectory, resultConfiguration.ResultContent);
|
||||
string contentDirectory = new(result.Replace("<>", resultConfiguration.ResultContent));
|
||||
VerifyDirectories(resultSettings, dateGroupDirectory, resultSettings.ResultContent);
|
||||
string contentDirectory = new(result.Replace("<>", resultSettings.ResultContent));
|
||||
if (!Directory.Exists(contentDirectory))
|
||||
_ = Directory.CreateDirectory(contentDirectory);
|
||||
string checkDirectory = Path.Combine(dateGroupDirectory, string.Concat("() - ", contentDescription));
|
||||
@ -48,12 +48,12 @@ internal abstract class XResult
|
||||
_ = Directory.CreateDirectory(checkDirectory);
|
||||
}
|
||||
|
||||
private static void CheckSingleton(ResultConfiguration resultConfiguration, string dateGroupDirectory, string singletonDescription, bool converted, string result)
|
||||
private static void CheckSingleton(ResultSettings resultSettings, string dateGroupDirectory, string singletonDescription, bool converted, string result)
|
||||
{
|
||||
VerifyDirectories(resultConfiguration, dateGroupDirectory, resultConfiguration.ResultSingleton);
|
||||
VerifyDirectories(resultSettings, dateGroupDirectory, resultSettings.ResultSingleton);
|
||||
if (!converted)
|
||||
{
|
||||
string singletonDirectory = new(result.Replace("<>", resultConfiguration.ResultSingleton));
|
||||
string singletonDirectory = new(result.Replace("<>", resultSettings.ResultSingleton));
|
||||
if (!Directory.Exists(singletonDirectory))
|
||||
_ = Directory.CreateDirectory(singletonDirectory);
|
||||
}
|
||||
@ -62,12 +62,12 @@ internal abstract class XResult
|
||||
_ = Directory.CreateDirectory(checkDirectory);
|
||||
}
|
||||
|
||||
private static void CheckCollection(ResultConfiguration resultConfiguration, string dateGroupDirectory, string collectionDescription, bool converted, string result)
|
||||
private static void CheckCollection(ResultSettings resultSettings, string dateGroupDirectory, string collectionDescription, bool converted, string result)
|
||||
{
|
||||
VerifyDirectories(resultConfiguration, dateGroupDirectory, resultConfiguration.ResultCollection);
|
||||
VerifyDirectories(resultSettings, dateGroupDirectory, resultSettings.ResultCollection);
|
||||
if (!converted)
|
||||
{
|
||||
string collectionDirectory = new(result.Replace("<>", resultConfiguration.ResultCollection));
|
||||
string collectionDirectory = new(result.Replace("<>", resultSettings.ResultCollection));
|
||||
if (!Directory.Exists(collectionDirectory))
|
||||
_ = Directory.CreateDirectory(collectionDirectory);
|
||||
}
|
||||
@ -76,24 +76,24 @@ internal abstract class XResult
|
||||
_ = Directory.CreateDirectory(checkDirectory);
|
||||
}
|
||||
|
||||
internal static string GetResultsFullGroupDirectory(ResultConfiguration resultConfiguration, string description, string outputResolution, bool includeResizeGroup, bool includeModel, bool includePredictorModel)
|
||||
internal static string GetResultsFullGroupDirectory(ResultSettings resultSettings, string description, string outputResolution, bool includeResizeGroup, bool includeModel, bool includePredictorModel)
|
||||
{
|
||||
string result = GetResultsDateGroupDirectory(resultConfiguration, description);
|
||||
string result = GetResultsDateGroupDirectory(resultSettings, description);
|
||||
if (includeResizeGroup)
|
||||
result = Path.Combine(result, outputResolution);
|
||||
if (includeModel && includePredictorModel)
|
||||
{
|
||||
string modelName;
|
||||
string predictorModelName;
|
||||
if (resultConfiguration.ModelName is null)
|
||||
if (resultSettings.ModelName is null)
|
||||
modelName = Model.Hog.ToString();
|
||||
else
|
||||
modelName = resultConfiguration.ModelName;
|
||||
if (resultConfiguration.PredictorModelName is null)
|
||||
modelName = resultSettings.ModelName;
|
||||
if (resultSettings.PredictorModelName is null)
|
||||
predictorModelName = PredictorModel.Large.ToString();
|
||||
else
|
||||
predictorModelName = resultConfiguration.PredictorModelName;
|
||||
string dateGroupDirectory = string.Concat(outputResolution.Replace(" ", string.Empty), "-", modelName, "-", predictorModelName, "-", resultConfiguration.NumberOfJitters, "-", resultConfiguration.NumberOfTimesToUpsample);
|
||||
predictorModelName = resultSettings.PredictorModelName;
|
||||
string dateGroupDirectory = string.Concat(outputResolution.Replace(" ", string.Empty), "-", modelName, "-", predictorModelName, "-", resultSettings.NumberOfJitters, "-", resultSettings.NumberOfTimesToUpsample);
|
||||
result = Path.Combine(result, dateGroupDirectory);
|
||||
}
|
||||
else if (includeModel)
|
||||
@ -105,35 +105,35 @@ internal abstract class XResult
|
||||
return result;
|
||||
}
|
||||
|
||||
internal static List<string> GetDirectoryInfoCollection(ResultConfiguration resultConfiguration, string sourceDirectory, string dateGroupDirectory, string contentDescription, string singletonDescription, string collectionDescription, bool converted)
|
||||
internal static List<string> GetDirectoryInfoCollection(ResultSettings resultSettings, string sourceDirectory, string dateGroupDirectory, string contentDescription, string singletonDescription, string collectionDescription, bool converted)
|
||||
{
|
||||
List<string> results = [];
|
||||
string sourceDirectorySegment = GetRelativePath(resultConfiguration, sourceDirectory);
|
||||
string sourceDirectorySegment = GetRelativePath(resultSettings, sourceDirectory);
|
||||
string result = string.Concat(Path.Combine(dateGroupDirectory, "<>"), sourceDirectorySegment);
|
||||
if (!string.IsNullOrEmpty(contentDescription))
|
||||
CheckContent(resultConfiguration, dateGroupDirectory, contentDescription, result);
|
||||
CheckContent(resultSettings, dateGroupDirectory, contentDescription, result);
|
||||
if (!string.IsNullOrEmpty(singletonDescription))
|
||||
CheckSingleton(resultConfiguration, dateGroupDirectory, singletonDescription, converted, result);
|
||||
CheckSingleton(resultSettings, dateGroupDirectory, singletonDescription, converted, result);
|
||||
if (!string.IsNullOrEmpty(collectionDescription))
|
||||
CheckCollection(resultConfiguration, dateGroupDirectory, collectionDescription, converted, result);
|
||||
CheckCollection(resultSettings, dateGroupDirectory, collectionDescription, converted, result);
|
||||
results.Add(result);
|
||||
return results;
|
||||
}
|
||||
|
||||
internal static string GetResultsGroupDirectory(ResultConfiguration resultConfiguration, string description, bool create)
|
||||
internal static string GetResultsGroupDirectory(ResultSettings resultSettings, string description, bool create)
|
||||
{
|
||||
string result = Path.Combine($"{resultConfiguration.RootDirectory}-Results", description.Replace('_', ')'));
|
||||
string result = Path.Combine($"{resultSettings.RootDirectory}-Results", description.Replace('_', ')'));
|
||||
if (create && !Directory.Exists(result))
|
||||
_ = Directory.CreateDirectory(result);
|
||||
return result;
|
||||
}
|
||||
|
||||
internal static List<string> GetDirectoryInfoCollection(ResultConfiguration resultConfiguration, string sourceDirectory, string description, string outputResolution, bool includeResizeGroup, bool includeModel, bool includePredictorModel, string contentDescription, string singletonDescription, string collectionDescription)
|
||||
internal static List<string> GetDirectoryInfoCollection(ResultSettings resultSettings, string sourceDirectory, string description, string outputResolution, bool includeResizeGroup, bool includeModel, bool includePredictorModel, string contentDescription, string singletonDescription, string collectionDescription)
|
||||
{
|
||||
List<string> results;
|
||||
bool converted = false;
|
||||
string dateGroupDirectory = GetResultsFullGroupDirectory(resultConfiguration, description, outputResolution, includeResizeGroup, includeModel, includePredictorModel);
|
||||
results = GetDirectoryInfoCollection(resultConfiguration, sourceDirectory, dateGroupDirectory, contentDescription, singletonDescription, collectionDescription, converted);
|
||||
string dateGroupDirectory = GetResultsFullGroupDirectory(resultSettings, description, outputResolution, includeResizeGroup, includeModel, includePredictorModel);
|
||||
results = GetDirectoryInfoCollection(resultSettings, sourceDirectory, dateGroupDirectory, contentDescription, singletonDescription, collectionDescription, converted);
|
||||
return results;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user