L2SS-1264 & L2SS-1257: AsyncDevice and improved beamtracking for digitalbeam and tilebeam

Merged Corné Lukken requested to merge l2ss-1264-v2 into master

This patch introduces PyTango asyncio greenmode devices and takes into account limitations and responsibilities when inheriting LOFARDevice. These limitations are extensively documented in the related classes and methods. It then uses the new AsyncDevice as a baseclass for BeamDevice making devices like digitalbeam and tilebeam use asyncio.

It converts any methods of these sets of classes to be async methods sparsely only when needed to improve the timing of multiple concurrent beamtrackers.

Lastly, the timing interval of multi beam trackers is verified in an integration test.

Closes: L2SS-1264 Closes: L2SS-1257

Edited by Corné Lukken

Merge request reports