PDefines.html   [plain text]


<html>

	<head>
		<meta http-equiv="content-type" content="text/html;charset=iso-8859-1">
		<meta name="generator" content="Adobe GoLive 4">
		<title>#defines</title>
	</head>

	<body bgcolor="white">
		<h1><font face="Geneva,Arial,Helvtica">UUID constants</font></h1>
		<p>
		<hr>
		<h3><a name="kIOUSBDeviceInterfaceID"></a>kIOUSBDeviceInterfaceID</h3>
		<pre>
<pre>
#define kIOUSBDeviceInterfaceID CFUUIDGetConstantUUIDWithBytes(NULL, \
 0x5c, 0x81, 0x87, 0xd0, 0x9e, 0xf3, 0x11, 0xD4, \
 0x8b, 0x45, 0x00, 0x0a, 0x27, 0x05, 0x28, 0x61)</pre></pre>
		<p>This UUID constant is used to obtain a device inteferface corresponding to an IOUSBDevice User Client in the kernel. The type of this device interface is IOUSBDeviceInterface. This device interface is obtained after the device interface for the service itself has been obtained (see <a href="#kIOUSBDeviceUserClientTypeID">kIOUSBDeviceUserClientTypeID</a>).</p>
		
<p><b>Note:</b> This IOUSBDeviceInterface is returned by all versions of the IOUSBFamily 
  currently shipping (as of 10.2). However, there are some functions which are 
  available only in IOUSBFamily version 1.8.2 and above. Access to these functions, 
  in addition to the functions contained in IOUSBDeviceInterface, can be obtained 
  by using one of the other UUIDs listed below.</p>
		<p><b>Example</b></p>
		<pre>	IOCFPluginInterface		**iodev; 	// obtained earlier<br>
	IOUSBDeviceInterface	**dev;		// fetching this now
	IOReturn				err;

	err = (*iodev)-&gt;QueryInterface(iodev,
					CFUUIDGetUUIDBytes(<b>kIOUSBDeviceInterfaceID</b>),
					(LPVoid)&amp;dev);
	</pre>
		<p>
		<hr>
		<p></p>
		<h3><a name="kIOUSBDeviceInterfaceID182"></a>kIOUSBDeviceInterfaceID182</h3>
		<pre>
<blockquote>
#define kIOUSBDeviceInterfaceID182 CFUUIDGetConstantUUIDWithBytes(NULL, \
 0x15, 0x2f, 0xc4, 0x96, 0x48, 0x91, 0x11, 0xD5, \
 0x9d, 0x52, 0x00, 0x0a, 0x27, 0x80, 0x1e, 0x86)
</blockquote>
</pre>
		<p>This UUID constant is used to obtain a device inteferface corresponding to an IOUSBDevice User Client in the kernel. The type of this device interface is IOUSBDeviceInterface182. This device interface is obtained after the device interface for the service itself has been obtained (see <a href="#kIOUSBDeviceUserClientTypeID">kIOUSBDeviceUserClientTypeID</a>).</p>
		
<p><b>Note:</b> This IOUSBDeviceInterface182 is returned only by version 1.8.2 
  or above of the IOUSBFamily. This version of IOUSBFamily shipped with Mac OS 
  X version 10.0.4. If your software is running on an earlier version of Mac OS 
  X you will need to use the UUID <a href="#kIOUSBDeviceInterfaceID">kIOUSBDeviceInterfaceID</a> 
  and will not have access to some functions.</p>
		<p><b>Example</b></p>
		<pre>	IOCFPluginInterface		**iodev; 	// obtained earlier<br>
	IOUSBDeviceInterface182	**dev;		// fetching this now
	IOReturn				err;

	err = (*iodev)-&gt;QueryInterface(iodev,
					CFUUIDGetUUIDBytes(<b>kIOUSBDeviceInterfaceID182</b>),
					(LPVoid)&amp;dev);
	
<hr>
</pre>
		
<h3><a name="kIOUSBDeviceInterfaceID187"></a>kIOUSBDeviceInterfaceID187</h3>
		<pre>
<blockquote>
#define kIOUSBDeviceInterfaceID186 CFUUIDGetConstantUUIDWithBytes(NULL, \
0x3C, 0x9E, 0xE1, 0xEB, 0x24, 0x02, 0x11, 0xB2, 			\
0x8E, 0x7E, 0x00, 0x0A, 0x27, 0x80, 0x1E, 0x86)
</blockquote>
</pre>
		
