using System; using System.Collections.Generic; using System.Drawing; using MathNet.Numerics.LinearAlgebra.Single; namespace bbiwarg.DataSource { public enum DetectionStatus { Inactive, Detected, Tracked } public enum HandSide { Unknown, Left, Right } interface IVideoHandle { void nextFrame(); short getDepth(int x, int y); short getConfidence(int x, int y); Color getColor(int x, int y); // TODO: implement properly void createVertexArray(IntPtr vertexBuffer); Vector pixel2VertexPosition(Vector pixelPosition); DetectionStatus[] getFingerStatus(uint handIndex); Vector[] getFingerTipPositions3D(uint handIndex); Vector getPalmPosition3D(uint handIndex); Vector getPalmNormal3D(uint handIndex); Vector getForearmPosition3D(uint handIndex); Vector getForeFingerPosition3D(uint handIndex); List getHandPoints(); Palm getPalm(uint handIndex); int getWidth(); int getHeight(); } }