59 lines
2.4 KiB
C#
59 lines
2.4 KiB
C#
using MetadataExtractor;
|
|
using View_by_Distance.Shared.Models;
|
|
|
|
namespace View_by_Distance.Metadata.Models.Stateless.Methods;
|
|
|
|
public interface IMetadata
|
|
{
|
|
|
|
enum DistanceUnit
|
|
{
|
|
Miles,
|
|
NauticalMiles,
|
|
Kilometers,
|
|
Meters
|
|
}
|
|
|
|
public static ExifDirectory GetExifDirectory(FilePath filePath) =>
|
|
Exif.GetExifDirectory(filePath);
|
|
|
|
public static FaceFile? GetFaceFile(ExifDirectory? exifDirectory) =>
|
|
Face.GetFaceFile(exifDirectory);
|
|
|
|
public static GeoLocation? GeoLocation(ExifDirectory? exifDirectory) =>
|
|
GPS.GeoLocation(exifDirectory?.GpsDirectories);
|
|
|
|
public static string? GetOutputResolution(ExifDirectory? exifDirectory) =>
|
|
Face.GetOutputResolution(exifDirectory?.PngDirectories);
|
|
|
|
public static string? GetRawFaceEncoding(ExifDirectory? exifDirectory) =>
|
|
Face.GetFaceEncoding(exifDirectory?.PngDirectories);
|
|
|
|
public static FaceEncoding? GetFaceEncoding(ExifDirectory? exifDirectory) =>
|
|
Face.GetFaceEncoding(exifDirectory);
|
|
|
|
public static double? GetDistance(double originLatitude, double originLongitude, double destinationLatitude, double destinationLongitude, int decimalPlaces = 1, DistanceUnit distanceUnit = DistanceUnit.Miles) =>
|
|
GPS.GetDistance(originLatitude, originLongitude, destinationLatitude, destinationLongitude, decimalPlaces, distanceUnit);
|
|
|
|
internal ExifDirectory TestStatic_GetExifDirectory(FilePath filePath) =>
|
|
GetExifDirectory(filePath);
|
|
|
|
internal GeoLocation? TestStatic_GeoLocation(ExifDirectory? exifDirectory) =>
|
|
GeoLocation(exifDirectory);
|
|
|
|
internal string? TestStatic_GetRawFaceEncoding(ExifDirectory? exifDirectory) =>
|
|
GetRawFaceEncoding(exifDirectory);
|
|
|
|
internal string? TestStatic_GetOutputResolution(ExifDirectory? exifDirectory) =>
|
|
GetOutputResolution(exifDirectory);
|
|
|
|
internal static FaceFile? TestStatic_GetFaceFile(ExifDirectory? exifDirectory) =>
|
|
GetFaceFile(exifDirectory);
|
|
|
|
internal FaceEncoding? TestStatic_GetFaceEncoding(ExifDirectory? exifDirectory) =>
|
|
GetFaceEncoding(exifDirectory);
|
|
|
|
internal double? TestStatic_GetDistance(double originLatitude, double originLongitude, double destinationLatitude, double destinationLongitude, int decimalPlaces = 1, DistanceUnit distanceUnit = DistanceUnit.Miles) =>
|
|
GetDistance(originLatitude, originLongitude, destinationLatitude, destinationLongitude, decimalPlaces, distanceUnit);
|
|
|
|
} |