<p>This UUID constant is used to obtain a device inteferface corresponding to 
  an IOUSBDevice User Client in the kernel. The type of this device interface 
  is IOUSBDeviceInterface187. This device interface is obtained after the device 
  interface for the service itself has been obtained (see <a href="#kIOUSBDeviceUserClientTypeID">kIOUSBDeviceUserClientTypeID</a>).</p>
<p><b>Note:</b> This IOUSBDeviceInterface187 is returned only by version 1.8.7 
  or above of the IOUSBFamily. This version of IOUSBFamily shipped with Mac OS 
  X version 10.1.2. If your software is running on an earlier version of Mac OS 
  X you will need to use a UUID corresponding to that earlier version of Mac OS 
  X. <a href="#kIOUSBDeviceInterfaceID"></a></p>
		<p><b>Example</b></p>
		<pre>	IOCFPluginInterface		**iodev; 	// obtained earlier<br>
	IOUSBDeviceInterface186	**dev;		// fetching this now
	IOReturn				err;

	err = (*iodev)-&gt;QueryInterface(iodev,
					CFUUIDGetUUIDBytes(<b>kIOUSBDeviceInterfaceID187</b>),
					(LPVoid)&amp;dev);
	</pre>
		<p>
		<hr>
		<p></p>
		<h3><a name="kIOUSBDeviceUserClientTypeID"></a>kIOUSBDeviceUserClientTypeID</h3>
		<pre>
<pre>
#define kIOUSBDeviceUserClientTypeID CFUUIDGetConstantUUIDWithBytes(NULL, \
 0x9d, 0xc7, 0xb7, 0x80, 0x9e, 0xc0, 0x11, 0xD4, \
 0xa5, 0x4f, 0x00, 0x0a, 0x27, 0x05, 0x28, 0x61)</pre>
</pre>
		
<p>This UUID constant is used to obtain a device inteferface corresponding to 
  an io_service_t corresponding to an IOUSBDevice in the kernel. Once you have 
  obtained the device interface for the service, you must use the QueryInterface 
  function to obtain the device interface for the User Client itself (see <a href="#kIOUSBDeviceInterfaceID">kIOUSBDeviceInterfaceID</a>, 
  <a href="#kIOUSBDeviceInterfaceID182">kIOUSBDeviceInterfaceID182</a>, or <a href="#kIOUSBDeviceInterfaceID187">kIOUSBInterfaceInterfaceID187</a>).</p>
		<p><b>Example</b></p>
		<pre>	io_service_t		usbDeviceRef;	// obtained earlier

	IOCFPlugInInterface	**iodev;		// fetching this now

	SInt32				score;			// not used
	IOReturn			err;


	err = IOCreatePlugInInterfaceForService(usbDeviceRef,

					<b>kIOUSBDeviceUserClientTypeID</b>,
					kIOCFPlugInInterfaceID,
					&amp;iodev,
					&amp;score);</pre>
		<p>
		<hr>
		<h3><a name="kIOUSBFactoryID"></a>kIOUSBFactoryID</h3>
		<pre>
<pre>
#define kIOUSBFactoryID CFUUIDGetConstantUUIDWithBytes(NULL, \
 0x45, 0x47, 0xa8, 0xaa, 0x9e, 0xf3, 0x11, 0xD4, \
 0xa9, 0xbd, 0x00, 0x0a, 0x27, 0x05, 0x28, 0x61)</pre>
</pre>
		<p>This UUID constant is used internally by the system, and should not have to be used by any driver code to access the device interfaces.</p>
		<p>
		<hr>
		<h3><a name="kIOUSBInterfaceInterfaceID"></a>kIOUSBInterfaceInterfaceID</h3>
		
<pre><pre><blockquote>
#define kIOUSBInterfaceInterfaceID CFUUIDGetConstantUUIDWithBytes(NULL, \
 0x73, 0xc9, 0x7a, 0xe8, 0x9e, 0xf3, 0x11, 0xD4, \
 0xb1, 0xd0, 0x00, 0x0a, 0x27, 0x05, 0x28, 0x61)</blockquote></pre></pre>
		<p>This UUID constant is used to obtain a device inteferface corresponding to an IOUSBInterface User Client in the kernel. The type of this device interface is IOUSBInterfaceInterface. This device interface is obtained after the device interface for the service itself has been obtained (see <a href="#kIOUSBInterfaceUserClientTypeID">kIOUSBInterfaceUserClientTypeID</a>).</p>
		
<p><b>Note:</b> This IOUSBInterfaceInterface is returned by all versions of the 
  IOUSBFamily currently shipping (as of 10.2). However, there are some functions 
  which are available only in IOUSBFamily version 1.8.2 and above. Access to these 
  functions, as well as all of the functions contained in IOUSBInterfaceInterface, 
  can be obtained by using one of the other UUIDs listed below.</p>
		<p><b>Example</b></p>
		<pre>	IOCFPluginInterface		**iodev; 	// obtained earlier<br>
	IOUSBInterfaceInterface	**intf;		// fetching this now
	IOReturn				err;

	err = (*iodev)-&gt;QueryInterface(iodev,
					CFUUIDGetUUIDBytes(<b>kIOUSBInterfaceInterfaceID</b>),
					(LPVoid)&amp;intf);
	</pre>
		<p>.</p>
		<p>
		<hr>
		<h3><a name="kIOUSBInterfaceInterfaceID182"></a>kIOUSBInterfaceInterfaceID182</h3>
		<pre>
<blockquote>
#define kIOUSBInterfaceInterfaceID182 CFUUIDGetConstantUUIDWithBytes(NULL, \
 0x49, 0x23, 0xac, 0x4c, 0x48, 0x96, 0x11, 0xD5, \
 0x92, 0x08, 0x00, 0x0a, 0x27, 0x80, 0x1e, 0x86)
</blockquote>
</pre>
		<p>This UUID constant is used to obtain a device inteferface corresponding to an IOUSBInterface User Client in the kernel. The type of this device interface is IOUSBInterfaceInterface182. This device interface is obtained after the device interface for the service itself has been obtained (see <a href="#kIOUSBInterfaceUserClientTypeID">kIOUSBInterfaceUserClientTypeID</a>).</p>
		
<p><b>Note:</b> This IOUSBInterfaceInterface182 is returned only by version 1.8.2 
  or above of the IOUSBFamily. This version of IOUSBFamily shipped with Mac OS 
  X version 10.0.4. If your software is running on an earlier version of Mac OS 
  X you will need to use the UUID <a href="#kIOUSBInterfaceInterfaceID">kIOUSBInterfaceInterfaceID</a> 
  and will not have access to some functions.</p>
		<p><b>Example</b></p>
		<pre>	IOCFPluginInterface			**iodev; 	// obtained earlier<br>
	IOUSBInterfaceInterface182	**intf;		// fetching this now
	IOReturn					err;

	err = (*iodev)-&gt;QueryInterface(iodev,
					CFUUIDGetUUIDBytes(<b>kIOUSBInterfaceInterfaceID182</b>),
					(LPVoid)&amp;intf);
	</pre>
<p> 
<hr>
<h3><a name="kIOUSBInterfaceInterfaceID183"></a>kIOUSBInterfaceInterfaceID183</h3>
<pre>
<blockquote>
#define kIOUSBInterfaceInterfaceID183 CFUUIDGetConstantUUIDWithBytes(NULL, \
 0x1c, 0x43, 0x83, 0x56, 0x74, 0xc4, 0x11, 0xD5, \
 0x92, 0xe6, 0x00, 0x0a, 0x27, 0x80, 0x1e, 0x86)
</blockquote>
</pre>
<p>This UUID constant is used to obtain a device inteferface corresponding to 
  an IOUSBInterface User Client in the kernel. The type of this device interface 
  is IOUSBInterfaceInterface183. This device interface is obtained after the device 
  interface for the service itself has been obtained (see <a href="#kIOUSBInterfaceUserClientTypeID">kIOUSBInterfaceUserClientTypeID</a>).</p>
<p><b>Note:</b> This IOUSBInterfaceInterface183 is returned only by version 1.8.3 
  or above of the IOUSBFamily. This version of IOUSBFamily shipped with Mac OS 
  X version 10.1. If your software is running on a Mac OS X version prior to 10.1 
  you will need to use the UUID <a href="#kIOUSBInterfaceInterfaceID">kIOUSBInterfaceInterfaceID</a> 
  or <a href="#kIOUSBInterfaceInterfaceID182">kIOUSBInterfaceInterfaceID182</a> 
  and will not have access to some functions.</p>
