diff options
| author | Dean Camera <dean@fourwalledcubicle.com> | 2009-02-23 07:08:17 +0000 | 
|---|---|---|
| committer | Dean Camera <dean@fourwalledcubicle.com> | 2009-02-23 07:08:17 +0000 | 
| commit | 9991321321d30ca9383d795ea7e796098c92045f (patch) | |
| tree | cd3bd40eef421cc83c9d63e58f5def8a233acab6 /Demos/MouseFullInt/Descriptors.h | |
| parent | c1a1b6eeecb375259968ef6d989833312047f2d8 (diff) | |
| download | lufa-9991321321d30ca9383d795ea7e796098c92045f.tar.gz lufa-9991321321d30ca9383d795ea7e796098c92045f.tar.bz2 lufa-9991321321d30ca9383d795ea7e796098c92045f.zip  | |
Moved all source to the trunk directory.
Diffstat (limited to 'Demos/MouseFullInt/Descriptors.h')
| -rw-r--r-- | Demos/MouseFullInt/Descriptors.h | 93 | 
1 files changed, 93 insertions, 0 deletions
diff --git a/Demos/MouseFullInt/Descriptors.h b/Demos/MouseFullInt/Descriptors.h new file mode 100644 index 000000000..3aea3164c --- /dev/null +++ b/Demos/MouseFullInt/Descriptors.h @@ -0,0 +1,93 @@ +/*
 +             LUFA Library
 +     Copyright (C) Dean Camera, 2009.
 +              
 +  dean [at] fourwalledcubicle [dot] com
 +      www.fourwalledcubicle.com
 +*/
 +
 +/*
 +  Copyright 2009  Dean Camera (dean [at] fourwalledcubicle [dot] com)
 +
 +  Permission to use, copy, modify, and distribute this software
 +  and its documentation for any purpose and without fee is hereby
 +  granted, provided that the above copyright notice appear in all
 +  copies and that both that the copyright notice and this
 +  permission notice and warranty disclaimer appear in supporting
 +  documentation, and that the name of the author not be used in
 +  advertising or publicity pertaining to distribution of the
 +  software without specific, written prior permission.
 +
 +  The author disclaim all warranties with regard to this
 +  software, including all implied warranties of merchantability
 +  and fitness.  In no event shall the author be liable for any
 +  special, indirect or consequential damages or any damages
 +  whatsoever resulting from loss of use, data or profits, whether
 +  in an action of contract, negligence or other tortious action,
 +  arising out of or in connection with the use or performance of
 +  this software.
 +*/
 +
 +/** \file
 + *
 + *  Header file for Descriptors.c.
 + */
 + 
 +#ifndef _DESCRIPTORS_H_
 +#define _DESCRIPTORS_H_
 +
 +	/* Includes: */
 +		#include <LUFA/Drivers/USB/USB.h>
 +
 +		#include <avr/pgmspace.h>
 +
 +	/* Type Defines: */
 +		/** Type define for the HID class specific HID descriptor, to describe the HID device's specifications. Refer to the HID
 +		 *  specification for details on the structure elements.
 +		 */
 +		typedef struct
 +		{
 +			USB_Descriptor_Header_t               Header;
 +				
 +			uint16_t                              HIDSpec;
 +			uint8_t                               CountryCode;
 +		
 +			uint8_t                               TotalHIDReports;
 +
 +			uint8_t                               HIDReportType;
 +			uint16_t                              HIDReportLength;
 +		} USB_Descriptor_HID_t;
 +
 +		/** Type define for the data type used to store HID report descriptor elements. */
 +		typedef uint8_t USB_Descriptor_HIDReport_Datatype_t;
 +
 +		/** Type define for the device configuration descriptor structure. This must be defined in the
 +		 *  application code, as the configuration descriptor contains several sub-descriptors which
 +		 *  vary between devices, and which describe the device's usage to the host.
 +		 */
 +		typedef struct
 +		{
 +			USB_Descriptor_Configuration_Header_t Config;
 +			USB_Descriptor_Interface_t            Interface;
 +			USB_Descriptor_HID_t                  MouseHID;
 +	        USB_Descriptor_Endpoint_t             MouseEndpoint;
 +		} USB_Descriptor_Configuration_t;
 +					
 +	/* Macros: */
 +		/** Endpoint number of the Mouse HID reporting IN endpoint. */
 +		#define MOUSE_EPNUM               1
 +		
 +		/** Size in bytes of the Mouse HID reporting IN endpoint. */
 +		#define MOUSE_EPSIZE              8
 +
 +		/** Descriptor header type value, to indicate a HID class HID descriptor. */
 +		#define DTYPE_HID                 0x21
 +		
 +		/** Descriptor header type value, to indicate a HID class HID report descriptor. */
 +		#define DTYPE_Report              0x22
 +
 +	/* Function Prototypes: */
 +		uint16_t USB_GetDescriptor(const uint16_t wValue, const uint8_t wIndex, void** const DescriptorAddress)
 +		                           ATTR_WARN_UNUSED_RESULT ATTR_NON_NULL_PTR_ARG(3);
 +
 +#endif
  | 
