output/analog: add support for sound pressure level
This commit is contained in:
parent
bde4f4296d
commit
258eeb77b8
|
@ -143,6 +143,27 @@ static void fancyprint(int unit, int mqflags, float value, GString *out)
|
||||||
case SR_UNIT_DECIBEL_VOLT:
|
case SR_UNIT_DECIBEL_VOLT:
|
||||||
si_printf(value, out, "dBV");
|
si_printf(value, out, "dBV");
|
||||||
break;
|
break;
|
||||||
|
case SR_UNIT_DECIBEL_SPL:
|
||||||
|
if (mqflags & SR_MQFLAG_SPL_FREQ_WEIGHT_A)
|
||||||
|
si_printf(value, out, "dB(A)");
|
||||||
|
else if (mqflags & SR_MQFLAG_SPL_FREQ_WEIGHT_C)
|
||||||
|
si_printf(value, out, "dB(C)");
|
||||||
|
else if (mqflags & SR_MQFLAG_SPL_FREQ_WEIGHT_Z)
|
||||||
|
si_printf(value, out, "dB(Z)");
|
||||||
|
else
|
||||||
|
/* No frequency weighting, or non-standard "flat" */
|
||||||
|
si_printf(value, out, "dB(SPL)");
|
||||||
|
if (mqflags & SR_MQFLAG_SPL_TIME_WEIGHT_S)
|
||||||
|
g_string_append(out, " S");
|
||||||
|
else if (mqflags & SR_MQFLAG_SPL_TIME_WEIGHT_F)
|
||||||
|
g_string_append(out, " F");
|
||||||
|
if (mqflags & SR_MQFLAG_SPL_LAT)
|
||||||
|
g_string_append(out, " LAT");
|
||||||
|
else if (mqflags & SR_MQFLAG_SPL_PCT_OVER_ALARM)
|
||||||
|
/* Not a standard function for SLMs, so this is
|
||||||
|
* a made-up notation. */
|
||||||
|
g_string_append(out, " %oA");
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
si_printf(value, out, "");
|
si_printf(value, out, "");
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue