private void EventThreadProc() { while (!StoppingThread) { BadgeEvent.WaitOne(); if (CancelOps) { return; } Clock.Stop(); WaitDoor = true; OpenDoor(); Clock.Start(); CptDoor = 10; DoorEventNormal.Reset(); if (DoorEventNormal.WaitOne(10000, false)) { continue; // next loop iteration } WaitDoor = false; WaitDoor = false; DisplayBadge = false; CloseDoor(); CurrenRfidReader.NotifyRelock(); Clock.Start(); } if (ThreadEvent != null) { ThreadEvent.Set(); } }
public void StopScan() { if (CurrenRfidReader.IsInScan) { LogToFile.LogMessageToFile("InScan - Stop it"); CurrenRfidReader.RequestEndScan(); } }
public bool ScanDevice(uint dcu, byte axis) { if ((axis > 16)) { return(false); } if ((dcu > 168)) { return(false); } if ((!CurrenRfidReader.IsConnected) || ((CurrenRfidReader.IsInScan) && (CurrenRfidReader.Door_Status != Door_Status.Door_Close))) { return(false); } CurrenRfidReader.DeviceBoard.sendSwitchCommand(1, axis); Thread.Sleep(10); CurrenRfidReader.RequestScan3D(true, true); return(true); }
public void CloseDoor() { CurrenRfidReader.CloseDoorMaster(); }
public void OpenDoor() { CurrenRfidReader.OpenDoorMaster(); }
private void EventThreadProc() { while (!StoppingThread) { LogToFile.LogMessageToFile("------Wait Badge ------"); badgeset = false; while (!badgeset) { if (CancelOps) { return; } NonBlockingSleep(1000); } //BadgeEvent.WaitOne(); // if (CancelOps) return; LogToFile.LogMessageToFile("Event Badge received in thread"); Clock.Stop(); WaitDoor = true; StopScan(); LogToFile.LogMessageToFile("Unlock door in thread"); OpenDoor(); Clock.Start(); CptDoor = 10; DoorEventNormal.Reset(); LogToFile.LogMessageToFile("------Wait Door Close ------"); if (DoorEventNormal.WaitOne(10000, false)) { LogToFile.LogMessageToFile("------Door Close event ----"); CloseDoor(); continue; // next loop iteration as the process will continue to classic door event } else { LogToFile.LogMessageToFile("------Door Close timeout ----"); } if (LedThread != null) { LedThread.Abort(); LedThread.Join(1000); LedThread = null; } Thread.Sleep(500); WaitDoor = false; DisplayBadge = false; //if ((CurrenRfidReader != null) && (CurrenRfidReader.IsConnected)) CurrenRfidReader.SetLightPower(300); CloseDoor(); if (CurrenRfidReader != null) { CurrenRfidReader.NotifyRelock(); } Clock.Start(); } if (ThreadEvent != null) { ThreadEvent.Set(); } }
public void CloseDoor() { LogToFile.LogMessageToFile("lock cmd sent"); CurrenRfidReader.CloseDoorMaster(); }
public void OpenDoor() { LogToFile.LogMessageToFile("Unlock cmd sent"); CurrenRfidReader.OpenDoorMaster(); }