1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using MathNet.Numerics.LinearAlgebra.Single;
- namespace bbiwarg.InputProviders
- {
- public enum DetectionStatus
- {
- Inactive,
- Detected,
- Tracked
- }
- public enum HandSide
- {
- Unknown,
- Left,
- Right
- }
- interface IInputProvider
- {
- void init();
- void start();
- void stop();
- void updateFrame();
- void releaseFrame();
- float getFrameRate();
- float getHFOV();
- float getVFOV();
- bool isActive();
- InputFrame getInputFrame();
- /*
- * all handIndices have to be 1 or 2
- */
- bool isHandOpen(uint handIndex);
- Vector getPalmPosition3D(uint handIndex);
- Vector getPalmPosition2D(uint handIndex);
- Vector getTipPosition3D(uint handIndex);
- Vector getForearmPosition3D(uint handIndex);
- Vector getPalmNormal3D(uint handIndex);
- DetectionStatus[] getFingerStatus(uint handIndex);
- DetectionStatus getHandStatus(uint handIndex);
- Vector[] getFingerTipPositions3D(uint handIndex);
- Vector[] getFingerTipPositions2D(uint handIndex);
- HandSide getHandSide(uint handIndex);
- void pauseMovie();
- void unpauseMovie();
- bool sourceIsMovie();
- void reversePlay();
- }
- }
|