This library attemps to standardize master-slave communications, still widely used in automation and embedded applications.
Usually, the PC is a master connected with some kind of link to one or more slaves. The ntd-data library puts an abstraction layer on the link device (the #NtdDevice class) and another one on the protocol to use while communicating (the #NtdProtocol class).
While the device abstraction is a relative easy task to reach, the protocol standardization is an extremely complex task. Every brand uses its own proprietary protocol, and no attemps were made to implement a basic standard.
Anyway, the most used operations, such as reading or writing the variable contents, are implemented (with very different solutions) by all the protocols. An abstraction of this basic commands can save a lot of job, allowing the developement of some applications, such as supervisioning and monitoring programs, in a device independent way.
This is the main and only task of this library.