Implement Rot.get_parm()

This commit is contained in:
Daniele Forsi IU5HKX 2025-06-15 15:13:05 +02:00
parent 8093f05c65
commit 5d142de5cd
2 changed files with 15 additions and 0 deletions

View file

@ -77,6 +77,7 @@ class TestClass:
value.i = 5
assert rot.set_parm(Hamlib.ROT_PARM_NONE, value) is None
assert rot.get_parm(Hamlib.ROT_PARM_NONE) is None # FIXME should Dummy support this?
assert rot.close() is None
assert rot.state.comm_state == 0

View file

@ -152,6 +152,20 @@ typedef struct Rot {
return PyLong_FromLong(val.i);
}
PyObject * get_parm(setting_t parm)
{
value_t val;
self->error_status = rot_get_parm(self->rot, parm, &val);
if (self->error_status != RIG_OK)
return Py_None;
if (ROT_PARM_IS_FLOAT(parm))
return PyFloat_FromDouble(val.f);
return PyLong_FromLong(val.i);
}
/* TODO: get_conf_list, .. */
};