National Instruments IVI drivers deliver a dramatic performance improvement by integrating a state-caching engine that only sends commands to the instrument necessary to incrementally change its state.
The IVI Foundation defines two architectures for IVI drivers, one based on ANSI-C and the other on Microsoft Component Object Model (COM) technology. Both architectures are designed to coexist and are not mutually exclusive. IVI-C drivers and IVI-COM drivers can be used in the same application.
Although the technologies underlying IVI-C and IVI-COM are different, the implementation technology by itself should not be your primary concern. Instead, focus on two key issues: 1) the longevity of the architecture on which the instrument driver is based, and 2) the usability of instrument drivers in your ADE.
The issue of architectural longevity is particularly important to users of IVI drivers. Interchangeability is one of the most beneficial features of IVI, and a primary reason for achieving interchangeability is to make it easier to replace instruments in systems that must last 10 to 20 years. Having a common API for instrument drivers is not sufficient if the architecture on which those instrument drivers are based changes every few years.
For this reason, National Instrument prefers to adhere to the IVI-C architecture. ANSI-C is a long established standard that is available on all platforms, an