コード例 #1
0
 public void SetData(BlinkLinkEyeClickData other)
 {
     ShortLeftWinkAction   = other.ShortLeftWinkAction;
     ShortRightWinkAction  = other.ShortRightWinkAction;
     LongLeftWinkAction    = other.LongLeftWinkAction;
     LongRightWinkAction   = other.LongRightWinkAction;
     BlinkAction           = other.BlinkAction;
     ShortWinkTime         = other.ShortWinkTime;
     LongWinkTime          = other.LongWinkTime;
     SoundOption           = other.SoundOption;
     EyeStatusWindowOption = other.EyeStatusWindowOption;
     SwitchEyes            = other.SwitchEyes;
 }
コード例 #2
0
 public EyeClickerFiniteStateMachine(BlinkLinkEyeClickData blinkLinkEyeClickData, EyeStatusWindow eyeStatusWindow)
 {
     this.blinkLinkEyeClickData = blinkLinkEyeClickData;
     this.eyeStatusWindow       = eyeStatusWindow;
     leftEyeStatusList          = new List <EyeStatus>();
     rightEyeStatusList         = new List <EyeStatus>();
     leftEyeClosedTime          = 0;
     rightEyeClosedTime         = 0;
     leftEyeState         = EyeClickState.EyeOpen;
     rightEyeState        = EyeClickState.EyeOpen;
     noActionImageSet     = true;
     mouseEventImageTimer = -1;
     isDragging           = false;
 }
コード例 #3
0
 public EyeClicker(CMSTrackingSuiteAdapter cmsTrackingSuiteAdapter,
                   BlinkLinkEyeClickData blinkLinkEyeClickData)
 {
     workerUpdateDataMutex = new object();
     eyeStatusWindow       = (EyeStatusWindow)cmsTrackingSuiteAdapter.CreateForm(typeof(EyeStatusWindow));
     eyeClickerResetOnly   = false;
     timer = new Stopwatch();
     this.blinkLinkEyeClickData   = blinkLinkEyeClickData;
     this.cmsTrackingSuiteAdapter = cmsTrackingSuiteAdapter;
     leftEyeBlinkDetector         = new NccBlinkDetector(true, cmsTrackingSuiteAdapter);
     rightEyeBlinkDetector        = new NccBlinkDetector(false, cmsTrackingSuiteAdapter);
     stageTime               = 0;
     firstUpdate             = true;
     currentStage            = Stages.Start;
     waitHandler             = new AutoResetEvent(false);
     updateDataMutex         = new object();
     updateData              = null;
     xDistanceBetweenEyesSet = false;
     workerThread            = new Thread(new ThreadStart(workerThreadMain));
     workerThread.Priority   = ThreadPriority.Highest;
     workerThread.Start();
     clickerFSM = new EyeClickerFiniteStateMachine(blinkLinkEyeClickData, eyeStatusWindow);
 }
コード例 #4
0
 public BlinkLinkEyeClickData(BlinkLinkEyeClickData other) :
     this(other.shortLeftWinkAction, other.shortRightWinkAction, other.longLeftWinkAction,
          other.longRightWinkAction, other.blinkAction, other.shortWinkTime, other.longWinkTime,
          other.SoundOption, other.EyeStatusWindowOption, other.SwitchEyes)
 {
 }
コード例 #5
0
 public BlinkLinkClickControlModule()
 {
     blinkLinkEyeClickData      = new BlinkLinkEyeClickData();
     extraInfoPassedLastProcess = false;
 }