]> sigrok.org Git - libsigrok.git/commit
input: add confidence (detection strength) to format_match()
authorGerhard Sittig <redacted>
Sat, 12 May 2018 09:25:36 +0000 (11:25 +0200)
committerUwe Hermann <redacted>
Thu, 17 May 2018 20:23:35 +0000 (22:23 +0200)
commit54ee427df0d923c8e17f3dc8ee57552b6c5fd57b
tree52005be6abf6aba137e52e14f56d6d17bdbb9b1e
parent7102443a4adb1743c5a053deee8fd2a93670fc19
input: add confidence (detection strength) to format_match()

When users don't specify the input format, applications can try to have
the format auto-detected. Some of the tests were weak and could result
in false positives.

Add a 'confidence' parameter to the input modules' format_match()
method. Claim high confidence (1) for those formats which can check
magic strings or the presence of essential keywords (vcd, wav). Claim
medium confidence (10) for those formats which happened to mis-detect
inputs in the past (trace32_ad). Claim weak confidence (100) for those
formats which totally lack reliable conditions and rather guess than
detect (chronovu_la8).

Prefer the best match in public scan routines. Return at most one module
to callers even if multiple modules matched, to keep the current API.

This addresses part of bug #1200.
src/input/chronovu_la8.c
src/input/input.c
src/input/trace32_ad.c
src/input/vcd.c
src/input/wav.c
src/libsigrok-internal.h