//Helps to automatically trigger the scanning of next finger if the //number of already captured fingers is less than 10 public void InitNextFingerScan(FingerDescription previousDescription, int previousFingerprintScanPosition) { _deviceManager = new NDeviceManager(); if (previousFingerprintScanPosition > 0) { _fingerprintScanPosition = previousFingerprintScanPosition; _FingerDescription = previousDescription; } else { _fingerprintCount = _formMain.GetActiveUserFingerRecordsCount(); if (_fingerprintCount <= 10) { //Get the next finger to be scanned using the previous scanned finger var next = (int)previousDescription; next += 1; _FingerDescription = (FingerDescription)next; _fingerprintScanPosition = next; } } _biometricClient = new NBiometricClient { UseDeviceManager = true, BiometricTypes = NBiometricType.Finger }; _biometricClient.Initialize(); _EnrollFromSingleFingerScanner = new EnrollFromScanner(this, _CaptureFingerNotifyer, _FingerDescription, _fingerprintScanPosition, _fingerprintCount) { CaptureFingerNotifyer = _CaptureFingerNotifyer, Dock = DockStyle.Fill, BiometricClient = _biometricClient }; Controls.Clear(); Controls.Add(_EnrollFromSingleFingerScanner); }
public EnrollFromScanner(FormCaptureSingleScannerFinger formCaptureSingleScannerFinger, CaptureFingerNotifyer _captureFingerNotifyer, FingerDescription fingerDescription, int fingerprintScanPosition, int fingerprintCount) { _fingerDescription = fingerDescription; _formSingleScanFinger = formCaptureSingleScannerFinger; _fingerprintCount = fingerprintCount; _fingerprintScanPosition = fingerprintScanPosition; InitializeComponent(); lblFingerprintScanCount.Text = _fingerprintCount.ToString(); }
public bool SaveBioRecord(NFinger finger, NSubject fingerSubject, FingerDescription fingerDescription, bool isTrue) { try { return(_CaptureFingerNotifyer(finger, fingerSubject, fingerDescription, isTrue)); } catch (Exception ex) { MessageBox.Show(ex.ToString()); return(false); } }
public FormCaptureSingleScannerFinger(FormMain formMain, CaptureFingerNotifyer captureFingerNotifyer, FingerDescription fingerDescription, int capturedFingersprintCount) { //Obtain Fingerprint Components Licenses try { _formMain = formMain; NLicense.ObtainComponents(Address, Port, FingerprintComponents); } catch (Exception ex) { MessageBox.Show(ex.ToString(), string.Empty, MessageBoxButtons.OK, MessageBoxIcon.Error); return; } _FingerDescription = fingerDescription; _fingerprintScanPosition = capturedFingersprintCount; _fingerprintCount = capturedFingersprintCount; _CaptureFingerNotifyer = captureFingerNotifyer; InitializeComponent(); _formMain.UpdateFingerInit(); _fingerDescriptions = new List <FingerDescription>(); EnumerateFingerDescription(); }
private int GetFingerIndex(FingerDescription fingerDescription) { switch (fingerDescription) { case FingerDescription.LFLittle: return(1); case FingerDescription.LFRing: return(2); case FingerDescription.LFMiddle: return(3); case FingerDescription.LFIndex: return(4); case FingerDescription.LFThumb: return(5); case FingerDescription.RFThumb: return(6); case FingerDescription.RFIndex: return(7); case FingerDescription.RFMiddle: return(8); case FingerDescription.RFRing: return(9); case FingerDescription.RFLittle: return(10); default: return(0); } }
internal bool SaveActiveUserFingerRecords(NFinger finger, NSubject fingerSubject, FingerDescription fingerDescription) { try { var buffArray = fingerSubject?.GetTemplateBuffer().ToArray(); var fRecord = new FingerImageRecord { FingerIndex = GetFingerIndex(fingerDescription), FingerDescription = fingerDescription, FingerRecord = finger?.Objects[0].Template, FingerSubject = fingerSubject, FingerTemplate = buffArray }; if (finger != null) { var wsq = finger.Image.Save(NImageFormat.Wsq); fRecord.FingerImage = finger.Image.ToBitmap(); fRecord.FingerWsq = wsq?.ToArray(); int fingersCount = 0; var status = CheckDuplicate(fRecord); return(status); } return(false); } catch (Exception ex) { MessageBox.Show(ex.Message); return(false); } }