Configuring the Driver

IviLxiSync

IviLxiSync Reference  

Configuring the Driver

The IVI Configuration Store is part of the IVI Shared Components distributed by the IVI Foundation. The IVI Configuration Store serves as a central repository for driver registration information. Physically, the IVI Configuration Store is an XML file installed by the IVI Shared Component Installer in the following directory:
<IviInstallDir>\Data\IviConfigurationStore.xml.
where, <IviInstallDir> is typically C:\Program Files\IVI.

The IviLxiSync installer populates the IVI Configuration Store (Config Store) with the required entries for using the driver. Specifically, the driver installer adds a Software Module entry to the Config Store to represent the driver DLL itself. No other entries in the Config Store are created by the driver. If you only wish to access the instrument specific functionality of the driver, then no other entries in the Config Store are required.

To use the driver in application programs that will be interchangeable, you must edit the Config Store and add a few specific entries. Instrument vendors and other third parties provide graphical tools for conveniently editing the Config Store. One such popular tool is NI-MAX from National Instruments.

Note   Although the IVI Configuration Store is a human readable XML file, the IVI Foundation strongly discourages you from directly editing this file. The Config Store file is highly self-referential and easily corrupted if directly modified. Instead, use one of the available third-party editors (such as NI-MAX from National Instruments). Alternatively, the IVI Shared Components include a programmatic interface to the Config Store, known as the IVI Configuration Server.

Editing the IVI Configuration Store

The driver installer creates only one entry in the Config Store -- the Software Module. This entry is removed by the driver uninstaller. End users should never modify the Software Module entry.

To author test programs that allow for interchangeability, you must create three additional entries in the Config Store:

  • Hardware Asset
  • Driver Session
  • Logical Name

The following sections provide descriptions of each of the Config Store entries mentioned here. Consult the documentation for your Config Store editor for detailed instructions on modifying these items.

Software Module

The Software Module identifies the instrument driver DLL, as well as various pieces of important driver information, such as the physical repeated capability names used for the repeated capabilities, IVI compliance information, as well as a variety of other items.

Hardware Asset

The Hardware Asset identifies a specific piece of instrument hardware. The main purpose of the Hardware Asset is to house the I/O resource descriptor used to communicate with the device.

Driver Session

The Driver Session associates the Software Module with the Hardware Asset. The Driver Session also specifies such things as driver initialization values and mappings between physical repeated capability names and virtual repeated capability names. Virtual names are used by client programs to access repeated capabilities in an interchangeable fashion.

For a dicussion of repeated capabilities, physical names, and virtual names, see the Repeated Capabilities topic in the IVI Backgrounder.

Users create a separate Driver Session for each unique combination of driver software, instrument hardware, and initialization settings. You may have multiple Driver Sessions for the same Software Module, if, for instance, the driver is being used to control several instances of the same instrument at different GPIB addresses.

Logical Name

The Logical Name allows users to associate an arbitrary name with a Driver Session. Since the Driver Session is tied to a particular driver and instrument, a level of indirection is needed to abstract these details in interchangeable client applications. The Logical Name serves as this extra level of abstraction -- a simple string identifier for a Driver Session.

The Logical Name is what client programs must use to build interchangeable systems. Applications create instances of drivers by using the COM Session Factory and specifying the Logical Name. Thus, no instrument-specific details exist in the client program. Swapping instruments in such a system involves merely associating the Logical Name in the Config Store with a different Driver Session (i.e. a different driver-instrument combination).