Types of AbstractDrivers

I would like to create a driver for a device that passes data via OPCXML. I’ve make a tag provider and that works alright, but I’d like to have support for multiple devices, user configuration, and some method of distinguishing tags that are in use, as opposed to tags that could potentially be used, but are not currently being looked at.

While digging around in the SDK, I’ve seen AbstractDriver, AbstractIODelegatingDriver, AbstractNIODriver, AbstractTagDriver, and NodeMapDriver. What are the differences between these types of drivers? Is there a particular one that I should be using? Are there other drivers to extend from?

Your best bet is to either extend AbstractTagDriver or just implement the Driver interface directly. It’s definitely not necessary to use one of the provided base classes.

AbstractTagDriver is really easy to get going, but doesn’t have the performance necessary for more than a handful of tags. It’s just meant to make it very easy to get some values you control exposed as tags via a UA driver.