Copyright ã1995 by NeXT Computer, Inc.  All Rights Reserved.

IOConfigurationInspector

Adopted By:	IODeviceInspector class
IODisplayInspector class

Declared In:	driverkit/IODeviceInspector.h

Protocol Description

The IOConfigurationInspector protocol is adopted by inspectors that are loaded into the Configure application. Each inspector lets the user inspect and set information about a device, such as a specific brand of Ethernet card. The inspector stores this information in an NXStringTable that is specified to the inspector with the setTable: method.

The default, customizable inspector implemented by the IODeviceInspector class is sufficient for many devices. However, if IODeviceInspector doesn't suit your configuration needs, you should implement your own inspector class that adopts the IOConfigurationInspector protocol. An example of adopting this protocol is under /NextLibrary/Documentation/NextDev/Examples/DriverKit in the DriverInspector directory.

Method Types

Get the inspector's View	- inspectionView

Notify that resources have changed
- resourcesChanged

Set the description table	- setTable

Instance Methods

inspectionView

- (View *)inspectionView

Returns the View of the inspector.

resourcesChanged:

- resourcesChanged:(IOResources *)resources 

The Configure application sends this message to all inspectors whenever an interrupt, DMA channel, I/O port, or memory range is chosen or dropped in any inspector. This method should check for conflicts and update the UI. 

This message is sent as often as you might need it, including immediately after a setTable: and after your own changes. You are guaranteed to be deactivated before your current table is freed, but you will not receive a setTable:nil, so don't count on accessing or modifying the table except in response to a user action.

setTable:

- setTable:(NXStringTable *)anObject 

Sets the NXStringTable describing the inspector's device to anObject. You should update the UI when setTable: gives you a table to inspect. Your object should keep a handle to the table. When the user makes changes, immediately update the table; do not use OK/Revert buttons.