Refactor get_level using the macros AMP_LEVEL_*

Daniele Forsi IU5HKX 2025-05-25 22:00:21 +02:00
rodzic 73146355c2
commit fa70f80558
1 zmienionych plików z 5 dodań i 20 usunięć

Wyświetl plik

@ -154,27 +154,12 @@ typedef struct Amp {
if (self->error_status != RIG_OK) if (self->error_status != RIG_OK)
return Py_None; return Py_None;
switch (level) if (AMP_LEVEL_IS_FLOAT(level))
{ return PyFloat_FromDouble(val.f);
case AMP_LEVEL_SWR: else if (AMP_LEVEL_IS_STRING(level))
case AMP_LEVEL_PF: return PyUnicode_FromString(val.s);
return PyFloat_FromDouble(val.f);
case AMP_LEVEL_NH: return PyLong_FromLong(val.i);
case AMP_LEVEL_PWR_INPUT:
case AMP_LEVEL_PWR_FWD:
case AMP_LEVEL_PWR_REFLECTED:
case AMP_LEVEL_PWR_PEAK:
return PyLong_FromLong(val.i);
case AMP_LEVEL_FAULT:
return PyUnicode_FromString(val.s);
default:
self->error_status = -RIG_EINVAL;
}
return Py_None;
} }
AMPMETHOD1GET(get_powerstat, powerstat_t) AMPMETHOD1GET(get_powerstat, powerstat_t)