Wenn die
DLL keinen "Neue Daten sind da"-Callback anbietet, bleibt dir wohl nix anderes übrig.
Aber du kannst die Pollfrequenz an die Abtastfrequenz anpassen. (Pause bis zu den nächsten Daten berechnen)
Das Ganze könnte man in einem Thread machen und würde bei vorhandenen Daten ein Ereignis auslösen/aufrufen.
Was passiert eigentlich, wenn man mal vergißt Daten abzufragen?
Also wenn mehrere Datenblöcke eingetroffen sind, während der letzen Abfrage.
Oder wenn neue Daten eintreffen, während man gerade am Abfragen ist?