Ejemplo n.º 1
0
        MinutiaMatcher DequeueMatcher(PreparedProbe probe)
        {
            MinutiaMatcher matcher = DequeueMatcher();

            matcher.SelectProbe(probe.ProbeIndex);
            return(matcher);
        }
Ejemplo n.º 2
0
        public float[] Match(PreparedProbe probe, IList<Template> candidates)
        {
            float[] scores = new float[candidates.Count];
            
            Parallel.For(0, candidates.Count,
                () => DequeueMatcher(probe),
                (i, state, matcher) => { scores[i] = matcher.Match(candidates[i]); return matcher; },
                (matcher) => { EnqueueMatcher(matcher); });

            return scores;
        }
Ejemplo n.º 3
0
        public float[] Match(PreparedProbe probe, IList <Template> candidates)
        {
            float[] scores = new float[candidates.Count];

            Parallel.For(0, candidates.Count,
                         () => DequeueMatcher(probe),
                         (i, state, matcher) => { scores[i] = matcher.Match(candidates[i]); return(matcher); },
                         (matcher) => { EnqueueMatcher(matcher); });

            return(scores);
        }
Ejemplo n.º 4
0
 public PreparedProbe Prepare(Template probe)
 {
     PreparedProbe prepared = new PreparedProbe();
     MinutiaMatcher matcher = DequeueMatcher();
     try
     {
         matcher.BuildIndex(probe, prepared.ProbeIndex);
     }
     finally
     {
         EnqueueMatcher(matcher);
     }
     return prepared;
 }
Ejemplo n.º 5
0
        public PreparedProbe Prepare(Template probe)
        {
            PreparedProbe  prepared = new PreparedProbe();
            MinutiaMatcher matcher  = DequeueMatcher();

            try
            {
                matcher.BuildIndex(probe, prepared.ProbeIndex);
            }
            finally
            {
                EnqueueMatcher(matcher);
            }
            return(prepared);
        }
Ejemplo n.º 6
0
 MinutiaMatcher DequeueMatcher(PreparedProbe probe)
 {
     MinutiaMatcher matcher = DequeueMatcher();
     matcher.SelectProbe(probe.ProbeIndex);
     return matcher;
 }