IVI Class Drivers Overview
IVI class drivers implement functions and attributes for controlling an instrument within a specified class, as defined by the IVI Foundation.
Each IVI class driver consists of generic code that can call IVI instrument specific drivers. Through configuration you can switch between various specific drivers, achieving interchangeability. By using IVI class drivers in your test program, you can change hardware without changing test code or recompiling your application.
The following figure shows how a class driver redirects function calls from a test program to the correct specific driver.
The IVI Foundation manages the definition of the instrument classes. The IVI Foundations charter is to define flexible programming interfaces for instrument classes that meet the needs of test system developers. The IVI Foundation has created specifications for common instrument classes. The IVI Foundation specifications define a standard Application Programming Interface (API) for each instrument class.
The National Instruments IVI class drivers conform to the IVI Foundation specifications. For example, the oscilloscope class contains a collection of attributes that are common to all oscilloscopes, such as vertical range, offset, timebase, trigger mode, and so on. The class also contains functions that set these attributes or retrieve data from the instrument, such as ConfigureChannel, ConfigureAcquisitionRecord, ReadWaveform, and so on. IVI class specifications give a standard definition for each of these functions and attributes for an oscilloscope. Programmers use these specifications to write test programs that work with any oscilloscope.