About This Sample

	This sample illustrates the preferred method of discovering and probing devices on SCSI Parallel host controllers under Mac OS X. Mac OS X’s SCSI Parallel subsystem is implemented much differently from that of OS 9. Under OS X, the model is to reprobe individual targets, rather than to force an entire bus rescan. This model provides better overall efficiency of the subsystem.
	
	There are two parts to this example, a Cocoa app which displays and reprobes target devices and a command line utility which reprobes a target device on a particular SCSI Domain. Both the command line utility and the Cocoa app include the same common code which actually performs the reprobe (it's located in Probing.h and Probing.c in the Common Code directory).
	
	In addition, the Cocoa app which is part of this sample makes use of a technology new to Mac OS X 10.3 “Panther”, Cocoa Bindings. Cocoa Bindings drastically reduces the amount of code needed to write Graphical User Interfaces. In this example, there are several places where bindings are used: the popup menu which lists the SCSI Parallel controllers available in the system, the table view which lists the target devices associated with the popup’s current selection, the visibility of the informational panel (drawer), and the information displayed in the panel itself. This sample focuses on how to populate the data model objects and shows how a trivial set of bindings can provide a flexible user interface. For more information about bindings, visit http://developer.apple.com/documentation/Cocoa/Conceptual/CocoaBindings/index.html.