Update to 0.9.1 (#46)

* Begin refactor

Signed-off-by: Ayane Satomi <ayane@vignetteapp.org>

* Begin IntPtr sweeping changes

Signed-off-by: Ayane Satomi <ayane@vignetteapp.org>

* Implement StringPacket

Signed-off-by: Ayane Satomi <ayane@vignetteapp.org>

* Implement StringPacket

Signed-off-by: Ayane Satomi <ayane@vignetteapp.org>

* Remove factory class to prepare for strongly typed packets

Signed-off-by: Ayane Satomi <ayane@vignetteapp.org>

* Finish FloatVectorPacket

Signed-off-by: Ayane <ayane@vignetteapp.org>

* Finish Anchor3DVectorPacket and BoolPacket

Signed-off-by: Ayane <ayane@vignetteapp.org>

* Make SerializedProto actually IDisposable

Signed-off-by: Ayane <ayane@vignetteapp.org>

* Finish ClassificationListPacket

Signed-off-by: Ayane <ayane@vignetteapp.org>

* Finish ClassificationListVectorPacket

Signed-off-by: Ayane <ayane@vignetteapp.org>

* Finish DetectionPacket

Signed-off-by: Ayane <ayane@vignetteapp.org>

* Finish DetectionVectorPacket

Signed-off-by: Ayane <ayane@vignetteapp.org>

* Finish FaceGeometryPacket

Signed-off-by: Ayane <ayane@vignetteapp.org>

* Finish FaceGeometryVectorPacket

Signed-off-by: Ayane <ayane@vignetteapp.org>

* Finish FloatArrayPacket

Signed-off-by: Ayane <ayane@vignetteapp.org>

* Fix mismatched extern call for FloatVector

This is potentially lethal and can cause a really bad bug on use

Signed-off-by: Ayane <ayane@vignetteapp.org>

* Finish FloatPacket

Signed-off-by: Ayane <ayane@vignetteapp.org>

* Finish FrameAnnotationPacket

Signed-off-by: Ayane <ayane@vignetteapp.org>

* Finish GpuBufferPacket

Converting the entirety of the GPU PInvoke code was also performed, it was unavoidable

Signed-off-by: Ayane <ayane@vignetteapp.org>

* Update imageFrame

This is kind of butchered but we will have a span-based overload again when I feel like it

Signed-off-by: Ayane <ayane@vignetteapp.org>

* Reintroduce the memory safe iamge handling again

Signed-off-by: Ayane <ayane@vignetteapp.org>

* Porting ImageFrame is an act of god ong

Signed-off-by: Ayane <ayane@vignetteapp.org>

* Finish ImageFramePacket

Signed-off-by: Ayane <ayane@vignetteapp.org>

* Finish IntPacket

Signed-off-by: Ayane <ayane@vignetteapp.org>

* Fix pointer ambiguity in MpResourceHandle

Signed-off-by: Ayane Satomi <ayane@vignetteapp.org>

* Let MpResourceHandle use its private property handle

Signed-off-by: Ayane Satomi <ayane@vignetteapp.org>

* Finish LandmarkListPacket

Signed-off-by: Ayane <ayane@vignetteapp.org>

* Finish LandmarkListVectorPacket

Signed-off-by: Ayane <ayane@vignetteapp.org>

* Finish NoramlizedLandmarkListPacket

Signed-off-by: Ayane <ayane@vignetteapp.org>

* Finish MatrixPacket

Signed-off-by: Ayane <ayane@vignetteapp.org>

* Finish NormalizedRectPacket

Signed-off-by: Ayane <ayane@vignetteapp.org>

* Finish normalizedVectorRect

Signed-off-by: Ayane <ayane@vignetteapp.org>

* Finish RectPacket

Signed-off-by: Ayane <ayane@vignetteapp.org>

* Finsih RectVector

Signed-off-by: Ayane <ayane@vignetteapp.org>

* Finish all Packets

Signed-off-by: Ayane <ayane@vignetteapp.org>

* Fixup CalculatorGraph for generic Packet types

Signed-off-by: Ayane <ayane@vignetteapp.org>

* a

Signed-off-by: Ayane <ayane@vignetteapp.org>

* Deprecate Solutions class

As there is no maintainers for it, it doesn't seem worth keeping it for now. We will put it on it's own package instead

Signed-off-by: Ayane <ayane@vignetteapp.org>

* Forgot to commit this 💀

Signed-off-by: Ayane <ayane@vignetteapp.org>

* Fix more casting issues

Signed-off-by: Ayane <ayane@vignetteapp.org>

* Make sure native methods are marshaled properly

Signed-off-by: Ayane <ayane@vignetteapp.org>

* Update some tests

Signed-off-by: Ayane Satomi <ayane@vignetteapp.org>

* Add an even more memory safe ctor for ImageFrame

Signed-off-by: Ayane Satomi <ayane@vignetteapp.org>

* Fix tests lmao

Signed-off-by: Ayane Satomi <ayane@vignetteapp.org>

* Fix StringPacket not pointing to a ptr

Signed-off-by: Ayane Satomi <ayane@vignetteapp.org>

* Fix incorrect test facts provided on cases

Signed-off-by: Ayane Satomi <ayane@vignetteapp.org>

---------

Signed-off-by: Ayane Satomi <ayane@vignetteapp.org>
Signed-off-by: Ayane <ayane@vignetteapp.org>
This commit is contained in:
Ayase Minori
2023-02-22 14:01:27 +08:00
committed by GitHub
parent 9291052f65
commit 0edfd693eb
119 changed files with 2141 additions and 1931 deletions

View File

@ -0,0 +1,39 @@
// Copyright (c) homuler and The Vignette Authors
// This file is part of MediaPipe.NET.
// MediaPipe.NET is licensed under the MIT License. See LICENSE for details.
using System;
using Mediapipe.Net.Framework.Port;
using Mediapipe.Net.Native;
namespace Mediapipe.Net.Framework.Packets
{
public class FaceGeometryPacket : Packet<FaceGeometry.FaceGeometry>
{
public FaceGeometryPacket() : base() { }
public FaceGeometryPacket(IntPtr ptr, bool isOwner = true) : base(ptr, isOwner) { }
public FaceGeometryPacket? At(Timestamp timestamp) => At<FaceGeometryPacket>(timestamp);
public override FaceGeometry.FaceGeometry Get()
{
UnsafeNativeMethods.mp_Packet__GetFaceGeometry(MpPtr, out var serializedProtoVectorPtr).Assert();
GC.KeepAlive(this);
var geometry = serializedProtoVectorPtr.Deserialize(FaceGeometry.FaceGeometry.Parser);
serializedProtoVectorPtr.Dispose();
return geometry;
}
public override StatusOr<FaceGeometry.FaceGeometry> Consume()
{
throw new NotSupportedException();
}
public override Status ValidateAsType()
{
throw new NotSupportedException();
}
}
}