<p><b>Example</b></p>
<pre>	IOCFPluginInterface			**iodev; 	// obtained earlier<br>
	IOUSBInterfaceInterface182	**intf;		// fetching this now
	IOReturn					err;

	err = (*iodev)-&gt;QueryInterface(iodev,
					CFUUIDGetUUIDBytes(<b>kIOUSBInterfaceInterfaceID183</b>),
					(LPVoid)&amp;intf);
	</pre>
<p> 
<hr>
<h3><a name="kIOUSBInterfaceInterfaceID190"></a>kIOUSBInterfaceInterfaceID190</h3>
<pre>
<blockquote>
#define kIOUSBInterfaceInterfaceID190 CFUUIDGetConstantUUIDWithBytes(NULL, \
 0x8f, 0xdb, 0x84, 0x55, 0x74, 0xa6, 0x11, 0xD6, \<br> 0x97, 0xb1, 0x00, 0x30, 0x65, 0xd3, 0x60, 0x8e)</blockquote>
</pre>
<p>This UUID constant is used to obtain a device inteferface corresponding to 
  an IOUSBInterface User Client in the kernel. The type of this device interface 
  is IOUSBInterfaceInterface190. This device interface is obtained after the device 
  interface for the service itself has been obtained (see <a href="#kIOUSBInterfaceUserClientTypeID">kIOUSBInterfaceUserClientTypeID</a>).</p>
<p><b>Note:</b> This IOUSBInterfaceInterface190 is returned only by version 1.9 
  or above of the IOUSBFamily. This version of IOUSBFamily shipped with Mac OS 
  X version 10.2. If your software is running on a Mac OS X version prior to 10.2 
  you will need to use the UUID <a href="#kIOUSBInterfaceInterfaceID">kIOUSBInterfaceInterfaceID</a>, 
  <a href="#kIOUSBInterfaceInterfaceID182">kIOUSBInterfaceInterfaceID182</a>, 
  or <a href="#kIOUSBInterfaceInterfaceID183">kIOUSBInterfaceInterfaceID183</a> 
  and will not have access to some functions.</p>
<p><b>Example</b></p>
<pre>	IOCFPluginInterface			**iodev; 	// obtained earlier<br>
	IOUSBInterfaceInterface182	**intf;		// fetching this now
	IOReturn					err;

	err = (*iodev)-&gt;QueryInterface(iodev,
					CFUUIDGetUUIDBytes(<b>kIOUSBInterfaceInterfaceID190</b>),
					(LPVoid)&amp;intf);
	</pre>
<p>
		<hr>
		<h3>
		<h3><a name="kIOUSBInterfaceUserClientTypeID"></a>kIOUSBInterfaceUserClientTypeID</h3>
		</h3>
		<pre>
<blockquote>
#define kIOUSBInterfaceUserClientTypeID CFUUIDGetConstantUUIDWithBytes(NULL, \
 0x2d, 0x97, 0x86, 0xc6, 0x9e, 0xf3, 0x11, 0xD4, \
 0xad, 0x51, 0x00, 0x0a, 0x27, 0x05, 0x28, 0x61)</blockquote>
</pre>
<p>This UUID constant is used to obtain a device inteferface corresponding to 
  an io_service_t corresponding to an IOUSBInterface in the kernel. Once you have 
  obtained the device interface for the service, you must use the QueryInterface 
  function to obtain the device interface for the User Client itself (see <a href="#kIOUSBInterfaceInterfaceID">kIOUSBInterfaceInterfaceID</a> 
  , <a href="#kIOUSBInterfaceInterfaceID182">kIOUSBInterfaceInterfaceID182</a>, 
  <a href="#kIOUSBInterfaceInterfaceID183">kIOUSBInterfaceInterfaceID183</a>, 
  or <a href="#kIOUSBInterfaceInterfaceID190">kIOUSBInterfaceInterfaceID190</a>).</p>
		<p><b>Example</b></p>
		<pre>	io_service_t		usbInterfaceRef;	// obtained earlier

	IOCFPlugInInterface	**iodev;			// fetching this now

	SInt32				score;				// not used
	IOReturn			err;


	err = IOCreatePlugInInterfaceForService(usbInterfaceRef,

					<b>kIOUSBInterfaceUserClientTypeID</b>,
					kIOCFPlugInInterfaceID,
					&amp;iodev,
					&amp;score);</pre>
		<p>
		<hr>
		
<p>&copy; 2001-2002 Apple Computer, Inc. &#151; (Last Updated June 19, 2002) 
</body>

</html>