Merge commit '60b30c0363' as 'lib/lufa'

This commit is contained in:
Jack Humbert 2017-07-07 11:55:23 -04:00
commit 8655d4f494
1455 changed files with 394541 additions and 0 deletions

View file

@ -0,0 +1,13 @@
This is a modified/updated version of the Microsoft HV1 Docbook transform, written by Morten Engelhardt Olsen,
Originally posted at http://sourceforge.net/p/docbook/feature-requests/461/, this has been further updated by Morten to make it compatible with more recent DocBook versions.
---------------------------
/ This documentation system \
\ is udderly ridiculous! /
---------------------------
\ ^__^
\ (oo)\_______
(__)\ )\/\
||----w |
|| ||

View file

@ -0,0 +1,58 @@
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:d="http://docbook.org/ns/docbook"
xmlns="http://www.w3.org/1999/xhtml"
exclude-result-prefixes="xsl d"
version="1.0">
<xsl:import href="../xhtml/chunk.xsl"/>
<xsl:import href="../xhtml/highlight.xsl"/>
<!--
Based on the normal xhtml templates, all overrides applicable to
xhtml is applicable to HV1.
-->
<xsl:import href="hv1-common.xsl"/>
<!--
Choose if links should be generated using ms-xhelp (default) or
the more verbose ms.help type. The latter requires product.name,
product.version and product.locale to be set
-->
<xsl:param name="use.mshelp.links" select="0"/>
<!--
Name of target product. If specified then each page is
marked with this product. This is usualy set during
install time.
-->
<xsl:param name="product.name" select="''" />
<!--
Name of target version. If specified then each page is
marked with this version. This is usualy set during
install time.
-->
<xsl:param name="product.version" select="''" />
<!--
Locale for the help. Should always be set
-->
<xsl:param name="product.locale" select="'en-US'" />
<!--
Self branding. Gives access for chunks to load
it's own branding package during runtime
-->
<xsl:param name="topic.selfbrand" select="1"/>
<!-- Use doctitle for olinks -->
<xsl:param name="olink.doctitle" select="'yes'" />
<!-- Enable source code highlighting-->
<xsl:param name="highlight.source" select="1"/>
</xsl:stylesheet>

View file

@ -0,0 +1,664 @@
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:d="http://docbook.org/ns/docbook"
xmlns="http://www.w3.org/1999/xhtml"
exclude-result-prefixes="d"
version="1.0">
<!-- no separate HTML page with index as this is binary in hv1 -->
<xsl:param name="generate.index" select="0"/>
<!-- Generate help tags in header -->
<xsl:template name="user.head.content">
<xsl:param name="node" select="''" />
<xsl:variable name="up" select="parent::*"/>
<!-- Locale should be first Help tag-->
<meta name="Microsoft.Help.Locale">
<xsl:attribute name="content">
<xsl:choose>
<xsl:when test="$product.locale and product.locale != ''">
<xsl:value-of select="$product.locale"/>
</xsl:when>
<xsl:otherwise>
<xsl:text>en-US</xsl:text>
</xsl:otherwise>
</xsl:choose>
</xsl:attribute>
</meta>
<!-- Specify locale for this chunk. Should probably query xml:lang -->
<meta name="Microsoft.Help.TopicLocale">
<xsl:attribute name="content">
<xsl:choose>
<xsl:when test="@xml:lang">
<xsl:value-of select="@xml:lang"/>
</xsl:when>
<xsl:when test="$product.locale and product.locale != ''">
<xsl:value-of select="$product.locale"/>
</xsl:when>
<xsl:otherwise>
<xsl:text>en-US</xsl:text>
</xsl:otherwise>
</xsl:choose>
</xsl:attribute>
</meta>
<!-- This is the unique ID for this page -->
<meta name="Microsoft.Help.Id">
<xsl:attribute name="content">
<xsl:call-template name="hv1.toc.id"/>
</xsl:attribute>
</meta>
<!-- The ID of the parent TOC node (-1 is root) -->
<meta name="Microsoft.Help.TocParent">
<xsl:attribute name="content">
<xsl:call-template name="hv1.toc.parent.id">
<xsl:with-param name="up" select="$up"/>
</xsl:call-template>
</xsl:attribute>
</meta>
<!-- For all pages with the same parent, the order is set by TocOrder -->
<meta name="Microsoft.Help.TocOrder">
<xsl:attribute name="content">
<xsl:value-of select="1+count(preceding-sibling::chapter|preceding-sibling::section)"/>
</xsl:attribute>
</meta>
<!-- boolean to indicate if this page is allowed to load custom branding -->
<meta name="Microsoft.Help.SelfBranded">
<xsl:attribute name="content">
<xsl:choose>
<xsl:when test="$topic.selfbrand">
<xsl:text>true</xsl:text>
</xsl:when>
<xsl:otherwise>
<xsl:text>false</xsl:text>
</xsl:otherwise>
</xsl:choose>
</xsl:attribute>
</meta>
<!--
Insert description meta element. This is shown in searches and indexes
-->
<xsl:variable name="description">
<xsl:call-template name="hv1.description"/>
</xsl:variable>
<xsl:if test="$description != ''">
<meta name="Description">
<xsl:attribute name="content">
<xsl:call-template name="hv1.description"/>
</xsl:attribute>
</meta>
</xsl:if>
<!-- Display version of page -->
<xsl:variable name="display.version">
<xsl:call-template name="hv1.display.version"/>
</xsl:variable>
<xsl:if test="$display.version != ''">
<meta name="Microsoft.Help.DisplayVersion">
<xsl:attribute name="content">
<xsl:value-of select="$display.version"/>
</xsl:attribute>
</meta>
</xsl:if>
<!--
Content type is used to distinguish between multiple topics with same id.
Usualy to have multiple versions available
-->
<!--
<meta name="Microsoft.Help.ContentType">
<xsl:attribute name="content">
TODO: implement
</xsl:attribute>
</meta>
-->
<!-- If a product name is given, then mark each header with this name-->
<xsl:if test="$product.name and $product.name != ''">
<meta name="Microsoft.Help.Product">
<xsl:attribute name="content">
<xsl:value-of select="$product.name"/>
</xsl:attribute>
</meta>
</xsl:if>
<!-- If a version is given, then mark each header with version-->
<xsl:if test="$product.version and $product.version != ''">
<meta name="Microsoft.Help.ProductVersion">
<xsl:attribute name="content">
<xsl:value-of select="$product.version"/>
</xsl:attribute>
</meta>
</xsl:if>
<!--
Insert all keywords for this chunk. These are used
by the help runtime to generate indexes and refine search
-->
<xsl:call-template name="hv1.keywords" />
<!--
Insert all F1 ids for this chunk. This is used
by the help runtime to resolve F1 queries
-->
<xsl:call-template name="hv1.f1" />
</xsl:template>
<!-- There are links from ToC pane to bibliodivs, so there must be anchor -->
<xsl:template match="bibliodiv/title">
<h3 class="{name(.)}">
<xsl:call-template name="anchor">
<xsl:with-param name="node" select=".."/>
<xsl:with-param name="conditional" select="0"/>
</xsl:call-template>
<xsl:apply-templates/>
</h3>
</xsl:template>
<!--
Template to get a page id.
Needs to be unique in the target help system; microsoft uses UUIDs for this.
To avoid UUIDs and generate-id (only unique in current xml fragment),
we do
<root.filename> +
<last ancestor title> +
<second last ancestor title> +
....
<self title>, where different types of sections/fragments
may be prefixed with a type identifier.
This should generate a fairly specific/unique ID.
-->
<xsl:template name="get.id.from.pagename">
<xsl:param name="target" />
<xsl:value-of select="$root.filename"/>
<xsl:variable name="id.of.document">
<xsl:apply-templates select="$target" mode="recursive-chunk-id"/>
</xsl:variable>
<xsl:variable name="titleWithSpace">
<xsl:value-of select="key('id',$id.of.document)/title"/>
</xsl:variable>
<xsl:value-of select="translate($id.of.document,' ','')" />
</xsl:template>
<!-- template that returns the page id used above -->
<xsl:template match="*" mode="recursive-chunk-id">
<xsl:param name="recursive" select="false()"/>
<!-- returns the filename of a chunk -->
<xsl:variable name="ischunk">
<xsl:call-template name="chunk"/>
</xsl:variable>
<xsl:variable name="dbhtml-filename">
<xsl:call-template name="pi.dbhtml_filename"/>
</xsl:variable>
<xsl:variable name="filename">
<xsl:choose>
<xsl:when test="$dbhtml-filename != ''">
<xsl:value-of select="$dbhtml-filename"/>
</xsl:when>
<!-- if this is the root element, use the root.filename -->
<xsl:when test="not(parent::*) and $root.filename != ''">
<xsl:value-of select="$root.filename"/>
<!-- <xsl:value-of select="$html.ext"/> -->
</xsl:when>
<!-- Special case -->
<xsl:when test="self::legalnotice and not($generate.legalnotice.link = 0)">
<xsl:choose>
<xsl:when test="(@id or @xml:id) and not($use.id.as.filename = 0)">
<!-- * if this legalnotice has an ID, then go ahead and use -->
<!-- * just the value of that ID as the basename for the file -->
<!-- * (that is, without prepending an "ln-" too it) -->
<xsl:value-of select="(@id|@xml:id)[1]"/>
<!-- <xsl:value-of select="$html.ext"/>-->
</xsl:when>
<xsl:otherwise>
<!-- * otherwise, if this legalnotice does not have an ID, -->
<!-- * then we generate an ID... -->
<xsl:variable name="id">
<xsl:call-template name="object.id"/>
</xsl:variable>
<!-- * ...and then we take that generated ID, prepend an -->
<!-- * "ln-" to it, and use that as the basename for the file -->
<!-- <xsl:value-of select="concat('ln-',$id,$html.ext)"/>-->
</xsl:otherwise>
</xsl:choose>
</xsl:when>
<!-- if there's no dbhtml filename, and if we're to use IDs as -->
<!-- filenames, then use the ID to generate the filename. -->
<xsl:when test="(@id or @xml:id) and $use.id.as.filename != 0">
<xsl:value-of select="(@id|@xml:id)[1]"/>
<!-- <xsl:value-of select="$html.ext"/>-->
</xsl:when>
<xsl:otherwise/>
</xsl:choose>
</xsl:variable>
<xsl:choose>
<xsl:when test="$ischunk='0'">
<!-- if called on something that isn't a chunk, walk up... -->
<xsl:choose>
<xsl:when test="count(parent::*)&gt;0">
<xsl:apply-templates mode="recursive-chunk-id" select="parent::*">
<xsl:with-param name="recursive" select="$recursive"/>
</xsl:apply-templates>
</xsl:when>
<!-- unless there is no up, in which case return "" -->
<xsl:otherwise/>
</xsl:choose>
</xsl:when>
<xsl:when test="not($recursive) and $filename != ''">
<!-- if this chunk has an explicit name, use it -->
<xsl:value-of select="$filename"/>
</xsl:when>
<xsl:when test="self::set">
<xsl:value-of select="$root.filename"/>
</xsl:when>
<xsl:when test="self::book">
<xsl:text>bk</xsl:text>
<xsl:number level="any" format="01"/>
</xsl:when>
<xsl:when test="self::article">
<xsl:if test="/set">
<!-- in a set, make sure we inherit the right book info... -->
<xsl:apply-templates mode="recursive-chunk-id" select="parent::*">
<xsl:with-param name="recursive" select="true()"/>
</xsl:apply-templates>
</xsl:if>
<xsl:text>ar</xsl:text>
<xsl:number level="any" format="01" from="book"/>
</xsl:when>
<xsl:when test="self::preface">
<xsl:if test="/set">
<!-- in a set, make sure we inherit the right book info... -->
<xsl:apply-templates mode="recursive-chunk-id" select="parent::*">
<xsl:with-param name="recursive" select="true()"/>
</xsl:apply-templates>
</xsl:if>
<xsl:text>pr</xsl:text>
<xsl:number level="any" format="01" from="book"/>
</xsl:when>
<xsl:when test="self::chapter">
<xsl:if test="/set">
<!-- in a set, make sure we inherit the right book info... -->
<xsl:apply-templates mode="recursive-chunk-id" select="parent::*">
<xsl:with-param name="recursive" select="true()"/>
</xsl:apply-templates>
</xsl:if>
<xsl:text>ch</xsl:text>
<xsl:number level="any" format="01" from="book"/>
</xsl:when>
<xsl:when test="self::appendix">
<xsl:if test="/set">
<!-- in a set, make sure we inherit the right book info... -->
<xsl:apply-templates mode="recursive-chunk-id" select="parent::*">
<xsl:with-param name="recursive" select="true()"/>
</xsl:apply-templates>
</xsl:if>
<xsl:text>ap</xsl:text>
<xsl:number level="any" format="a" from="book"/>
</xsl:when>
<xsl:when test="self::part">
<xsl:choose>
<xsl:when test="/set">
<!-- in a set, make sure we inherit the right book info... -->
<xsl:apply-templates mode="recursive-chunk-id" select="parent::*">
<xsl:with-param name="recursive" select="true()"/>
</xsl:apply-templates>
</xsl:when>
<xsl:otherwise>
</xsl:otherwise>
</xsl:choose>
<xsl:text>pt</xsl:text>
<xsl:number level="any" format="01" from="book"/>
</xsl:when>
<xsl:when test="self::reference">
<xsl:choose>
<xsl:when test="/set">
<!-- in a set, make sure we inherit the right book info... -->
<xsl:apply-templates mode="recursive-chunk-id" select="parent::*">
<xsl:with-param name="recursive" select="true()"/>
</xsl:apply-templates>
</xsl:when>
<xsl:otherwise>
</xsl:otherwise>
</xsl:choose>
<xsl:text>rn</xsl:text>
<xsl:number level="any" format="01" from="book"/>
</xsl:when>
<xsl:when test="self::refentry">
<xsl:choose>
<xsl:when test="parent::reference">
<xsl:apply-templates mode="recursive-chunk-id" select="parent::*">
<xsl:with-param name="recursive" select="true()"/>
</xsl:apply-templates>
</xsl:when>
<xsl:otherwise>
</xsl:otherwise>
</xsl:choose>
<xsl:text>re</xsl:text>
<xsl:number level="any" format="01" from="book"/>
</xsl:when>
<xsl:when test="self::colophon">
<xsl:choose>
<xsl:when test="/set">
<!-- in a set, make sure we inherit the right book info... -->
<xsl:apply-templates mode="recursive-chunk-id" select="parent::*">
<xsl:with-param name="recursive" select="true()"/>
</xsl:apply-templates>
</xsl:when>
<xsl:otherwise>
</xsl:otherwise>
</xsl:choose>
<xsl:text>co</xsl:text>
<xsl:number level="any" format="01" from="book"/>
</xsl:when>
<xsl:when test="self::sect1
or self::sect2
or self::sect3
or self::sect4
or self::sect5
or self::section">
<xsl:apply-templates mode="recursive-chunk-id" select="parent::*">
<xsl:with-param name="recursive" select="true()"/>
</xsl:apply-templates>
<xsl:text>s</xsl:text>
<xsl:number format="01"/>
</xsl:when>
<xsl:when test="self::bibliography">
<xsl:choose>
<xsl:when test="/set">
<!-- in a set, make sure we inherit the right book info... -->
<xsl:apply-templates mode="recursive-chunk-id" select="parent::*">
<xsl:with-param name="recursive" select="true()"/>
</xsl:apply-templates>
</xsl:when>
<xsl:otherwise>
</xsl:otherwise>
</xsl:choose>
<xsl:text>bi</xsl:text>
<xsl:number level="any" format="01" from="book"/>
</xsl:when>
<xsl:when test="self::glossary">
<xsl:choose>
<xsl:when test="/set">
<!-- in a set, make sure we inherit the right book info... -->
<xsl:apply-templates mode="recursive-chunk-id" select="parent::*">
<xsl:with-param name="recursive" select="true()"/>
</xsl:apply-templates>
</xsl:when>
<xsl:otherwise>
</xsl:otherwise>
</xsl:choose>
<xsl:text>go</xsl:text>
<xsl:number level="any" format="01" from="book"/>
</xsl:when>
<xsl:when test="self::index">
<xsl:choose>
<xsl:when test="/set">
<!-- in a set, make sure we inherit the right book info... -->
<xsl:apply-templates mode="recursive-chunk-id" select="parent::*">
<xsl:with-param name="recursive" select="true()"/>
</xsl:apply-templates>
</xsl:when>
<xsl:otherwise>
</xsl:otherwise>
</xsl:choose>
<xsl:text>ix</xsl:text>
<xsl:number level="any" format="01" from="book"/>
</xsl:when>
<xsl:when test="self::setindex">
<xsl:text>si</xsl:text>
<xsl:number level="any" format="01" from="set"/>
</xsl:when>
<xsl:otherwise>
<xsl:text>chunk-filename-error-</xsl:text>
<xsl:value-of select="name(.)"/>
<xsl:number level="any" format="01" from="set"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<!-- Main template that generates internal links -->
<xsl:template name="href.target">
<xsl:param name="context" select="."/>
<xsl:param name="object" select="."/>
<xsl:param name="toc-context" select="."/>
<xsl:variable name="id">
<xsl:call-template name="get.id.from.pagename">
<xsl:with-param name="target" select="$object"/>
</xsl:call-template>
</xsl:variable>
<xsl:variable name="href">
<xsl:choose>
<xsl:when test="$use.mshelp.links">
<!-- Generate a ms.help type link-->
<xsl:if test="$product.name = ''">
<xsl:message terminate="yes">
$product.name needs to be set to generate ms.help style links
</xsl:message>
</xsl:if>
<xsl:if test="$product.version = ''">
<xsl:message terminate="yes">
$product.version needs to be set to generate ms.help style links
</xsl:message>
</xsl:if>
<xsl:if test="$product.locale = ''">
<xsl:message terminate="yes">
$product.locale needs to be set to generate ms.help style links
</xsl:message>
</xsl:if>
<xsl:text>ms.help?method=page&amp;id=</xsl:text>
<xsl:value-of select="$id"/>
<xsl:text>&amp;product=</xsl:text>
<xsl:value-of select="$product.name"/>
<xsl:text>&amp;productVersion=</xsl:text>
<xsl:value-of select="$product.version"/>
<xsl:text>&amp;locale=</xsl:text>
<xsl:value-of select="$product.locale"/>
<!-- Append the jump id if the current object has an id-->
<xsl:if test="$object[@id or @xml:id]">
<xsl:text>#</xsl:text>
<xsl:value-of select="$object/@id|$object/@xml:id"/>
</xsl:if>
</xsl:when>
<xsl:otherwise>
<!-- Generate ms-xhelp type links. Default-->
<xsl:text>ms-xhelp:///?Id=</xsl:text>
<xsl:value-of select="$id"/>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<xsl:value-of select="$href"/>
</xsl:template>
<xsl:template match="*" mode="common.html.attributes">
<xsl:param name="class" select="local-name(.)"/>
<xsl:param name="inherit" select="0"/>
<!--
Workaround for known issue with HelpLibAgent
Comment from Bruce Belson:
<pre> tags get their whitespace mangled by the Help Library Agent,
unless the non-standard attribute xml:space="preserve" is added to the pre element.
-->
<xsl:if test="$class = 'programlisting' or $class = 'verbatim' or $class = 'litterallayout' or $class = 'screen'">
<xsl:attribute name="xml:space">preserve</xsl:attribute>
</xsl:if>
<xsl:call-template name="generate.html.lang"/>
<xsl:call-template name="dir">
<xsl:with-param name="inherit" select="$inherit"/>
</xsl:call-template>
<xsl:apply-templates select="." mode="class.attribute">
<xsl:with-param name="class" select="$class"/>
</xsl:apply-templates>
</xsl:template>
<xsl:template name="hv1.display.version">
<xsl:apply-templates mode="title.markup" select="ancestor-or-self::book"/>
<xsl:if test="ancestor-or-self::chapter">
<xsl:text> - </xsl:text>
<xsl:apply-templates mode="title.markup" select="ancestor-or-self::chapter"/>
</xsl:if>
</xsl:template>
<!-- Generate a meta element for each keyword in chunk -->
<xsl:template name="hv1.keywords">
<xsl:variable name="is.chunk">
<xsl:call-template name="chunk">
<xsl:with-param name="node" select="."/>
</xsl:call-template>
</xsl:variable>
<xsl:for-each select=".//indexterm[$is.chunk = '0'] |
(./indexterm | *[not(self::section or self::preface or self::book or self::chapter)]//indexterm)[$is.chunk = '1']">
<xsl:choose>
<xsl:when test="primary != ''">
<meta name="Microsoft.Help.Keywords">
<xsl:attribute name="content">
<xsl:choose>
<!-- This concats the primary and secondary togheter, separated by colon if there exists
a tertiary element -->
<xsl:when test="tertiary">
<xsl:value-of select="primary/text()" />
<xsl:text>: </xsl:text>
<xsl:value-of select="secondary/text()" />
<xsl:text>, </xsl:text>
<xsl:value-of select="tertiary/text()" />
</xsl:when>
<xsl:otherwise>
<xsl:for-each select="primary/text() | secondary/text()">
<xsl:value-of select="." />
<xsl:if test="not(position() = last())">, </xsl:if>
</xsl:for-each>
</xsl:otherwise>
</xsl:choose>
</xsl:attribute>
</meta>
</xsl:when>
<xsl:otherwise/>
</xsl:choose>
</xsl:for-each>
</xsl:template>
<!-- Generate a F1 meta element for each indexterm with an ID (used as F1 id) -->
<xsl:template name="hv1.f1">
<xsl:variable name="is.chunk">
<xsl:call-template name="chunk">
<xsl:with-param name="node" select="."/>
</xsl:call-template>
</xsl:variable>
<xsl:variable name="id">
<xsl:call-template name="hv1.toc.id"/>
</xsl:variable>
<xsl:for-each select=".//indexterm[$is.chunk = '0'] |
(./indexterm | *[not(self::section or self::preface or self::book or self::chapter)]//indexterm)[$is.chunk = '1']">
<xsl:if test="@id|@xml:id">
<meta name="Microsoft.Help.F1">
<xsl:attribute name="content">
<xsl:value-of select="(@id|@xml:id)[1]" />
</xsl:attribute>
</meta>
</xsl:if>
</xsl:for-each>
</xsl:template>
<!-- ID used for to resolution. Using default ID -->
<xsl:template name="hv1.toc.id">
<xsl:variable name="href">
<xsl:call-template name="get.id.from.pagename">
<xsl:with-param name="target" select="."/>
</xsl:call-template>
</xsl:variable>
<xsl:value-of select="$href"/>
</xsl:template>
<!-- Determine parent id (if top level -> -1) -->
<xsl:template name="hv1.toc.parent.id">
<xsl:param name="up" select="''"/>
<xsl:variable name="href">
<xsl:choose>
<xsl:when test="$up">
<!-- I have a parent -->
<xsl:call-template name="get.id.from.pagename">
<xsl:with-param name="target" select="$up"/>
</xsl:call-template>
</xsl:when>
<xsl:otherwise>
<xsl:text>-1</xsl:text>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<xsl:value-of select="$href"/>
</xsl:template>
<xsl:template name="hv1.description">
<xsl:variable name="content">
<xsl:choose>
<xsl:when test="abstract|d:abstract|d:info/d:abstract|bookinfo/abstract|sectioninfo/abstract|articleinfo/abstract|partinfo/abstract">
<xsl:value-of select="(abstract|d:abstract|d:info/d:abstract|bookinfo/abstract|sectioninfo/abstract|articleinfo/abstract|partinfo/abstract)[1]"/>
</xsl:when>
<xsl:when test="child::para">
<xsl:value-of select="substring(normalize-space(child::para[1]), 0, 150)"/>
</xsl:when>
<xsl:otherwise/>
</xsl:choose>
</xsl:variable>
<xsl:if test="$content != ''">
<xsl:value-of select="concat($content, '...')"/>
</xsl:if>
</xsl:template>
</xsl:stylesheet>

View file

@ -0,0 +1 @@
Copy the Docbook XSLT docbook-xsl-1.78.1 release contents into this directory (i.e. with the root Docbook files in the current folder). The Docbook releases can be found at http://sourceforge.net/projects/docbook/files/docbook-xsl/ .

View file

@ -0,0 +1,27 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>LUFA Help</title>
</head>
<body class="vendor-book">
<div class="details">
<span class="vendor">FourWalledCubicle</span>
<span class="product">LUFA</span>
<span class="name">LUFA Help</span>
<span class="locale">en-us</span>
</div>
<div class="package-list">
<div class="package">
<span class="name">lufa_studio_help.mshc</span>
<a class="current-link" href="lufa_studio_help.mshc">lufa_studio_help.mshc</a>
</div>
</div>
</body>
</html>

View file

@ -0,0 +1,806 @@
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="xml" indent="no"/>
<xsl:template name="generate.book.title">
<xsl:text>LUFA Library</xsl:text>
</xsl:template>
<xsl:template name="generate.book.id">
<xsl:param name="book.title"/>
<xsl:choose>
<xsl:when test="@id">
<xsl:value-of select="@id"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="translate($book.title, ' ','')"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template name="generate.index.id">
<xsl:param name="name"/>
<xsl:variable name="book.title">
<xsl:call-template name="generate.book.title"/>
</xsl:variable>
<xsl:variable name="book.id">
<xsl:call-template name="generate.book.id">
<xsl:with-param name="book.title" select="$book.title"/>
</xsl:call-template>
</xsl:variable>
<indexterm id="{$name}">
<primary>
<xsl:value-of select="$book.title"/>
</primary>
<secondary>
<xsl:value-of select="$name"/>
</secondary>
</indexterm>
</xsl:template>
<xsl:template match="doxygen">
<xsl:variable name="book.title">
<xsl:call-template name="generate.book.title"/>
</xsl:variable>
<xsl:variable name="book.id">
<xsl:call-template name="generate.book.id">
<xsl:with-param name="book.title" select="$book.title"/>
</xsl:call-template>
</xsl:variable>
<book id="{$book.id}">
<title>
<xsl:value-of select="$book.title"/>
</title>
<!-- Add index chapter -->
<xsl:apply-templates select="compounddef[@kind = 'page' and @id = 'indexpage']">
<xsl:with-param name="element.type" select="'chapter'"/>
<xsl:with-param name="page.title" select="'Library Information'"/>
</xsl:apply-templates>
<!-- Add free-floating chapters -->
<xsl:apply-templates select="compounddef[@kind = 'page' and not(@id = 'indexpage') and not(//innerpage/@refid = @id)]">
<xsl:with-param name="element.type" select="'chapter'"/>
</xsl:apply-templates>
<!-- Add Modules chapter -->
<chapter>
<title>Modules</title>
<xsl:apply-templates select="compounddef[@kind = 'group' and not(//innergroup/@refid = @id)]"/>
</chapter>
</book>
</xsl:template>
<xsl:template match="compounddef[@kind = 'page']">
<xsl:param name="element.type" select="'section'"/>
<xsl:param name="page.title" select="title"/>
<xsl:element name="{$element.type}">
<xsl:attribute name="id">
<xsl:value-of select="@id"/>
</xsl:attribute>
<xsl:variable name="name">
<xsl:text>LUFA.</xsl:text>
<xsl:value-of select="translate(compoundname, '_', '.')"/>
</xsl:variable>
<xsl:call-template name="generate.index.id">
<xsl:with-param name="name" select="$name"/>
</xsl:call-template>
<title>
<xsl:value-of select="$page.title"/>
</title>
<xsl:apply-templates select="detaileddescription"/>
<xsl:if test="not(innerpage) and count(detaileddescription//sect1)">
<para>
<emphasis role="bold">Subsections:</emphasis>
<itemizedlist>
<xsl:for-each select="detaileddescription//sect1">
<listitem>
<link linkend="{@id}">
<xsl:value-of select="title"/>
</link>
</listitem>
</xsl:for-each>
</itemizedlist>
</para>
</xsl:if>
<xsl:for-each select="innerpage">
<xsl:apply-templates select="ancestor::*/compounddef[@kind = 'page' and @id = current()/@refid]"/>
</xsl:for-each>
</xsl:element>
</xsl:template>
<xsl:template match="compounddef[@kind = 'group']">
<section id="{@id}">
<title>
<xsl:value-of select="title"/>
</title>
<xsl:variable name="name">
<xsl:text>LUFA.</xsl:text>
<xsl:value-of select="translate(compoundname, '_', '.')"/>
</xsl:variable>
<xsl:call-template name="generate.index.id">
<xsl:with-param name="name" select="$name"/>
</xsl:call-template>
<xsl:apply-templates select="detaileddescription"/>
<xsl:if test="count(innergroup)">
<para>
<emphasis role="bold">Subgroups:</emphasis>
<itemizedlist>
<xsl:for-each select="innergroup">
<listitem>
<link linkend="{@refid}">
<xsl:value-of select="text()"/>
</link>
</listitem>
</xsl:for-each>
</itemizedlist>
</para>
</xsl:if>
<xsl:apply-templates select="sectiondef"/>
<xsl:for-each select="innerclass">
<xsl:apply-templates select="ancestor::*/compounddef[@id = current()/@refid]"/>
</xsl:for-each>
<xsl:for-each select="innergroup">
<xsl:apply-templates select="ancestor::*/compounddef[@kind = 'group' and @id = current()/@refid]"/>
</xsl:for-each>
</section>
</xsl:template>
<xsl:template match="compounddef[@kind = 'struct' or @kind = 'union']">
<xsl:variable name="name" select="compoundname"/>
<section id="{@id}" xreflabel="{$name}">
<title>
<xsl:choose>
<xsl:when test="@kind = 'struct'">
<xsl:text>Struct </xsl:text>
</xsl:when>
<xsl:when test="@kind = 'union'">
<xsl:text>Union </xsl:text>
</xsl:when>
</xsl:choose>
<xsl:value-of select="$name"/>
</title>
<xsl:call-template name="generate.index.id">
<xsl:with-param name="name" select="$name"/>
</xsl:call-template>
<xsl:apply-templates select="detaileddescription"/>
<xsl:for-each select="sectiondef[@kind = 'public-attrib']">
<table>
<title>
<xsl:value-of select="$name"/>
</title>
<tgroup cols="3">
<thead>
<row>
<entry>Type</entry>
<entry>Name</entry>
<entry>Description</entry>
</row>
</thead>
<tbody>
<xsl:for-each select="memberdef">
<row id="{@id}" xreflabel="{name}">
<entry>
<xsl:value-of select="type"/>
</entry>
<entry>
<xsl:value-of select="name"/>
<xsl:if test="starts-with(argsstring, '[')">
<xsl:text>[]</xsl:text>
</xsl:if>
<xsl:variable name="struct.element.name">
<xsl:value-of select="$name"/>
<xsl:text>.</xsl:text>
<xsl:value-of select="name"/>
</xsl:variable>
<xsl:call-template name="generate.index.id">
<xsl:with-param name="name" select="$struct.element.name"/>
</xsl:call-template>
</entry>
<entry>
<xsl:apply-templates select="detaileddescription"/>
</entry>
</row>
</xsl:for-each>
</tbody>
</tgroup>
</table>
</xsl:for-each>
</section>
</xsl:template>
<xsl:template match="memberdef[@kind = 'function']">
<section id="{@id}" xreflabel="{name}">
<title>
<xsl:text>Function </xsl:text>
<xsl:value-of select="name"/>
<xsl:text>()</xsl:text>
</title>
<xsl:call-template name="generate.index.id">
<xsl:with-param name="name" select="name"/>
</xsl:call-template>
<para>
<emphasis role="italic">
<xsl:value-of select="briefdescription"/>
</emphasis>
</para>
<programlisting language="c">
<emphasis role="keyword">
<xsl:value-of select="type"/>
</emphasis>
<xsl:text> </xsl:text>
<xsl:value-of select="name"/>
<xsl:text>(</xsl:text>
<xsl:choose>
<xsl:when test="not(param[1]/declname)">
<emphasis role="keyword">void</emphasis>
</xsl:when>
<xsl:otherwise>
<xsl:for-each select="param">
<xsl:if test="position() > 1">
<xsl:text>,</xsl:text>
</xsl:if>
<xsl:text>&#10;&#9;</xsl:text>
<emphasis role="keyword">
<xsl:value-of select="type"/>
</emphasis>
<xsl:text> </xsl:text>
<xsl:value-of select="declname"/>
</xsl:for-each>
</xsl:otherwise>
</xsl:choose>
<xsl:text>)</xsl:text>
</programlisting>
<xsl:apply-templates select="detaileddescription"/>
</section>
</xsl:template>
<xsl:template match="memberdef[@kind = 'enum']">
<section id="{@id}" xreflabel="{name}">
<title>
<xsl:text>Enum </xsl:text>
<xsl:value-of select="name"/>
</title>
<xsl:call-template name="generate.index.id">
<xsl:with-param name="name" select="name"/>
</xsl:call-template>
<xsl:apply-templates select="detaileddescription"/>
<table>
<title>Members</title>
<tgroup cols="2">
<thead>
<row>
<entry>Enum Value</entry>
<entry>Description</entry>
</row>
</thead>
<tbody>
<xsl:for-each select="enumvalue">
<row>
<entry>
<para id="{@id}" xreflabel="{name}">
<xsl:value-of select="name"/>
<xsl:call-template name="generate.index.id">
<xsl:with-param name="name" select="name"/>
</xsl:call-template>
</para>
</entry>
<entry>
<xsl:apply-templates select="detaileddescription"/>
</entry>
</row>
</xsl:for-each>
</tbody>
</tgroup>
</table>
</section>
</xsl:template>
<xsl:template match="memberdef[@kind = 'define']">
<section id="{@id}" xreflabel="{name}">
<title>
<xsl:text>Macro </xsl:text>
<xsl:value-of select="name"/>
</title>
<xsl:call-template name="generate.index.id">
<xsl:with-param name="name" select="name"/>
</xsl:call-template>
<programlisting language="c">
<emphasis role="preprocessor">
<xsl:text>#define </xsl:text>
<xsl:value-of select="name"/>
<xsl:if test="count(param) > 0">
<xsl:text>(</xsl:text>
<xsl:for-each select="param/defname">
<xsl:if test="position() > 1">
<xsl:text>,</xsl:text>
</xsl:if>
<xsl:value-of select="."/>
</xsl:for-each>
<xsl:text>)</xsl:text>
</xsl:if>
<xsl:text> </xsl:text>
<!-- Split long macro definitions across multiple lines -->
<xsl:if test="(string-length(initializer) > 50) or (count(param) > 0)">
<xsl:text>\&#10;&#9;</xsl:text>
</xsl:if>
<xsl:value-of select="initializer"/>
</emphasis>
<xsl:text> </xsl:text>
</programlisting>
<xsl:apply-templates select="detaileddescription"/>
</section>
</xsl:template>
<xsl:template match="memberdef[@kind = 'typedef']">
<section id="{@id}" xreflabel="{name}">
<title>
<xsl:text>Type </xsl:text>
<xsl:value-of select="name"/>
</title>
<xsl:call-template name="generate.index.id">
<xsl:with-param name="name" select="name"/>
</xsl:call-template>
<programlisting language="c">
<emphasis role="keyword">
<xsl:text>typedef </xsl:text>
<xsl:value-of select="type"/>
</emphasis>
<xsl:text> </xsl:text>
<xsl:value-of select="name"/>
<xsl:text> </xsl:text>
<xsl:value-of select="argsstring"/>
</programlisting>
<xsl:apply-templates select="detaileddescription"/>
</section>
</xsl:template>
<xsl:template match="memberdef[@kind = 'variable']">
<section id="{@id}" xreflabel="{name}">
<title>
<xsl:text>Variable </xsl:text>
<xsl:value-of select="name"/>
</title>
<xsl:call-template name="generate.index.id">
<xsl:with-param name="name" select="name"/>
</xsl:call-template>
<programlisting language="c">
<emphasis role="keyword">
<xsl:value-of select="type"/>
</emphasis>
<xsl:text> </xsl:text>
<xsl:value-of select="name"/>
</programlisting>
<xsl:apply-templates select="detaileddescription"/>
</section>
</xsl:template>
<xsl:template match="linebreak | simplesectsep">
<!-- MUST be on two separate lines, as this is a *literal* newline -->
<literallayout>
</literallayout>
</xsl:template>
<xsl:template match="verbatim">
<programlisting>
<xsl:apply-templates/>
</programlisting>
</xsl:template>
<xsl:template match="sectiondef">
<para>
<xsl:value-of select="description"/>
</para>
<xsl:apply-templates select="memberdef"/>
</xsl:template>
<xsl:template match="simplesect" mode="struct">
<footnote>
<xsl:apply-templates/>
</footnote>
</xsl:template>
<xsl:template match="simplesect">
<xsl:choose>
<xsl:when test="@kind = 'par'">
<note>
<title>
<xsl:value-of select="title"/>
</title>
<xsl:apply-templates/>
</note>
</xsl:when>
<xsl:when test="@kind = 'return'">
<note>
<title>Returns</title>
<xsl:apply-templates/>
</note>
</xsl:when>
<xsl:when test="@kind = 'warning'">
<warning>
<title>Warning</title>
<xsl:apply-templates/>
</warning>
</xsl:when>
<xsl:when test="@kind = 'pre'">
<note>
<title>Precondition</title>
<xsl:apply-templates/>
</note>
</xsl:when>
<xsl:when test="@kind = 'see'">
<note>
<title>See also</title>
<xsl:apply-templates/>
</note>
</xsl:when>
<xsl:when test="@kind = 'note'">
<note>
<title>Note</title>
<xsl:apply-templates/>
</note>
</xsl:when>
</xsl:choose>
</xsl:template>
<xsl:template match="parameterlist[@kind = 'param']">
<table>
<title>Parameters</title>
<tgroup cols="3">
<thead>
<row>
<entry>Data Direction</entry>
<entry>Parameter Name</entry>
<entry>Description</entry>
</row>
</thead>
<tbody>
<xsl:for-each select="parameteritem">
<row>
<xsl:apply-templates select="."/>
</row>
</xsl:for-each>
</tbody>
</tgroup>
</table>
</xsl:template>
<xsl:template match="parameterlist[@kind = 'retval']">
<table>
<title>Return Values</title>
<tgroup cols="2">
<thead>
<row>
<entry>Return Value</entry>
<entry>Description</entry>
</row>
</thead>
<tbody>
<xsl:for-each select="parameteritem">
<row>
<xsl:apply-templates select="."/>
</row>
</xsl:for-each>
</tbody>
</tgroup>
</table>
</xsl:template>
<xsl:template match="parameteritem">
<xsl:if test="parent::parameterlist/@kind = 'param'">
<entry>
<para>
<xsl:choose>
<xsl:when test="not(descendant::parametername/@direction)">
<emphasis role="italic">?</emphasis>
</xsl:when>
<xsl:otherwise>
<emphasis role="bold">
[<xsl:value-of select="descendant::parametername/@direction"/>]
</emphasis>
</xsl:otherwise>
</xsl:choose>
</para>
</entry>
</xsl:if>
<entry>
<para>
<xsl:value-of select="parameternamelist/parametername"/>
</para>
</entry>
<entry>
<xsl:apply-templates select="parameterdescription"/>
</entry>
</xsl:template>
<xsl:template match="parameterdescription">
<para>
<xsl:apply-templates/>
</para>
</xsl:template>
<xsl:template match="type">
<xsl:apply-templates/>
</xsl:template>
<xsl:template match="bold">
<emphasis role="bold">
<xsl:apply-templates/>
</emphasis>
</xsl:template>
<xsl:template match="emphasis">
<emphasis role="italic">
<xsl:apply-templates/>
</emphasis>
</xsl:template>
<xsl:template match="small">
<xsl:apply-templates/>
</xsl:template>
<xsl:template match="mdash | ndash">
<!-- Doxygen bug; double dashed are replaced with single HTML dash
entities, even in verbatim-like <tt> sections -->
<xsl:text>--</xsl:text>
</xsl:template>
<xsl:template match="computeroutput | preformatted">
<computeroutput>
<xsl:apply-templates/>
</computeroutput>
</xsl:template>
<xsl:template match="codeline">
<xsl:apply-templates/>
</xsl:template>
<xsl:template match="ulink">
<ulink url="{@url}">
<xsl:value-of select="."/>
</ulink>
</xsl:template>
<xsl:template match="superscript">
<superscript>
<xsl:apply-templates/>
</superscript>
</xsl:template>
<xsl:template match="subscript">
<subscript>
<xsl:apply-templates/>
</subscript>
</xsl:template>
<xsl:template match="para">
<para>
<xsl:apply-templates/>
</para>
</xsl:template>
<xsl:template match="ref">
<xsl:choose>
<!-- Don't show links inside program listings -->
<xsl:when test="ancestor::programlisting">
<xsl:value-of select="."/>
</xsl:when>
<!-- Don't show links to file compound definitions, as they are discarded -->
<xsl:when test="ancestor::*/compounddef[@kind = 'file' and @id = current()/@refid]">
<xsl:value-of select="."/>
</xsl:when>
<!-- Show links outside program listings -->
<xsl:otherwise>
<link linkend="{@refid}">
<xsl:value-of select="text()"/>
</link>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template match="entry">
<entry>
<xsl:apply-templates/>
</entry>
</xsl:template>
<xsl:template match="table[caption]">
<table>
<title>
<xsl:value-of select="caption"/>
</title>
<tgroup cols="{@cols}">
<thead>
<xsl:apply-templates select="row[entry/@thead = 'yes']"/>
</thead>
<tbody>
<xsl:apply-templates select="row[entry/@thead != 'yes']"/>
</tbody>
</tgroup>
</table>
</xsl:template>
<xsl:template match="table[not(caption)]">
<informaltable>
<tgroup cols="{@cols}">
<thead>
<xsl:apply-templates select="row[entry/@thead = 'yes']"/>
</thead>
<tbody>
<xsl:apply-templates select="row[entry/@thead != 'yes']"/>
</tbody>
</tgroup>
</informaltable>
</xsl:template>
<xsl:template match="row">
<row>
<xsl:apply-templates/>
</row>
</xsl:template>
<xsl:template match="itemizedlist">
<itemizedlist>
<xsl:apply-templates/>
</itemizedlist>
</xsl:template>
<xsl:template match="orderedlist">
<orderedlist>
<xsl:apply-templates/>
</orderedlist>
</xsl:template>
<xsl:template match="listitem">
<listitem>
<xsl:apply-templates/>
</listitem>
</xsl:template>
<xsl:template match="programlisting">
<programlisting language="c">
<xsl:for-each select="codeline[position() > 1 or highlight]">
<xsl:apply-templates select="."/>
<xsl:text>&#10;</xsl:text>
</xsl:for-each>
</programlisting>
</xsl:template>
<xsl:template match="highlight">
<emphasis role="{@class}">
<xsl:apply-templates/>
</emphasis>
</xsl:template>
<xsl:template match="highlight[1]/text()">
<xsl:choose>
<xsl:when test="substring(., 1, 1) = '*'">
<xsl:value-of select="substring(., 2)"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="."/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template match="sp[ancestor::codeline]">
<xsl:text> </xsl:text>
</xsl:template>
<xsl:template match="image">
<mediaobject>
<imageobject>
<imagedata align="center">
<xsl:attribute name="fileref">
<xsl:text>images/</xsl:text>
<xsl:value-of select="@name"/>
</xsl:attribute>
</imagedata>
</imageobject>
</mediaobject>
</xsl:template>
<xsl:template match="detaileddescription">
<xsl:apply-templates/>
</xsl:template>
<xsl:template match="sect1 | sect2 | sect3 | sect4 | sect5 | sect6 | sect7 | sect8 | sect9">
<section>
<xsl:if test="@id">
<xsl:attribute name="id">
<xsl:value-of select="@id"/>
</xsl:attribute>
</xsl:if>
<title>
<xsl:value-of select="title"/>
</title>
<xsl:apply-templates/>
</section>
</xsl:template>
<xsl:template match="anchor">
<xsl:if test="@id">
<indexterm id="{@id}"/>
</xsl:if>
</xsl:template>
<xsl:template match="title"/>
<xsl:template match="htmlonly"/>
<xsl:template match="*">
<xsl:message>NO XSL TEMPLATE MATCH: <xsl:value-of select="local-name()"/></xsl:message>
</xsl:template>
</xsl:stylesheet>

View file

@ -0,0 +1,47 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio HV1 Setup XHTML transform file -->
<!-- Updates a helpcontentsetup.msha document to add appropriate version
information. -->
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xhtml="http://www.w3.org/1999/xhtml" version="1.0">
<xsl:output method="xml" omit-xml-declaration="yes"/>
<!-- Need to input the LUFA help package filename for later use -->
<xsl:param name="help-package-filename"/>
<!-- Recursively match and copy/process all nodes/attributes -->
<xsl:template match="node()">
<xsl:copy>
<xsl:copy-of select="@*"/>
<xsl:apply-templates select="node()"/>
</xsl:copy>
</xsl:template>
<!-- Update the LUFA help package file name -->
<xsl:template match="xhtml:div[@class='package']/xhtml:span[@class='name']">
<xsl:copy>
<xsl:copy-of select="@class"/>
<xsl:value-of select="$help-package-filename"/>
</xsl:copy>
</xsl:template>
<xsl:template match="xhtml:div[@class='package']/xhtml:a[@class='current-link']">
<xsl:copy>
<xsl:copy-of select="@class"/>
<xsl:attribute name="href">
<xsl:value-of select="$help-package-filename"/>
</xsl:attribute>
<xsl:value-of select="$help-package-filename"/>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>

View file

@ -0,0 +1,45 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Docbook XML to Microsoft Help Viewer 1.0 transform file -->
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:import href="../Docbook/mshelp/docbook.xsl"/>
<xsl:output method="xml" indent="no"/>
<xsl:template match="emphasis[@role = 'keyword' or @role = 'keywordtype' or @role = 'keywordflow']">
<span class="hl-keyword" style="color: #0079C1">
<xsl:apply-templates/>
</span>
</xsl:template>
<xsl:template match="emphasis[@role = 'stringliteral' or @role = 'charliteral']">
<span class="hl-string" style="color: #800000">
<xsl:apply-templates/>
</span>
</xsl:template>
<xsl:template match="emphasis[@role = 'comment']">
<em class="hl-comment" style="color: #008000">
<xsl:apply-templates/>
</em>
</xsl:template>
<xsl:template match="emphasis[@role = 'preprocessor']">
<span class="hl-preprocessor" style="color: #A000A0">
<xsl:apply-templates/>
</span>
</xsl:template>
<xsl:template match="emphasis[@role = 'normal' and ancestor::programlisting]">
<xsl:apply-templates />
</xsl:template>
</xsl:stylesheet>

View file

@ -0,0 +1,53 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
.programlisting {
display: block;
margin-left: 15px;
padding: 10px;
background-color: #f4f4f4;
border: 1px solid #aaaaaa;
font-family: "Consolas", "Courier New", sans-serif;
}
code {
background-color: #f4f4f4;
font-family: "Consolas", "Courier New", sans-serif;
}
.note, .warning, .tip {
display: block;
margin-left: 15px;
padding-left: 10px;
padding-bottom: 5px;
background-color: #f4f4f4;
border: 1px solid #aaaaaa;
}
table {
border: 1px solid #aaaaaa;
border-collapse: collapse;
margin-left: 15px;
font-size: 10pt;
}
table thead {
background-color: #f4f4f4;
}
table thead th {
padding: 5px;
}
table tbody td {
padding: 5px;
}
ul {
padding-left: 20px;
}

Binary file not shown.

Binary file not shown.

View file

@ -0,0 +1,13 @@
<Types xmlns="http://schemas.openxmlformats.org/package/2006/content-types">
<Default Extension="vsixmanifest" ContentType="text/xml"/>
<Default Extension="cache" ContentType="text/xml"/>
<Default Extension="png" ContentType="application/octet-stream"/>
<Default Extension="txt" ContentType="text/plain"/>
<Default Extension="xml" ContentType="text/xml"/>
<Default Extension="zip" ContentType="application/octet-stream"/>
<Default Extension="dll" ContentType="application/octet-stream" />
<Default Extension="pkgdef" ContentType="text/plain" />
<Default Extension="htm" ContentType="text/html" />
<Default Extension="msha" ContentType="text/html" />
<Default Extension="mshc" ContentType="application/octet-stream"/>
</Types>

View file

@ -0,0 +1,18 @@
<AsfContentProvider Version="1.0.0">
<Identifier Id="0e160d5c-e331-48d9-850b-e0387912171b">
<Org>FourWalledCubicle</Org>
<ShortName>LUFA</ShortName>
<Author>Dean Camera</Author>
<Description/>
<FollowFolderStructure>True</FollowFolderStructure>
</Identifier>
<AsfContent Type="zip" Path="contents.zip">
<Content>
<Version>0</Version>
<HelpURL/>
<Locator/>
<DbXMLPath>content.xml.cache</DbXMLPath>
<Description/>
</Content>
</AsfContent>
</AsfContentProvider>

View file

@ -0,0 +1,32 @@
<?xml version="1.0" encoding="utf-8"?>
<Vsix xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" Version="1.0.0" xmlns="http://schemas.microsoft.com/developer/vsx-schema/2010">
<Identifier Id="FourWalledCubicle.LUFA.0e160d5c-e331-48d9-850b-e0387912171b">
<Name>LUFA Library</Name>
<Author>Dean Camera</Author>
<Version>0</Version>
<MoreInfoUrl>http://www.lufa-lib.org</MoreInfoUrl>
<Description xml:space="preserve">LUFA, the Lightweight USB Framework for AVRs.</Description>
<License>License.txt</License>
<Icon>LUFA_thumb.png</Icon>
<PreviewImage>LUFA.png</PreviewImage>
<SupportedProducts>
<IsolatedShell Version="7.0">AtmelStudio</IsolatedShell>
</SupportedProducts>
<SupportedFrameworkRuntimeEdition MinVersion="4.0" MaxVersion="4.5"/>
<Locale>1033</Locale>
<AllUsers>false</AllUsers>
</Identifier>
<References/>
<Content>
<VsPackage>LUFA.pkgdef</VsPackage>
<CustomExtension Type="MSHelp">helpcontentsetup.msha</CustomExtension>
<CustomExtension Type="asf-manifest">asf-manifest.xml</CustomExtension>
</Content>
</Vsix>

View file

@ -0,0 +1,38 @@
"""
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
"""
import sys
sys.path.append("ProjectGenerator")
def show_message(message):
print("[Project Generator] %s" % message)
sys.stdout.flush()
def main(lufa_root_path):
try:
from asf_avrstudio5_interface import PythonFacade
except ImportError:
print("Fatal Error: The ASF project generator is missing.")
return 1
p = PythonFacade(lufa_root_path)
show_message("Checking database sanity...")
p.check_extension_database_sanity(lufa_root_path)
show_message("Building cache files...")
p.generate_extension_cache_files(lufa_root_path)
show_message("Cache files created.")
return 0
if __name__ == "__main__":
sys.exit(main(sys.argv[1]))

View file

@ -0,0 +1,36 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework VSIX XML transform file -->
<!-- Updates an asf-manifest.xml document to add appropriate version
information. -->
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="xml" omit-xml-declaration="yes"/>
<!-- Need to input the LUFA version for later use -->
<xsl:param name="lufa-version"/>
<!-- Recursively match and copy/process all nodes/attributes -->
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
<!-- Update the LUFA version to the version passed as a parameter -->
<xsl:template match="Version">
<xsl:copy>
<xsl:value-of select="substring($lufa-version, 1, 2)"/>
<xsl:text>.</xsl:text>
<xsl:value-of select="substring($lufa-version, 3, 2)"/>
<xsl:text>.</xsl:text>
<xsl:value-of select="substring($lufa-version, 5, 2)"/>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>

View file

@ -0,0 +1,33 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework VSIX XML transform file -->
<!-- Updates the version element of a Visual Studio VSIX manifest file to the
value passed as a parameter to the stylesheet transform -->
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:vs="http://schemas.microsoft.com/developer/vsx-schema/2010" version="1.0">
<xsl:output method="xml" omit-xml-declaration="yes"/>
<!-- Need to input the extension version for later use -->
<xsl:param name="extension-version"/>
<!-- Recursively match and copy/process all nodes/attributes -->
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
<!-- Update the extension version to the version passed as a parameter -->
<xsl:template match="vs:Version">
<xsl:copy>
<xsl:value-of select="$extension-version"/>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>

View file

@ -0,0 +1,68 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework Extension XML transform file -->
<!-- Creates an extension.xml document from a given manifest list of XML files,
and adds appropriate documentation base URI entries and version
information. -->
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="xml" omit-xml-declaration="yes"/>
<!-- Store the LUFA version mentioned in the root node for later use -->
<xsl:param name="lufa-version" select="lufa-manifest/@version"/>
<!-- Read manifest list and then process all FDK nodes in the referenced
document -->
<xsl:template match="lufa-manifest">
<xsl:comment>This file has been automatically generated from the LUFA Atmel Studio integration XML files.</xsl:comment>
<extension-container xmlversion="2.0">
<xsl:for-each select="xml-source">
<xsl:apply-templates select="document(@filename)/lufa/extension-container/*"/>
</xsl:for-each>
</extension-container>
</xsl:template>
<!-- Recursively match and copy/process all nodes/attributes -->
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
<!-- Update the extension version to the version of LUFA being used -->
<xsl:template match="extension/@version">
<xsl:attribute name="version">
<xsl:value-of select="substring($lufa-version, 1, 2)"/>
<xsl:text>.</xsl:text>
<xsl:value-of select="substring($lufa-version, 3, 2)"/>
<xsl:text>.</xsl:text>
<xsl:value-of select="substring($lufa-version, 5, 2)"/>
</xsl:attribute>
</xsl:template>
<!-- Update the extension online help URLs to the version of LUFA being
used -->
<xsl:template match="online-help/*/@baseurl">
<xsl:attribute name="baseurl">
<xsl:value-of select="current()"/>
<xsl:value-of select="$lufa-version"/>
<xsl:text>/html/</xsl:text>
</xsl:attribute>
</xsl:template>
<xsl:template match="online-help/index-page/@url">
<xsl:attribute name="url">
<xsl:value-of select="current()"/>
<xsl:value-of select="$lufa-version"/>
<xsl:text>/html/</xsl:text>
</xsl:attribute>
</xsl:template>
</xsl:stylesheet>

View file

@ -0,0 +1,35 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework Module XML transform file -->
<!-- Outputs a flat file list of all source files referenced in all modules of
the input manifest XML file, so that they can be checked for existence. -->
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="xml" omit-xml-declaration="yes"/>
<!-- Read manifest list, add a comment to indicate the source filename
and then process all ASF nodes in the referenced document -->
<xsl:template match="lufa-manifest">
<xsl:for-each select="xml-source">
<xsl:comment>Sourced from <xsl:value-of select="@filename"/></xsl:comment>
<xsl:apply-templates select="document(@filename)/lufa/asf/*"/>
</xsl:for-each>
</xsl:template>
<!-- Recursively match and process all nodes/attributes -->
<xsl:template match="@*|node()">
<xsl:apply-templates select="@*|node()"/>
</xsl:template>
<!-- Match source file nodes, output filename -->
<xsl:template match="build[@type='c-source']|build[@type='header-file']|build[@type='distribute']">
<xsl:value-of select="@value"/>
<xsl:text>&#xA;</xsl:text>
</xsl:template>
</xsl:stylesheet>

View file

@ -0,0 +1,23 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework XML transform file -->
<!-- Indents a given XML document to match the node hierarchy. -->
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" omit-xml-declaration="yes" indent="yes"/>
<!-- Remove all white-space on all elements so that they can be indented -->
<xsl:strip-space elements="*"/>
<!-- Match the root node and copy, so that the output will be a correctly
indented version of the input document -->
<xsl:template match="/">
<xsl:copy-of select="."/>
</xsl:template>
</xsl:stylesheet>

View file

@ -0,0 +1,66 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework Module XML transform file -->
<!-- Creates an asf.xml module document from a given manifest list of XML files,
and adds appropriate documentation links by cross-referencing the Doxygen
tag output file to map Doxygen group names to generated filenames. -->
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="xml" omit-xml-declaration="yes"/>
<!-- Store the LUFA Doxygen tag filename mentioned in the root node for later use -->
<xsl:param name="lufa-doxygen-tagfile" select="lufa-manifest/@tagfile"/>
<!-- Store the LUFA Doxygen documentation filename mentioned in the root node for later use -->
<xsl:param name="lufa-doxygen-docfile" select="lufa-manifest/@docfile"/>
<!-- Read manifest list, add a comment to indicate the source filename
and then copy/process all ASF nodes in the referenced document -->
<xsl:template match="lufa-manifest">
<xsl:comment>This file has been automatically generated from the LUFA Atmel Studio integration XML files.</xsl:comment>
<asf xmlversion="1.0">
<xsl:for-each select="xml-source">
<xsl:comment>Sourced from <xsl:value-of select="@filename"/></xsl:comment>
<xsl:apply-templates select="document(@filename)/lufa/asf/*"/>
</xsl:for-each>
</asf>
</xsl:template>
<!-- Recursively match and copy/process all nodes/attributes -->
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
<!-- For Doxygen entry point nodes we need to convert them into help link
nodes instead and add descriptions, so that they show up as links in
Studio correctly -->
<xsl:template match="build[@type='doxygen-entry-point']">
<!-- select-by-config entries should not have a help link -->
<xsl:if test="not(parent::select-by-config)">
<build type="online-help" subtype="module-help-page-append">
<xsl:attribute name="value">
<!-- Extract filename of the HTML file that contains the documentation for this module from the Doxgen tag file -->
<xsl:value-of select="document($lufa-doxygen-tagfile)/tagfile/compound[name=current()/@value]/filename"/>
</xsl:attribute>
</build>
</xsl:if>
<!-- Modules inside a select-by-config entries should not have a help link -->
<xsl:if test="not(parent::module and ../parent::select-by-config)">
<info type="description" value="summary">
<!-- Extract brief description of the module from the Doxygen combined XML documentation file -->
<xsl:value-of select="document($lufa-doxygen-docfile)/doxygen/compounddef[compoundname=current()/@value]/briefdescription/para"/>
</info>
</xsl:if>
</xsl:template>
</xsl:stylesheet>

View file

@ -0,0 +1,96 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<extension-container>
<extension uuid="0e160d5c-e331-48d9-850b-e0387912171b" org="FourWalledCubicle" shortname="LUFA" version="" fullname="Lightweight USB Framework for AVRs (LUFA)">
<author name="Dean Camera" website="http://www.lufa-lib.org/" email="dean@fourwalledcubicle.com"/>
<description>Lightweight USB Framework for AVRs (LUFA), a USB software stack/framework.</description>
<icon-image path="LUFA/DoxygenPages/Images/LUFA_thumb.png"/>
<preview-image path="LUFA/DoxygenPages/Images/LUFA.png"/>
<license caption="LUFA License" path="LUFA/License.txt"/>
<release-notes caption="LUFA Information" url="http://www.lufa-lib.org"/>
<online-help>
<index-page caption="LUFA Documentation" url="http://www.lufa-lib.org/documentation/"/>
<module-help-page scheme="append" baseurl="http://www.lufa-lib.org/documentation/"/>
<module-guide-page scheme="append" baseurl="http://www.lufa-lib.org/documentation/"/>
</online-help>
<dependencies/>
</extension>
</extension-container>
<asf>
<device-alias-map name="lufa_avr8">
<device-support value="at90usb82"/>
<device-support value="atmega8u2"/>
<device-support value="at90usb162"/>
<device-support value="atmega16u2"/>
<device-support value="atmega16u4"/>
<device-support value="atmega32u2"/>
<device-support value="atmega32u4"/>
<device-support value="at90usb646"/>
<device-support value="at90usb647"/>
<device-support value="at90usb1286"/>
<device-support value="at90usb1287"/>
</device-alias-map>
<device-alias-map name="lufa_xmega">
<device-support value="atxmega16a4u"/>
<device-support value="atxmega32a4u"/>
<device-support value="atxmega64a4u"/>
<device-support value="atxmega128a4u"/>
<device-support value="atxmega64a3u"/>
<device-support value="atxmega128a3u"/>
<device-support value="atxmega192a3u"/>
<device-support value="atxmega256a3u"/>
<device-support value="atxmega256a3bu"/>
<device-support value="atxmega128a1u"/>
<device-support value="atxmega64b3"/>
<device-support value="atxmega128b3"/>
<device-support value="atxmega64b1"/>
<device-support value="atxmega128b1"/>
<device-support value="atxmega64c3"/>
<device-support value="atxmega128c3"/>
<device-support value="atxmega192c3"/>
<device-support value="atxmega256c3"/>
<device-support value="atxmega384c3"/>
<device-support value="atxmega16c4"/>
</device-alias-map>
<device-alias-map name="lufa_uc3">
<device-support value="at32uc3a364"/>
<device-support value="at32uc3a364s"/>
<device-support value="at32uc3a464"/>
<device-support value="at32uc3a464s"/>
<device-support value="at32uc3b064"/>
<device-support value="at32uc3b164"/>
<device-support value="at32uc3a0128"/>
<device-support value="at32uc3a1128"/>
<device-support value="at32uc3a3128"/>
<device-support value="at32uc3a3128s"/>
<device-support value="at32uc3a4128"/>
<device-support value="at32uc3a4128s"/>
<device-support value="at32uc3b0128"/>
<device-support value="at32uc3b1128"/>
<device-support value="at32uc3a0256"/>
<device-support value="at32uc3a1256"/>
<device-support value="at32uc3a3256"/>
<device-support value="at32uc3a3256s"/>
<device-support value="at32uc3a4256"/>
<device-support value="at32uc3a4256s"/>
<device-support value="at32uc3b0256"/>
<device-support value="at32uc3b1256"/>
<device-support value="at32uc3a0512"/>
<device-support value="at32uc3a1512"/>
<device-support value="at32uc3b0512"/>
<device-support value="at32uc3b1512"/>
</device-alias-map>
</asf>
</lufa>

View file

@ -0,0 +1,34 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<module type="service" id="lufa.common" caption="LUFA Common Infrastructure">
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<info type="gui-flag" value="hidden"/>
<build type="doxygen-entry-point" value="Group_Common"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Version.h"/>
<build type="distribute" subtype="license" value="License.txt"/>
<build type="header-file" subtype="api" value="Common/Common.h"/>
<build type="header-file" value="Common/Architectures.h"/>
<build type="header-file" value="Common/ArchitectureSpecific.h"/>
<build type="header-file" value="Common/Attributes.h"/>
<build type="header-file" value="Common/BoardTypes.h"/>
<build type="header-file" value="Common/CompilerSpecific.h"/>
<build type="header-file" value="Common/Endianness.h"/>
</module>
</asf>
</lufa>

View file

@ -0,0 +1,114 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<board id="lufa.boards.dummy.avr8" vendor="LUFA" caption="AVR8 Architecture">
<device-support value="mega"/>
<require idref="lufa.drivers.board"/>
<require idref="lufa.drivers.board.info"/>
</board>
<board id="lufa.boards.dummy.xmega" vendor="LUFA" caption="XMEGA Architecture">
<device-support value="xmega"/>
<require idref="lufa.drivers.board"/>
<require idref="lufa.drivers.board.info"/>
</board>
<board id="lufa.boards.dummy.uc3" vendor="LUFA" caption="UC3 Architecture">
<device-support value="uc3"/>
<require idref="lufa.drivers.board"/>
<require idref="lufa.drivers.board.info"/>
</board>
<module type="driver" id="lufa.drivers.board.info" caption="LUFA Board Hardware Information Driver">
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_BoardInfo"/>
<require idref="lufa.common"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Board/Board.h"/>
</module>
<module type="driver" id="lufa.drivers.board.leds" caption="LUFA Board LED Driver">
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_LEDs"/>
<require idref="lufa.common"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Board/LEDs.h"/>
</module>
<module type="driver" id="lufa.drivers.board.buttons" caption="LUFA Board Buttons Driver">
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_Buttons"/>
<require idref="lufa.common"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Board/Buttons.h"/>
</module>
<module type="driver" id="lufa.drivers.board.dataflash" caption="LUFA Board Dataflash Driver">
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_Dataflash"/>
<require idref="lufa.common"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Board/Dataflash.h"/>
</module>
<module type="driver" id="lufa.drivers.board.joystick" caption="LUFA Board Joystick Driver">
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_Joystick"/>
<require idref="lufa.common"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Board/Joystick.h"/>
</module>
<module type="driver" id="lufa.drivers.board.temperature" caption="LUFA Board Temperature Sensor Driver">
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_Temperature"/>
<require idref="lufa.common"/>
<require idref="lufa.drivers.peripheral.adc"/>
<build type="c-source" value="Drivers/Board/Temperature.c"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Board/Temperature.h"/>
</module>
</asf>
</lufa>

View file

@ -0,0 +1,853 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<select-by-config id="lufa.drivers.board" name="lufa.drivers.board.name" default="none" caption="LUFA Board Support">
<info type="description" value="summary">
Board hardware (LEDs, Buttons, etc.) drivers for the preconfigured LUFA boards. Note that only the boards
compatible with the currently selected device will be shown.
To disable all hardware drivers silently, use NONE. To supply customer drivers, use USER (see manual).
</info>
<module type="driver" id="lufa.drivers.board#none" caption="Board Support - None">
<device-support value="avr"/>
<build type="define" name="BOARD" value="BOARD_NONE"/>
</module>
<module type="driver" id="lufa.drivers.board#user" caption="Board Support - User Supplied">
<device-support value="avr"/>
<build type="define" name="BOARD" value="BOARD_USER"/>
</module>
<module type="driver" id="lufa.drivers.board#adafruit_u4" caption="Board Support - ADAFRUITU4">
<build type="doxygen-entry-point" value="Group_BoardInfo_ADAFRUITU4"/>
<device-support value="atmega32u4"/>
<build type="define" name="BOARD" value="BOARD_ADAFRUITU4"/>
<require idref="lufa.drivers.board.leds"/>
<build type="header-file" value="Drivers/Board/AVR8/ADAFRUITU4/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/ADAFRUITU4/LEDs.h"/>
</module>
<module type="driver" id="lufa.drivers.board#atavrusbrf01" caption="Board Support - ATAVRUSBRF01">
<build type="doxygen-entry-point" value="Group_BoardInfo_ATAVRUSBRF01"/>
<device-support value="at90usb1287"/>
<build type="define" name="BOARD" value="BOARD_ATAVRUSBRF01"/>
<require idref="lufa.drivers.board.buttons"/>
<require idref="lufa.drivers.board.leds"/>
<build type="header-file" value="Drivers/Board/AVR8/ATAVRUSBRF01/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/ATAVRUSBRF01/Buttons.h"/>
<build type="header-file" value="Drivers/Board/AVR8/ATAVRUSBRF01/LEDs.h"/>
</module>
<module type="driver" id="lufa.drivers.board#benito" caption="Board Support - BENITO">
<build type="doxygen-entry-point" value="Group_BoardInfo_BENITO"/>
<device-support value="at90usb162"/>
<build type="define" name="BOARD" value="BOARD_BENITO"/>
<require idref="lufa.drivers.board.buttons"/>
<require idref="lufa.drivers.board.leds"/>
<build type="header-file" value="Drivers/Board/AVR8/BENITO/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/BENITO/Buttons.h"/>
<build type="header-file" value="Drivers/Board/AVR8/BENITO/LEDs.h"/>
</module>
<module type="driver" id="lufa.drivers.board#big_multio" caption="Board Support - BIGMULTIO">
<build type="doxygen-entry-point" value="Group_BoardInfo_BIGMULTIO"/>
<device-support value="atmega32u4"/>
<build type="define" name="BOARD" value="BOARD_BIGMULTIO"/>
<require idref="lufa.drivers.board.leds"/>
<build type="header-file" value="Drivers/Board/AVR8/BIGMULTIO/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/BIGMULTIO/LEDs.h"/>
</module>
<module type="driver" id="lufa.drivers.board#blackcat" caption="Board Support - BLACKCAT">
<build type="doxygen-entry-point" value="Group_BoardInfo_BLACKCAT"/>
<device-support value="at90usb162"/>
<build type="define" name="BOARD" value="BOARD_BLACKCAT"/>
<require idref="lufa.drivers.board.leds"/>
<build type="header-file" value="Drivers/Board/AVR8/BLACKCAT/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/BLACKCAT/LEDs.h"/>
</module>
<module type="driver" id="lufa.drivers.board#bui" caption="Board Support - BUI">
<build type="doxygen-entry-point" value="Group_BoardInfo_BUI"/>
<device-support value="at90usb646"/>
<build type="define" name="BOARD" value="BOARD_BUI"/>
<require idref="lufa.drivers.board.leds"/>
<build type="header-file" value="Drivers/Board/AVR8/BUI/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/BUI/LEDs.h"/>
</module>
<module type="driver" id="lufa.drivers.board#bumbleb" caption="Board Support - BUMBLEB">
<build type="doxygen-entry-point" value="Group_BoardInfo_BUMBLEB"/>
<device-support value="at90usb162"/>
<build type="define" name="BOARD" value="BOARD_BUMBLEB"/>
<require idref="lufa.drivers.board.buttons"/>
<require idref="lufa.drivers.board.leds"/>
<require idref="lufa.drivers.board.joystick"/>
<build type="header-file" value="Drivers/Board/AVR8/BUMBLEB/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/BUMBLEB/Buttons.h"/>
<build type="header-file" value="Drivers/Board/AVR8/BUMBLEB/Joystick.h"/>
<build type="header-file" value="Drivers/Board/AVR8/BUMBLEB/LEDs.h"/>
</module>
<module type="driver" id="lufa.drivers.board#culv3" caption="Board Support - CULV3">
<build type="doxygen-entry-point" value="Group_BoardInfo_CULV3"/>
<device-support value="atmega32u4"/>
<build type="define" name="BOARD" value="BOARD_CULV3"/>
<require idref="lufa.drivers.board.buttons"/>
<require idref="lufa.drivers.board.leds"/>
<build type="header-file" value="Drivers/Board/AVR8/CULV3/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/CULV3/Buttons.h"/>
<build type="header-file" value="Drivers/Board/AVR8/CULV3/LEDs.h"/>
</module>
<module type="driver" id="lufa.drivers.board#duce" caption="Board Support - DUCE">
<build type="doxygen-entry-point" value="Group_BoardInfo_DUCE"/>
<device-support value="atmega32u2"/>
<build type="define" name="BOARD" value="BOARD_DUCE"/>
<require idref="lufa.drivers.board.leds"/>
<build type="header-file" value="Drivers/Board/AVR8/DUCE/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/DUCE/LEDs.h"/>
</module>
<module type="driver" id="lufa.drivers.board#evk527" caption="Board Support - EVK527">
<build type="doxygen-entry-point" value="Group_BoardInfo_EVK527"/>
<device-support value="atmega32u4"/>
<build type="define" name="BOARD" value="BOARD_EVK527"/>
<require idref="lufa.drivers.misc.at45db321c"/>
<require idref="lufa.drivers.peripheral.spi"/>
<require idref="lufa.drivers.board.buttons"/>
<require idref="lufa.drivers.board.dataflash"/>
<require idref="lufa.drivers.board.joystick"/>
<require idref="lufa.drivers.board.leds"/>
<build type="header-file" value="Drivers/Board/AVR8/EVK527/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/EVK527/Buttons.h"/>
<build type="header-file" value="Drivers/Board/AVR8/EVK527/Dataflash.h"/>
<build type="header-file" value="Drivers/Board/AVR8/EVK527/Joystick.h"/>
<build type="header-file" value="Drivers/Board/AVR8/EVK527/LEDs.h"/>
</module>
<module type="driver" id="lufa.drivers.board#jm_db_u2" caption="Board Support - JMDBU2">
<build type="doxygen-entry-point" value="Group_BoardInfo_JMDBU2"/>
<device-support value="atmega32u2"/>
<build type="define" name="BOARD" value="BOARD_JMDBU2"/>
<require idref="lufa.drivers.board.buttons"/>
<require idref="lufa.drivers.board.leds"/>
<build type="header-file" value="Drivers/Board/AVR8/JMDBU2/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/JMDBU2/Buttons.h"/>
<build type="header-file" value="Drivers/Board/AVR8/JMDBU2/LEDs.h"/>
</module>
<module type="driver" id="lufa.drivers.board#leonardo" caption="Board Support - LEONARDO">
<build type="doxygen-entry-point" value="Group_BoardInfo_LEONARDO"/>
<device-support value="atmega32u4"/>
<build type="define" name="BOARD" value="BOARD_LEONARDO"/>
<require idref="lufa.drivers.board.leds"/>
<build type="header-file" value="Drivers/Board/AVR8/LEONARDO/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/LEONARDO/LEDs.h"/>
</module>
<module type="driver" id="lufa.drivers.board#maximus" caption="Board Support - MAXIMUS">
<build type="doxygen-entry-point" value="Group_BoardInfo_MAXIMUS"/>
<device-support value="at90usb162"/>
<build type="define" name="BOARD" value="BOARD_MAXIMUS"/>
<require idref="lufa.drivers.board.leds"/>
<build type="header-file" value="Drivers/Board/AVR8/MAXIMUS/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/MAXIMUS/LEDs.h"/>
</module>
<module type="driver" id="lufa.drivers.board#micropendous_32u2" caption="Board Support - MICROPENDOUS_32U2">
<build type="doxygen-entry-point" value="Group_BoardInfo_MICROPENDOUS_32U2"/>
<device-support value="atmega32u2"/>
<build type="define" name="BOARD" value="BOARD_MICROPENDOUS_32U2"/>
<require idref="lufa.drivers.board.leds"/>
<require idref="lufa.drivers.board.buttons"/>
<build type="header-file" value="Drivers/Board/AVR8/MICROPENDOUS/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/MICROPENDOUS/LEDs.h"/>
<build type="header-file" value="Drivers/Board/AVR8/MICROPENDOUS/Buttons.h"/>
</module>
<module type="driver" id="lufa.drivers.board#micropendous_a" caption="Board Support - MICROPENDOUS_A">
<build type="doxygen-entry-point" value="Group_BoardInfo_MICROPENDOUS_A"/>
<device-support value="at90usb1287"/>
<build type="define" name="BOARD" value="BOARD_MICROPENDOUS_A"/>
<require idref="lufa.drivers.board.buttons"/>
<build type="header-file" value="Drivers/Board/AVR8/MICROPENDOUS/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/MICROPENDOUS/Buttons.h"/>
</module>
<module type="driver" id="lufa.drivers.board#micropendous_1" caption="Board Support - MICROPENDOUS_1">
<build type="doxygen-entry-point" value="Group_BoardInfo_MICROPENDOUS_1"/>
<device-support value="at90usb162"/>
<build type="define" name="BOARD" value="BOARD_MICROPENDOUS_1"/>
<require idref="lufa.drivers.board.buttons"/>
<build type="header-file" value="Drivers/Board/AVR8/MICROPENDOUS/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/MICROPENDOUS/Buttons.h"/>
</module>
<module type="driver" id="lufa.drivers.board#micropendous_2" caption="Board Support - MICROPENDOUS_2">
<build type="doxygen-entry-point" value="Group_BoardInfo_MICROPENDOUS_2"/>
<device-support value="atmega32u4"/>
<build type="define" name="BOARD" value="BOARD_MICROPENDOUS_2"/>
<require idref="lufa.drivers.board.buttons"/>
<build type="header-file" value="Drivers/Board/AVR8/MICROPENDOUS/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/MICROPENDOUS/Buttons.h"/>
</module>
<module type="driver" id="lufa.drivers.board#micropendous_3" caption="Board Support - MICROPENDOUS_3">
<build type="doxygen-entry-point" value="Group_BoardInfo_MICROPENDOUS_3"/>
<device-support value="at90usb1287"/>
<build type="define" name="BOARD" value="BOARD_MICROPENDOUS_3"/>
<require idref="lufa.drivers.board.buttons"/>
<build type="header-file" value="Drivers/Board/AVR8/MICROPENDOUS/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/MICROPENDOUS/Buttons.h"/>
</module>
<module type="driver" id="lufa.drivers.board#micropendous_4" caption="Board Support - MICROPENDOUS_4">
<build type="doxygen-entry-point" value="Group_BoardInfo_MICROPENDOUS_4"/>
<device-support value="at90usb1287"/>
<build type="define" name="BOARD" value="BOARD_MICROPENDOUS_4"/>
<require idref="lufa.drivers.board.buttons"/>
<build type="header-file" value="Drivers/Board/AVR8/MICROPENDOUS/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/MICROPENDOUS/Buttons.h"/>
</module>
<module type="driver" id="lufa.drivers.board#micropendous_dip" caption="Board Support - MICROPENDOUS_DIP">
<build type="doxygen-entry-point" value="Group_BoardInfo_MICROPENDOUS_DIP"/>
<device-support value="at90usb1287"/>
<build type="define" name="BOARD" value="BOARD_MICROPENDOUS_DIP"/>
<require idref="lufa.drivers.board.buttons"/>
<build type="header-file" value="Drivers/Board/AVR8/MICROPENDOUS/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/MICROPENDOUS/Buttons.h"/>
</module>
<module type="driver" id="lufa.drivers.board#micropendous_rev1" caption="Board Support - MICROPENDOUS_REV1">
<build type="doxygen-entry-point" value="Group_BoardInfo_MICROPENDOUS_REV1"/>
<device-support value="at90usb1287"/>
<build type="define" name="BOARD" value="BOARD_MICROPENDOUS_REV1"/>
<require idref="lufa.drivers.board.leds"/>
<require idref="lufa.drivers.board.buttons"/>
<build type="header-file" value="Drivers/Board/AVR8/MICROPENDOUS/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/MICROPENDOUS/LEDs.h"/>
<build type="header-file" value="Drivers/Board/AVR8/MICROPENDOUS/Buttons.h"/>
</module>
<module type="driver" id="lufa.drivers.board#micropendous_rev2" caption="Board Support - MICROPENDOUS_REV2">
<build type="doxygen-entry-point" value="Group_BoardInfo_MICROPENDOUS_REV2"/>
<device-support value="at90usb1287"/>
<build type="define" name="BOARD" value="BOARD_MICROPENDOUS_REV2"/>
<require idref="lufa.drivers.board.leds"/>
<require idref="lufa.drivers.board.buttons"/>
<build type="header-file" value="Drivers/Board/AVR8/MICROPENDOUS/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/MICROPENDOUS/LEDs.h"/>
<build type="header-file" value="Drivers/Board/AVR8/MICROPENDOUS/Buttons.h"/>
</module>
<module type="driver" id="lufa.drivers.board#microsin_162" caption="Board Support - MICROSIN162">
<build type="doxygen-entry-point" value="Group_BoardInfo_MICROSIN162"/>
<device-support value="atmega162"/>
<build type="define" name="BOARD" value="BOARD_MICROSIN162"/>
<require idref="lufa.drivers.board.leds"/>
<require idref="lufa.drivers.board.buttons"/>
<build type="header-file" value="Drivers/Board/AVR8/MICROSIN162/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/MICROSIN162/LEDs.h"/>
<build type="header-file" value="Drivers/Board/AVR8/MICROSIN162/Buttons.h"/>
</module>
<module type="driver" id="lufa.drivers.board#minimus" caption="Board Support - MINIMUS">
<build type="doxygen-entry-point" value="Group_BoardInfo_MINIMUS"/>
<device-support value="atmega32u2"/>
<build type="define" name="BOARD" value="BOARD_MINIMUS"/>
<require idref="lufa.drivers.board.leds"/>
<require idref="lufa.drivers.board.buttons"/>
<build type="header-file" value="Drivers/Board/AVR8/MINIMUS/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/MINIMUS/LEDs.h"/>
<build type="header-file" value="Drivers/Board/AVR8/MINIMUS/Buttons.h"/>
</module>
<module type="driver" id="lufa.drivers.board#multio" caption="Board Support - MULTIO">
<build type="doxygen-entry-point" value="Group_BoardInfo_MULTIO"/>
<device-support value="at90usb162"/>
<build type="define" name="BOARD" value="BOARD_MULTIO"/>
<require idref="lufa.drivers.board.leds"/>
<build type="header-file" value="Drivers/Board/AVR8/MULTIO/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/MULTIO/LEDs.h"/>
</module>
<module type="driver" id="lufa.drivers.board#olimex_162" caption="Board Support - OLIMEX162">
<build type="doxygen-entry-point" value="Group_BoardInfo_OLIMEX162"/>
<device-support value="at90usb162"/>
<build type="define" name="BOARD" value="BOARD_OLIMEX162"/>
<require idref="lufa.drivers.board.leds"/>
<require idref="lufa.drivers.board.buttons"/>
<build type="header-file" value="Drivers/Board/AVR8/OLIMEX162/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/OLIMEX162/LEDs.h"/>
<build type="header-file" value="Drivers/Board/AVR8/OLIMEX162/Buttons.h"/>
</module>
<module type="driver" id="lufa.drivers.board#olimex_32u4" caption="Board Support - OLIMEX32U4">
<build type="doxygen-entry-point" value="Group_BoardInfo_OLIMEX32U4"/>
<device-support value="atmega32u4"/>
<build type="define" name="BOARD" value="BOARD_OLIMEX32U4"/>
<require idref="lufa.drivers.board.leds"/>
<require idref="lufa.drivers.board.buttons"/>
<build type="header-file" value="Drivers/Board/AVR8/OLIMEX32U4/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/OLIMEX32U4/LEDs.h"/>
<build type="header-file" value="Drivers/Board/AVR8/OLIMEX32U4/Buttons.h"/>
</module>
<module type="driver" id="lufa.drivers.board#olimex_isp_mkii" caption="Board Support - OLIMEXISPMK2">
<build type="doxygen-entry-point" value="Group_BoardInfo_OLIMEXISPMK2"/>
<device-support value="at90usb162"/>
<build type="define" name="BOARD" value="BOARD_OLIMEXISPMK2"/>
<require idref="lufa.drivers.board.leds"/>
<require idref="lufa.drivers.board.buttons"/>
<build type="header-file" value="Drivers/Board/AVR8/OLIMEXISPMK2/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/OLIMEXISPMK2/LEDs.h"/>
<build type="header-file" value="Drivers/Board/AVR8/OLIMEXISPMK2/Buttons.h"/>
</module>
<module type="driver" id="lufa.drivers.board#olimex_t32u4" caption="Board Support - OLIMEX_T32U4">
<build type="doxygen-entry-point" value="Group_BoardInfo_OLIMEXT32U4"/>
<device-support value="atmega32u4"/>
<build type="define" name="BOARD" value="BOARD_OLIMEXT32U4"/>
<require idref="lufa.drivers.board.leds"/>
<require idref="lufa.drivers.board.buttons"/>
<build type="header-file" value="Drivers/Board/AVR8/OLIMEXT32U4/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/OLIMEXT32U4/LEDs.h"/>
<build type="header-file" value="Drivers/Board/AVR8/OLIMEXT32U4/Buttons.h"/>
</module>
<module type="driver" id="lufa.drivers.board#rzusbstick" caption="Board Support - RZUSBSTICK">
<build type="doxygen-entry-point" value="Group_BoardInfo_RZUSBSTICK"/>
<device-support value="at90usb1287"/>
<build type="define" name="BOARD" value="BOARD_RZUSBSTICK"/>
<require idref="lufa.drivers.board.leds"/>
<build type="header-file" value="Drivers/Board/AVR8/RZUSBSTICK/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/RZUSBSTICK/LEDs.h"/>
</module>
<module type="driver" id="lufa.drivers.board#sparkfun_8u2" caption="Board Support - SPARKFUN8U2">
<build type="doxygen-entry-point" value="Group_BoardInfo_SPARKFUN8U2"/>
<device-support value="atmega8u2"/>
<build type="define" name="BOARD" value="BOARD_SPARKFUN8U2"/>
<require idref="lufa.drivers.board.leds"/>
<build type="header-file" value="Drivers/Board/AVR8/SPARKFUN8U2/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/SPARKFUN8U2/LEDs.h"/>
</module>
<module type="driver" id="lufa.drivers.board#stk525" caption="Board Support - STK525">
<build type="doxygen-entry-point" value="Group_BoardInfo_STK525"/>
<device-support value="at90usb1287"/>
<device-support value="at90usb1286"/>
<device-support value="at90usb647"/>
<device-support value="at90usb646"/>
<build type="define" name="BOARD" value="BOARD_STK525"/>
<require idref="lufa.drivers.misc.at45db321c"/>
<require idref="lufa.drivers.peripheral.spi"/>
<require idref="lufa.drivers.board.buttons"/>
<require idref="lufa.drivers.board.dataflash"/>
<require idref="lufa.drivers.board.joystick"/>
<require idref="lufa.drivers.board.leds"/>
<build type="header-file" value="Drivers/Board/AVR8/STK525/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/STK525/Buttons.h"/>
<build type="header-file" value="Drivers/Board/AVR8/STK525/Dataflash.h"/>
<build type="header-file" value="Drivers/Board/AVR8/STK525/Joystick.h"/>
<build type="header-file" value="Drivers/Board/AVR8/STK525/LEDs.h"/>
</module>
<module type="driver" id="lufa.drivers.board#stk526" caption="Board Support - STK526">
<build type="doxygen-entry-point" value="Group_BoardInfo_STK526"/>
<device-support value="at90usb162"/>
<device-support value="at90usb82"/>
<device-support value="atmega32u2"/>
<device-support value="atmega16u2"/>
<device-support value="atmega8u2"/>
<build type="define" name="BOARD" value="BOARD_STK526"/>
<require idref="lufa.drivers.misc.at45db642d"/>
<require idref="lufa.drivers.peripheral.spi"/>
<require idref="lufa.drivers.board.buttons"/>
<require idref="lufa.drivers.board.dataflash"/>
<require idref="lufa.drivers.board.joystick"/>
<require idref="lufa.drivers.board.leds"/>
<build type="header-file" value="Drivers/Board/AVR8/STK526/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/STK526/Buttons.h"/>
<build type="header-file" value="Drivers/Board/AVR8/STK526/Dataflash.h"/>
<build type="header-file" value="Drivers/Board/AVR8/STK526/Joystick.h"/>
<build type="header-file" value="Drivers/Board/AVR8/STK526/LEDs.h"/>
</module>
<module type="driver" id="lufa.drivers.board#teensy" caption="Board Support - TEENSY">
<build type="doxygen-entry-point" value="Group_BoardInfo_TEENSY"/>
<device-support value="at90usb162"/>
<build type="define" name="BOARD" value="BOARD_TEENSY"/>
<require idref="lufa.drivers.board.leds"/>
<build type="header-file" value="Drivers/Board/AVR8/TEENSY/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/TEENSY/LEDs.h"/>
</module>
<module type="driver" id="lufa.drivers.board#teensy2" caption="Board Support - TEENSY2">
<build type="doxygen-entry-point" value="Group_BoardInfo_TEENSY2"/>
<device-support value="at90usb646"/>
<build type="define" name="BOARD" value="BOARD_TEENSY2"/>
<require idref="lufa.drivers.board.leds"/>
<build type="header-file" value="Drivers/Board/AVR8/TEENSY/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/TEENSY/LEDs.h"/>
</module>
<module type="driver" id="lufa.drivers.board#tul" caption="Board Support - TUL">
<build type="doxygen-entry-point" value="Group_BoardInfo_TUL"/>
<device-support value="atmega32u4"/>
<build type="define" name="BOARD" value="BOARD_TUL"/>
<require idref="lufa.drivers.board.buttons"/>
<require idref="lufa.drivers.board.leds"/>
<build type="header-file" value="Drivers/Board/AVR8/TUL/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/TUL/Buttons.h"/>
<build type="header-file" value="Drivers/Board/AVR8/TUL/LEDs.h"/>
</module>
<module type="driver" id="lufa.drivers.board#udip" caption="Board Support - UDIP">
<build type="doxygen-entry-point" value="Group_BoardInfo_UDIP"/>
<device-support value="atmega32u2"/>
<build type="define" name="BOARD" value="BOARD_UDIP"/>
<require idref="lufa.drivers.board.buttons"/>
<require idref="lufa.drivers.board.leds"/>
<build type="header-file" value="Drivers/Board/AVR8/UDIP/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/UDIP/Buttons.h"/>
<build type="header-file" value="Drivers/Board/AVR8/UDIP/LEDs.h"/>
</module>
<module type="driver" id="lufa.drivers.board#uno" caption="Board Support - UNO">
<build type="doxygen-entry-point" value="Group_BoardInfo_UNO"/>
<device-support value="atmega8u2"/>
<device-support value="atmega16u2"/>
<build type="define" name="BOARD" value="BOARD_UNO"/>
<require idref="lufa.drivers.board.leds"/>
<build type="header-file" value="Drivers/Board/AVR8/UNO/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/UNO/LEDs.h"/>
</module>
<module type="driver" id="lufa.drivers.board#usb2ax" caption="Board Support - USB2AX">
<build type="doxygen-entry-point" value="Group_BoardInfo_USB2AX"/>
<device-support value="atmega32u2"/>
<build type="define" name="BOARD" value="BOARD_USB2AX"/>
<require idref="lufa.drivers.board.buttons"/>
<require idref="lufa.drivers.board.leds"/>
<build type="header-file" value="Drivers/Board/AVR8/USB2AX/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/USB2AX/Buttons.h"/>
<build type="header-file" value="Drivers/Board/AVR8/USB2AX/LEDs.h"/>
</module>
<module type="driver" id="lufa.drivers.board#usb2ax_v3" caption="Board Support - USB2AX_V3">
<build type="doxygen-entry-point" value="Group_BoardInfo_USB2AX_V3"/>
<device-support value="atmega32u2"/>
<build type="define" name="BOARD" value="BOARD_USB2AX_V3"/>
<require idref="lufa.drivers.board.buttons"/>
<require idref="lufa.drivers.board.leds"/>
<build type="header-file" value="Drivers/Board/AVR8/USB2AX/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/USB2AX/Buttons.h"/>
<build type="header-file" value="Drivers/Board/AVR8/USB2AX/LEDs.h"/>
</module>
<module type="driver" id="lufa.drivers.board#usb2ax_v3_1" caption="Board Support - USB2AX_V31">
<build type="doxygen-entry-point" value="Group_BoardInfo_USB2AX_V31"/>
<device-support value="atmega32u2"/>
<build type="define" name="BOARD" value="BOARD_USB2AX_V31"/>
<require idref="lufa.drivers.board.buttons"/>
<require idref="lufa.drivers.board.leds"/>
<build type="header-file" value="Drivers/Board/AVR8/USB2AX/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/USB2AX/Buttons.h"/>
<build type="header-file" value="Drivers/Board/AVR8/USB2AX/LEDs.h"/>
</module>
<module type="driver" id="lufa.drivers.board#usbfoo" caption="Board Support - USBFOO">
<build type="doxygen-entry-point" value="Group_BoardInfo_USBFOO"/>
<device-support value="atmega162"/>
<build type="define" name="BOARD" value="BOARD_USBFOO"/>
<require idref="lufa.drivers.board.buttons"/>
<require idref="lufa.drivers.board.leds"/>
<build type="header-file" value="Drivers/Board/AVR8/USBFOO/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/USBFOO/Buttons.h"/>
<build type="header-file" value="Drivers/Board/AVR8/USBFOO/LEDs.h"/>
</module>
<module type="driver" id="lufa.drivers.board#usbkey" caption="Board Support - USBKEY">
<build type="doxygen-entry-point" value="Group_BoardInfo_USBKEY"/>
<device-support value="at90usb1287"/>
<build type="define" name="BOARD" value="BOARD_USBKEY"/>
<require idref="lufa.drivers.misc.at45db642d"/>
<require idref="lufa.drivers.peripheral.spi"/>
<require idref="lufa.drivers.board.buttons"/>
<require idref="lufa.drivers.board.dataflash"/>
<require idref="lufa.drivers.board.joystick"/>
<require idref="lufa.drivers.board.leds"/>
<build type="header-file" value="Drivers/Board/AVR8/USBKEY/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/USBKEY/Buttons.h"/>
<build type="header-file" value="Drivers/Board/AVR8/USBKEY/Dataflash.h"/>
<build type="header-file" value="Drivers/Board/AVR8/USBKEY/Joystick.h"/>
<build type="header-file" value="Drivers/Board/AVR8/USBKEY/LEDs.h"/>
</module>
<module type="driver" id="lufa.drivers.board#usbtiny_mkii" caption="Board Support - USBTINYMKII">
<build type="doxygen-entry-point" value="Group_BoardInfo_USBTINYMKII"/>
<device-support value="at90usb162"/>
<build type="define" name="BOARD" value="BOARD_USBTINYMKII"/>
<require idref="lufa.drivers.board.buttons"/>
<require idref="lufa.drivers.board.leds"/>
<build type="header-file" value="Drivers/Board/AVR8/USBTINYMKII/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/USBTINYMKII/Buttons.h"/>
<build type="header-file" value="Drivers/Board/AVR8/USBTINYMKII/LEDs.h"/>
</module>
<module type="driver" id="lufa.drivers.board#xplain_rev1" caption="Board Support - XPLAIN (HW Rev 1)">
<build type="doxygen-entry-point" value="Group_BoardInfo_XPLAIN_REV1"/>
<device-support value="at90usb1287"/>
<require idref="lufa.drivers.misc.at45db642d"/>
<require idref="lufa.drivers.peripheral.spi"/>
<require idref="lufa.drivers.board.dataflash"/>
<require idref="lufa.drivers.board.leds"/>
<build type="header-file" value="Drivers/Board/AVR8/XPLAIN/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/XPLAIN/Dataflash.h"/>
<build type="header-file" value="Drivers/Board/AVR8/XPLAIN/LEDs.h"/>
<build type="define" name="BOARD" value="BOARD_XPLAIN_REV1"/>
</module>
<module type="driver" id="lufa.drivers.board#xplain" caption="Board Support - XPLAIN (HW Rev 2+)">
<build type="doxygen-entry-point" value="Group_BoardInfo_XPLAIN"/>
<device-support value="at90usb1287"/>
<require idref="lufa.drivers.misc.at45db642d"/>
<require idref="lufa.drivers.peripheral.spi"/>
<require idref="lufa.drivers.board.dataflash"/>
<require idref="lufa.drivers.board.leds"/>
<build type="header-file" value="Drivers/Board/AVR8/XPLAIN/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/XPLAIN/Dataflash.h"/>
<build type="header-file" value="Drivers/Board/AVR8/XPLAIN/LEDs.h"/>
<build type="define" name="BOARD" value="BOARD_XPLAIN"/>
</module>
<module type="driver" id="lufa.drivers.board#a3bu_xplained" caption="Board Support - A3BU_XPLAINED">
<build type="doxygen-entry-point" value="Group_BoardInfo_A3BU_XPLAINED"/>
<device-support value="atxmega256a3bu"/>
<require idref="lufa.drivers.misc.at45db642d"/>
<require idref="lufa.drivers.peripheral.usart_spi"/>
<require idref="lufa.drivers.board.buttons"/>
<require idref="lufa.drivers.board.dataflash"/>
<require idref="lufa.drivers.board.leds"/>
<build type="header-file" value="Drivers/Board/XMEGA/A3BU_XPLAINED/Board.h"/>
<build type="header-file" value="Drivers/Board/XMEGA/A3BU_XPLAINED/Buttons.h"/>
<build type="header-file" value="Drivers/Board/XMEGA/A3BU_XPLAINED/Dataflash.h"/>
<build type="header-file" value="Drivers/Board/XMEGA/A3BU_XPLAINED/LEDs.h"/>
<build type="define" name="BOARD" value="BOARD_A3BU_XPLAINED"/>
</module>
<module type="driver" id="lufa.drivers.board#b1_xplained" caption="Board Support - B1_XPLAINED">
<build type="doxygen-entry-point" value="Group_BoardInfo_B1_XPLAINED"/>
<device-support value="atxmega128b1"/>
<require idref="lufa.drivers.misc.at45db642d"/>
<require idref="lufa.drivers.peripheral.usart_spi"/>
<require idref="lufa.drivers.board.buttons"/>
<require idref="lufa.drivers.board.dataflash"/>
<require idref="lufa.drivers.board.leds"/>
<build type="header-file" value="Drivers/Board/XMEGA/B1_XPLAINED/Board.h"/>
<build type="header-file" value="Drivers/Board/XMEGA/B1_XPLAINED/Buttons.h"/>
<build type="header-file" value="Drivers/Board/XMEGA/B1_XPLAINED/Dataflash.h"/>
<build type="header-file" value="Drivers/Board/XMEGA/B1_XPLAINED/LEDs.h"/>
<build type="define" name="BOARD" value="BOARD_B1_XPLAINED"/>
</module>
<module type="driver" id="lufa.drivers.board#evk1100" caption="Board Support - EVK1100">
<build type="doxygen-entry-point" value="Group_BoardInfo_EVK1100"/>
<device-support value="at32uc3a0512"/>
<require idref="lufa.drivers.board.buttons"/>
<require idref="lufa.drivers.board.joystick"/>
<require idref="lufa.drivers.board.leds"/>
<build type="header-file" value="Drivers/Board/UC3/EVK1100/Board.h"/>
<build type="header-file" value="Drivers/Board/UC3/EVK1100/Buttons.h"/>
<build type="header-file" value="Drivers/Board/UC3/EVK1100/Joystick.h"/>
<build type="header-file" value="Drivers/Board/UC3/EVK1100/LEDs.h"/>
<build type="define" name="BOARD" value="BOARD_EVK1100"/>
</module>
<module type="driver" id="lufa.drivers.board#evk1101" caption="Board Support - EVK1101">
<build type="doxygen-entry-point" value="Group_BoardInfo_EVK1101"/>
<device-support value="at32uc3b0256"/>
<require idref="lufa.drivers.board.buttons"/>
<require idref="lufa.drivers.board.joystick"/>
<require idref="lufa.drivers.board.leds"/>
<build type="header-file" value="Drivers/Board/UC3/EVK1101/Board.h"/>
<build type="header-file" value="Drivers/Board/UC3/EVK1101/Buttons.h"/>
<build type="header-file" value="Drivers/Board/UC3/EVK1101/Joystick.h"/>
<build type="header-file" value="Drivers/Board/UC3/EVK1101/LEDs.h"/>
<build type="define" name="BOARD" value="BOARD_EVK1101"/>
</module>
<module type="driver" id="lufa.drivers.board#evk1104" caption="Board Support - EVK1104">
<build type="doxygen-entry-point" value="Group_BoardInfo_EVK1104"/>
<device-support value="at32uc3a3256"/>
<require idref="lufa.drivers.board.buttons"/>
<require idref="lufa.drivers.board.leds"/>
<build type="header-file" value="Drivers/Board/UC3/EVK1104/Board.h"/>
<build type="header-file" value="Drivers/Board/UC3/EVK1104/Buttons.h"/>
<build type="header-file" value="Drivers/Board/UC3/EVK1104/LEDs.h"/>
<build type="define" name="BOARD" value="BOARD_EVK1104"/>
</module>
<module type="driver" id="lufa.drivers.board#uc3a3_xplained" caption="Board Support - UC3A3_XPLAINED">
<build type="doxygen-entry-point" value="Group_BoardInfo_UC3_A3_XPLAINED"/>
<device-support value="at32uc3a3256"/>
<require idref="lufa.drivers.board.buttons"/>
<require idref="lufa.drivers.board.leds"/>
<build type="header-file" value="Drivers/Board/UC3/UC3A3_XPLAINED/Board.h"/>
<build type="header-file" value="Drivers/Board/UC3/UC3A3_XPLAINED/Buttons.h"/>
<build type="header-file" value="Drivers/Board/UC3/UC3A3_XPLAINED/LEDs.h"/>
<build type="define" name="BOARD" value="BOARD_UC3A3_XPLAINED"/>
</module>
<module type="driver" id="lufa.drivers.board#stange_isp" caption="Board Support - STANGE_ISP">
<build type="doxygen-entry-point" value="Group_BoardInfo_STANGE_ISP"/>
<device-support value="at90usb162"/>
<require idref="lufa.drivers.board.buttons"/>
<require idref="lufa.drivers.board.leds"/>
<build type="header-file" value="Drivers/Board/AVR8/STANGE_ISP/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/STANGE_ISP/Buttons.h"/>
<build type="header-file" value="Drivers/Board/AVR8/STANGE_ISP/LEDs.h"/>
<build type="define" name="BOARD" value="BOARD_STANGE_ISP"/>
</module>
<module type="driver" id="lufa.drivers.board#c3_xplained" caption="Board Support - C3_XPLAINED">
<build type="doxygen-entry-point" value="Group_BoardInfo_C3_XPLAINED"/>
<device-support value="atxmega384c3"/>
<require idref="lufa.drivers.board.buttons"/>
<require idref="lufa.drivers.board.leds"/>
<build type="header-file" value="Drivers/Board/XMEGA/C3_XPLAINED/Board.h"/>
<build type="header-file" value="Drivers/Board/XMEGA/C3_XPLAINED/Buttons.h"/>
<build type="header-file" value="Drivers/Board/XMEGA/C3_XPLAINED/LEDs.h"/>
<build type="define" name="BOARD" value="BOARD_C3_XPLAINED"/>
</module>
<module type="driver" id="lufa.drivers.board#u2s" caption="Board Support - U2S">
<build type="doxygen-entry-point" value="Group_BoardInfo_U2S"/>
<device-support value="atmega32u2"/>
<require idref="lufa.drivers.board.buttons"/>
<require idref="lufa.drivers.board.leds"/>
<build type="header-file" value="Drivers/Board/AVR8/U2S/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/U2S/Buttons.h"/>
<build type="header-file" value="Drivers/Board/AVR8/U2S/LEDs.h"/>
<build type="define" name="BOARD" value="BOARD_U2S"/>
</module>
<module type="driver" id="lufa.drivers.board#yun" caption="Board Support - YUN">
<build type="doxygen-entry-point" value="Group_BoardInfo_YUN"/>
<device-support value="atmega32u4"/>
<require idref="lufa.drivers.board.leds"/>
<build type="header-file" value="Drivers/Board/AVR8/YUN/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/YUN/LEDs.h"/>
<build type="define" name="BOARD" value="BOARD_YUN"/>
</module>
<module type="driver" id="lufa.drivers.board#micro" caption="Board Support - MICRO">
<build type="doxygen-entry-point" value="Group_BoardInfo_MICRO"/>
<device-support value="atmega32u4"/>
<require idref="lufa.drivers.board.leds"/>
<build type="header-file" value="Drivers/Board/AVR8/MICRO/Board.h"/>
<build type="header-file" value="Drivers/Board/AVR8/MICRO/LEDs.h"/>
<build type="define" name="BOARD" value="BOARD_MICRO"/>
</module>
</select-by-config>
</asf>
</lufa>

View file

@ -0,0 +1,57 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<module type="component" id="lufa.drivers.misc.at45db321c" caption="LUFA AT45DB321C Dataflash Commands">
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_AT45DB321C"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Misc/AT45DB321C.h"/>
</module>
<module type="component" id="lufa.drivers.misc.at45db642d" caption="LUFA AT45DB642D Dataflash Commands">
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_AT45DB321C"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Misc/AT45DB642D.h"/>
</module>
<module type="service" id="lufa.drivers.misc.ringbuffer" caption="LUFA Ring Buffer">
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_RingBuff"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Misc/RingBuffer.h"/>
</module>
<module type="service" id="lufa.drivers.misc.ansi" caption="LUFA ANSI Terminal Commands">
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_Terminal"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Misc/TerminalCodes.h"/>
</module>
</asf>
</lufa>

View file

@ -0,0 +1,198 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<select-by-device id="lufa.drivers.peripheral.usart" caption="LUFA USART Driver">
<module type="driver" id="lufa.drivers.peripheral.usart#avr8" caption="LUFA USART Driver - AVR8">
<device-support-alias value="lufa_avr8"/>
<build type="doxygen-entry-point" value="Group_Serial"/>
<require idref="lufa.common"/>
<require idref="lufa.drivers.misc.ansi"/>
<build type="c-source" value="Drivers/Peripheral/AVR8/Serial_AVR8.c"/>
<build type="header-file" value="Drivers/Peripheral/AVR8/Serial_AVR8.h"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Peripheral/Serial.h"/>
</module>
<module type="driver" id="lufa.drivers.peripheral.usart#xmega" caption="LUFA USART Driver - AVR8">
<device-support-alias value="lufa_xmega"/>
<build type="doxygen-entry-point" value="Group_Serial"/>
<require idref="lufa.common"/>
<require idref="lufa.drivers.misc.ansi"/>
<build type="c-source" value="Drivers/Peripheral/XMEGA/Serial_XMEGA.c"/>
<build type="header-file" value="Drivers/Peripheral/XMEGA/Serial_XMEGA.h"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Peripheral/Serial.h"/>
</module>
<module type="driver" id="lufa.drivers.peripheral.usart#uc3" caption="LUFA USART Driver - UC3">
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_Serial"/>
<require idref="lufa.common"/>
<require idref="lufa.drivers.misc.ansi"/>
<info type="gui-flag" value="hidden"/>
</module>
</select-by-device>
<select-by-device id="lufa.drivers.peripheral.spi" caption="LUFA SPI Driver">
<module type="driver" id="lufa.drivers.peripheral.spi#avr8" caption="LUFA SPI Driver - AVR8">
<device-support-alias value="lufa_avr8"/>
<build type="doxygen-entry-point" value="Group_SPI"/>
<require idref="lufa.common"/>
<build type="header-file" value="Drivers/Peripheral/AVR8/SPI_AVR8.h"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Peripheral/SPI.h"/>
</module>
<module type="driver" id="lufa.drivers.peripheral.spi#xmega" caption="LUFA SPI Driver - XMEGA">
<device-support-alias value="lufa_xmega"/>
<build type="doxygen-entry-point" value="Group_SPI"/>
<require idref="lufa.common"/>
<build type="header-file" value="Drivers/Peripheral/XMEGA/SPI_XMEGA.h"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Peripheral/SPI.h"/>
</module>
<module type="driver" id="lufa.drivers.peripheral.spi#uc3" caption="LUFA SPI Driver - UC3">
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_SPI"/>
<require idref="lufa.common"/>
<info type="gui-flag" value="hidden"/>
</module>
</select-by-device>
<select-by-device id="lufa.drivers.peripheral.usart_spi" caption="LUFA USART SPI Driver">
<module type="driver" id="lufa.drivers.peripheral.usart_spi#avr8" caption="LUFA USART SPI Driver - AVR8">
<device-support-alias value="lufa_avr8"/>
<build type="doxygen-entry-point" value="Group_SerialSPI"/>
<require idref="lufa.common"/>
<build type="header-file" value="Drivers/Peripheral/AVR8/SerialSPI_AVR8.h"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Peripheral/SerialSPI.h"/>
</module>
<module type="driver" id="lufa.drivers.peripheral.usart_spi#xmega" caption="LUFA USART SPI Driver - XMEGA">
<device-support-alias value="lufa_xmega"/>
<build type="doxygen-entry-point" value="Group_SerialSPI"/>
<require idref="lufa.common"/>
<build type="header-file" value="Drivers/Peripheral/XMEGA/SerialSPI_XMEGA.h"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Peripheral/SerialSPI.h"/>
</module>
<module type="driver" id="lufa.drivers.peripheral.usart_spi#uc3" caption="LUFA USART SPI Driver - UC3">
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_SerialSPI"/>
<require idref="lufa.common"/>
<info type="gui-flag" value="hidden"/>
</module>
</select-by-device>
<select-by-device id="lufa.drivers.peripheral.twi" caption="LUFA TWI Master Driver">
<module type="driver" id="lufa.drivers.peripheral.twi#avr8" caption="LUFA TWI Master Driver - AVR8">
<device-support-alias value="lufa_avr8"/>
<build type="doxygen-entry-point" value="Group_TWI"/>
<require idref="lufa.common"/>
<build type="c-source" value="Drivers/Peripheral/AVR8/TWI_AVR8.c"/>
<build type="header-file" value="Drivers/Peripheral/AVR8/TWI_AVR8.h"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Peripheral/TWI.h"/>
</module>
<module type="driver" id="lufa.drivers.peripheral.twi#xmega" caption="LUFA TWI Master Driver - XMEGA">
<device-support-alias value="lufa_xmega"/>
<build type="doxygen-entry-point" value="Group_TWI"/>
<require idref="lufa.common"/>
<build type="c-source" value="Drivers/Peripheral/XMEGA/TWI_XMEGA.c"/>
<build type="header-file" value="Drivers/Peripheral/XMEGA/TWI_XMEGA.h"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Peripheral/TWI.h"/>
</module>
<module type="driver" id="lufa.drivers.peripheral.twi#uc3" caption="LUFA TWI Master Driver - UC3">
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_TWI"/>
<require idref="lufa.common"/>
<info type="gui-flag" value="hidden"/>
</module>
</select-by-device>
<select-by-device id="lufa.drivers.peripheral.adc" caption="LUFA ADC Driver">
<module type="driver" id="lufa.drivers.peripheral.adc#avr8" caption="LUFA ADC Driver - AVR8">
<device-support-alias value="lufa_avr8"/>
<build type="doxygen-entry-point" value="Group_ADC"/>
<require idref="lufa.common"/>
<build type="header-file" value="Drivers/Peripheral/AVR8/ADC_AVR8.h"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Peripheral/ADC.h"/>
</module>
<module type="driver" id="lufa.drivers.peripheral.adc#xmega" caption="LUFA ADC Driver - XMEGA">
<device-support-alias value="lufa_xmega"/>
<build type="doxygen-entry-point" value="Group_ADC"/>
<require idref="lufa.common"/>
<info type="gui-flag" value="hidden"/>
</module>
<module type="driver" id="lufa.drivers.peripheral.adc#uc3" caption="LUFA ADC Driver - UC3">
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_ADC"/>
<require idref="lufa.common"/>
<info type="gui-flag" value="hidden"/>
</module>
</select-by-device>
</asf>
</lufa>

View file

@ -0,0 +1,32 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<module type="driver" id="lufa.drivers.usb" caption="LUFA USB Driver">
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_USB"/>
<build type="define" name="USE_LUFA_CONFIG_HEADER" value=""/>
<build type="module-config" subtype="path" value="CodeTemplates"/>
<build type="module-config" subtype="required-header-file" value="LUFAConfig.h"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/USB/USB.h"/>
<require idref="lufa.common"/>
<require idref="lufa.drivers.usb.class"/>
<require idref="lufa.drivers.usb.core"/>
</module>
</asf>
</lufa>

View file

@ -0,0 +1,32 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<module type="service" id="lufa.drivers.usb.class" caption="LUFA USB Class Drivers">
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<info type="gui-flag" value="hidden"/>
<build type="doxygen-entry-point" value="Group_USBClassDrivers"/>
<require idref="lufa.drivers.usb.class.android"/>
<require idref="lufa.drivers.usb.class.audio"/>
<require idref="lufa.drivers.usb.class.cdc"/>
<require idref="lufa.drivers.usb.class.hid"/>
<require idref="lufa.drivers.usb.class.ms"/>
<require idref="lufa.drivers.usb.class.midi"/>
<require idref="lufa.drivers.usb.class.printer"/>
<require idref="lufa.drivers.usb.class.rndis"/>
<require idref="lufa.drivers.usb.class.si"/>
</module>
</asf>
</lufa>

View file

@ -0,0 +1,54 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<select-by-config id="lufa.drivers.usb.class.android" name="lufa.drivers.usb.class.android.mode" default="host" caption="LUFA USB Class Driver - Android Accessory">
<build type="doxygen-entry-point" value="Group_USBClassAOA"/>
<module type="service" id="lufa.drivers.usb.class.android#host" caption="LUFA USB Class Driver - Android Accessory (Host)">
<info type="description" value="summary">
Common definitions and Host mode implementation of the Android Open Accessory USB class.
</info>
<build type="doxygen-entry-point" value="Group_USBClassAOA"/>
<info type="gui-flag" value="hidden"/>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="header-file" value="Drivers/USB/Class/AndroidAccessoryClass.h"/>
<build type="header-file" value="Drivers/USB/Class/Common/AndroidAccessoryClassCommon.h"/>
<build type="header-file" value="Drivers/USB/Class/Host/AndroidAccessoryClassHost.h"/>
<build type="c-source" value="Drivers/USB/Class/Host/AndroidAccessoryClassHost.c"/>
</module>
<module type="service" id="lufa.drivers.usb.class.android#definitions_only" caption="LUFA USB Class Driver - Android Accessory (Definitions Only)">
<info type="description" value="summary">
Common definitions only (no implementations) of the Android Open Accessory USB class.
</info>
<build type="doxygen-entry-point" value="Group_USBClassAOA"/>
<info type="gui-flag" value="hidden"/>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="header-file" value="Drivers/USB/Class/AndroidAccessoryClass.h"/>
<build type="header-file" value="Drivers/USB/Class/Common/AndroidAccessoryClassCommon.h"/>
<build type="header-file" value="Drivers/USB/Class/Host/AndroidAccessoryClassHost.h"/>
</module>
</select-by-config>
</asf>
</lufa>

View file

@ -0,0 +1,109 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<select-by-config id="lufa.drivers.usb.class.audio" name="lufa.drivers.usb.class.audio.mode" default="host_device" caption="LUFA USB Class Driver - Audio 1.0">
<build type="doxygen-entry-point" value="Group_USBClassAudio"/>
<info type="gui-flag" value="hidden"/>
<module type="service" id="lufa.drivers.usb.class.audio#host_device" caption="LUFA USB Class Driver - Audio 1.0 (Host/Device)">
<info type="description" value="summary">
Common definitions and Host/Device mode implementations of the Audio 1.0 USB class.
</info>
<info type="gui-flag" value="hidden"/>
<build type="doxygen-entry-point" value="Group_USBClassAudio"/>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="header-file" value="Drivers/USB/Class/AudioClass.h"/>
<build type="header-file" value="Drivers/USB/Class/Common/AudioClassCommon.h"/>
<build type="header-file" value="Drivers/USB/Class/Device/AudioClassDevice.h"/>
<build type="c-source" value="Drivers/USB/Class/Device/AudioClassDevice.c"/>
<build type="header-file" value="Drivers/USB/Class/Host/AudioClassHost.h"/>
<build type="c-source" value="Drivers/USB/Class/Host/AudioClassHost.c"/>
</module>
<module type="service" id="lufa.drivers.usb.class.audio#host" caption="LUFA USB Class Driver - Audio 1.0 (Host)">
<info type="description" value="summary">
Common definitions and Host mode implementation of the Audio 1.0 USB class.
</info>
<build type="doxygen-entry-point" value="Group_USBClassAudio"/>
<info type="gui-flag" value="hidden"/>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="header-file" value="Drivers/USB/Class/AudioClass.h"/>
<build type="header-file" value="Drivers/USB/Class/Common/AudioClassCommon.h"/>
<build type="header-file" value="Drivers/USB/Class/Device/AudioClassDevice.h"/>
<build type="header-file" value="Drivers/USB/Class/Host/AudioClassHost.h"/>
<build type="c-source" value="Drivers/USB/Class/Host/AudioClassHost.c"/>
</module>
<module type="service" id="lufa.drivers.usb.class.audio#device" caption="LUFA USB Class Driver - Audio 1.0 (Device)">
<info type="description" value="summary">
Common definitions and Device mode implementation of the Audio 1.0 USB class.
</info>
<build type="doxygen-entry-point" value="Group_USBClassAudio"/>
<info type="gui-flag" value="hidden"/>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="header-file" value="Drivers/USB/Class/AudioClass.h"/>
<build type="header-file" value="Drivers/USB/Class/Common/AudioClassCommon.h"/>
<build type="header-file" value="Drivers/USB/Class/Device/AudioClassDevice.h"/>
<build type="c-source" value="Drivers/USB/Class/Device/AudioClassDevice.c"/>
<build type="header-file" value="Drivers/USB/Class/Host/AudioClassHost.h"/>
</module>
<module type="service" id="lufa.drivers.usb.class.audio#definitions_only" caption="LUFA USB Class Driver - Audio 1.0 (Definitions Only)">
<info type="description" value="summary">
Common definitions only (no implementations) of the Audio 1.0 USB class.
</info>
<build type="doxygen-entry-point" value="Group_USBClassAudio"/>
<info type="gui-flag" value="hidden"/>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="header-file" value="Drivers/USB/Class/AudioClass.h"/>
<build type="header-file" value="Drivers/USB/Class/Common/AudioClassCommon.h"/>
<build type="header-file" value="Drivers/USB/Class/Device/AudioClassDevice.h"/>
<build type="header-file" value="Drivers/USB/Class/Host/AudioClassHost.h"/>
</module>
</select-by-config>
</asf>
</lufa>

View file

@ -0,0 +1,99 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<select-by-config id="lufa.drivers.usb.class.cdc" name="lufa.drivers.usb.class.cdc.mode" default="host_device" caption="LUFA USB Class Driver - CDC">
<build type="doxygen-entry-point" value="Group_USBClassCDC"/>
<info type="gui-flag" value="hidden"/>
<module type="service" id="lufa.drivers.usb.class.cdc#host_device" caption="LUFA USB Class Driver - CDC (Host/Device)">
<info type="description" value="summary">
Common definitions and Host/Device mode implementations of the CDC USB class.
</info>
<build type="doxygen-entry-point" value="Group_USBClassCDC"/>
<info type="gui-flag" value="hidden"/>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="header-file" value="Drivers/USB/Class/CDCClass.h"/>
<build type="header-file" value="Drivers/USB/Class/Common/CDCClassCommon.h"/>
<build type="header-file" value="Drivers/USB/Class/Device/CDCClassDevice.h"/>
<build type="c-source" value="Drivers/USB/Class/Device/CDCClassDevice.c"/>
<build type="header-file" value="Drivers/USB/Class/Host/CDCClassHost.h"/>
<build type="c-source" value="Drivers/USB/Class/Host/CDCClassHost.c"/>
</module>
<module type="service" id="lufa.drivers.usb.class.cdc#host" caption="LUFA USB Class Driver - CDC (Host)">
<info type="description" value="summary">
Common definitions and Host mode implementation of the CDC USB class.
</info>
<build type="doxygen-entry-point" value="Group_USBClassCDC"/>
<info type="gui-flag" value="hidden"/>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="header-file" value="Drivers/USB/Class/CDCClass.h"/>
<build type="header-file" value="Drivers/USB/Class/Common/CDCClassCommon.h"/>
<build type="header-file" value="Drivers/USB/Class/Device/CDCClassDevice.h"/>
<build type="header-file" value="Drivers/USB/Class/Host/CDCClassHost.h"/>
<build type="c-source" value="Drivers/USB/Class/Host/CDCClassHost.c"/>
</module>
<module type="service" id="lufa.drivers.usb.class.cdc#device" caption="LUFA USB Class Driver - CDC (Device)">
<info type="description" value="summary">
Common definitions and Device mode implementation of the CDC USB class.
</info>
<build type="doxygen-entry-point" value="Group_USBClassCDC"/>
<info type="gui-flag" value="hidden"/>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="header-file" value="Drivers/USB/Class/CDCClass.h"/>
<build type="header-file" value="Drivers/USB/Class/Common/CDCClassCommon.h"/>
<build type="header-file" value="Drivers/USB/Class/Device/CDCClassDevice.h"/>
<build type="c-source" value="Drivers/USB/Class/Device/CDCClassDevice.c"/>
<build type="header-file" value="Drivers/USB/Class/Host/CDCClassHost.h"/>
</module>
<module type="service" id="lufa.drivers.usb.class.cdc#definitions_only" caption="LUFA USB Class Driver - CDC (Definitions Only)">
<info type="description" value="summary">
Common definitions only (no implementations) of the CDC USB class.
</info>
<build type="doxygen-entry-point" value="Group_USBClassCDC"/>
<info type="gui-flag" value="hidden"/>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="header-file" value="Drivers/USB/Class/CDCClass.h"/>
<build type="header-file" value="Drivers/USB/Class/Common/CDCClassCommon.h"/>
<build type="header-file" value="Drivers/USB/Class/Device/CDCClassDevice.h"/>
<build type="header-file" value="Drivers/USB/Class/Host/CDCClassHost.h"/>
</module>
</select-by-config>
</asf>
</lufa>

View file

@ -0,0 +1,99 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<select-by-config id="lufa.drivers.usb.class.hid" name="lufa.drivers.usb.class.hid.mode" default="host_device" caption="LUFA USB Class Driver - HID">
<build type="doxygen-entry-point" value="Group_USBClassHID"/>
<info type="gui-flag" value="hidden"/>
<module type="service" id="lufa.drivers.usb.class.hid#host_device" caption="LUFA USB Class Driver - HID (Host/Device)">
<info type="description" value="summary">
Common definitions and Host/Device mode implementations of the HID USB class.
</info>
<build type="doxygen-entry-point" value="Group_USBClassHID"/>
<info type="gui-flag" value="hidden"/>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="header-file" value="Drivers/USB/Class/HIDClass.h"/>
<build type="header-file" value="Drivers/USB/Class/Common/HIDClassCommon.h"/>
<build type="header-file" value="Drivers/USB/Class/Device/HIDClassDevice.h"/>
<build type="c-source" value="Drivers/USB/Class/Device/HIDClassDevice.c"/>
<build type="header-file" value="Drivers/USB/Class/Host/HIDClassHost.h"/>
<build type="c-source" value="Drivers/USB/Class/Host/HIDClassHost.c"/>
</module>
<module type="service" id="lufa.drivers.usb.class.hid#host" caption="LUFA USB Class Driver - HID (Host)">
<info type="description" value="summary">
Common definitions and Host mode implementation of the HID USB class.
</info>
<build type="doxygen-entry-point" value="Group_USBClassHID"/>
<info type="gui-flag" value="hidden"/>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="header-file" value="Drivers/USB/Class/HIDClass.h"/>
<build type="header-file" value="Drivers/USB/Class/Common/HIDClassCommon.h"/>
<build type="header-file" value="Drivers/USB/Class/Device/HIDClassDevice.h"/>
<build type="header-file" value="Drivers/USB/Class/Host/HIDClassHost.h"/>
<build type="c-source" value="Drivers/USB/Class/Host/HIDClassHost.c"/>
</module>
<module type="service" id="lufa.drivers.usb.class.hid#device" caption="LUFA USB Class Driver - HID (Device)">
<info type="description" value="summary">
Common definitions and Device mode implementation of the HID USB class.
</info>
<build type="doxygen-entry-point" value="Group_USBClassHID"/>
<info type="gui-flag" value="hidden"/>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="header-file" value="Drivers/USB/Class/HIDClass.h"/>
<build type="header-file" value="Drivers/USB/Class/Common/HIDClassCommon.h"/>
<build type="header-file" value="Drivers/USB/Class/Device/HIDClassDevice.h"/>
<build type="c-source" value="Drivers/USB/Class/Device/HIDClassDevice.c"/>
<build type="header-file" value="Drivers/USB/Class/Host/HIDClassHost.h"/>
</module>
<module type="service" id="lufa.drivers.usb.class.hid#definitions_only" caption="LUFA USB Class Driver - HID (Definitions Only)">
<info type="description" value="summary">
Common definitions only (no implementations) of the HID USB class.
</info>
<build type="doxygen-entry-point" value="Group_USBClassHID"/>
<info type="gui-flag" value="hidden"/>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="header-file" value="Drivers/USB/Class/HIDClass.h"/>
<build type="header-file" value="Drivers/USB/Class/Common/HIDClassCommon.h"/>
<build type="header-file" value="Drivers/USB/Class/Device/HIDClassDevice.h"/>
<build type="header-file" value="Drivers/USB/Class/Host/HIDClassHost.h"/>
</module>
</select-by-config>
</asf>
</lufa>

View file

@ -0,0 +1,99 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<select-by-config id="lufa.drivers.usb.class.midi" name="lufa.drivers.usb.class.midi.mode" default="host_device" caption="LUFA USB Class Driver - MIDI">
<build type="doxygen-entry-point" value="Group_USBClassMIDI"/>
<info type="gui-flag" value="hidden"/>
<module type="service" id="lufa.drivers.usb.class.midi#host_device" caption="LUFA USB Class Driver - MIDI (Host/Device)">
<info type="description" value="summary">
Common definitions and Host/Device mode implementations of the MIDI USB class.
</info>
<build type="doxygen-entry-point" value="Group_USBClassMIDI"/>
<info type="gui-flag" value="hidden"/>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="header-file" value="Drivers/USB/Class/MIDIClass.h"/>
<build type="header-file" value="Drivers/USB/Class/Common/MIDIClassCommon.h"/>
<build type="header-file" value="Drivers/USB/Class/Device/MIDIClassDevice.h"/>
<build type="c-source" value="Drivers/USB/Class/Device/MIDIClassDevice.c"/>
<build type="header-file" value="Drivers/USB/Class/Host/MIDIClassHost.h"/>
<build type="c-source" value="Drivers/USB/Class/Host/MIDIClassHost.c"/>
</module>
<module type="service" id="lufa.drivers.usb.class.midi#host" caption="LUFA USB Class Driver - MIDI (Host)">
<info type="description" value="summary">
Common definitions and Host mode implementation of the MIDI USB class.
</info>
<build type="doxygen-entry-point" value="Group_USBClassMIDI"/>
<info type="gui-flag" value="hidden"/>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="header-file" value="Drivers/USB/Class/MIDIClass.h"/>
<build type="header-file" value="Drivers/USB/Class/Common/MIDIClassCommon.h"/>
<build type="header-file" value="Drivers/USB/Class/Device/MIDIClassDevice.h"/>
<build type="header-file" value="Drivers/USB/Class/Host/MIDIClassHost.h"/>
<build type="c-source" value="Drivers/USB/Class/Host/MIDIClassHost.c"/>
</module>
<module type="service" id="lufa.drivers.usb.class.midi#device" caption="LUFA USB Class Driver - MIDI (Device)">
<info type="description" value="summary">
Common definitions and Device mode implementation of the MIDI USB class.
</info>
<build type="doxygen-entry-point" value="Group_USBClassMIDI"/>
<info type="gui-flag" value="hidden"/>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="header-file" value="Drivers/USB/Class/MIDIClass.h"/>
<build type="header-file" value="Drivers/USB/Class/Common/MIDIClassCommon.h"/>
<build type="header-file" value="Drivers/USB/Class/Device/MIDIClassDevice.h"/>
<build type="c-source" value="Drivers/USB/Class/Device/MIDIClassDevice.c"/>
<build type="header-file" value="Drivers/USB/Class/Host/MIDIClassHost.h"/>
</module>
<module type="service" id="lufa.drivers.usb.class.midi#definitions_only" caption="LUFA USB Class Driver - MIDI (Definitions Only)">
<info type="description" value="summary">
Common definitions only (no implementations) of the MIDI USB class.
</info>
<build type="doxygen-entry-point" value="Group_USBClassMIDI"/>
<info type="gui-flag" value="hidden"/>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="header-file" value="Drivers/USB/Class/MIDIClass.h"/>
<build type="header-file" value="Drivers/USB/Class/Common/MIDIClassCommon.h"/>
<build type="header-file" value="Drivers/USB/Class/Device/MIDIClassDevice.h"/>
<build type="header-file" value="Drivers/USB/Class/Host/MIDIClassHost.h"/>
</module>
</select-by-config>
</asf>
</lufa>

View file

@ -0,0 +1,99 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<select-by-config id="lufa.drivers.usb.class.ms" name="lufa.drivers.usb.class.ms.mode" default="host_device" caption="LUFA USB Class Driver - Mass Storage">
<build type="doxygen-entry-point" value="Group_USBClassMS"/>
<info type="gui-flag" value="hidden"/>
<module type="service" id="lufa.drivers.usb.class.ms#host_device" caption="LUFA USB Class Driver - Mass Storage (Host/Device)">
<info type="description" value="summary">
Common definitions and Host/Device mode implementations of the Mass Storage USB class.
</info>
<build type="doxygen-entry-point" value="Group_USBClassMS"/>
<info type="gui-flag" value="hidden"/>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="header-file" value="Drivers/USB/Class/MassStorageClass.h"/>
<build type="header-file" value="Drivers/USB/Class/Common/MassStorageClassCommon.h"/>
<build type="header-file" value="Drivers/USB/Class/Device/MassStorageClassDevice.h"/>
<build type="c-source" value="Drivers/USB/Class/Device/MassStorageClassDevice.c"/>
<build type="header-file" value="Drivers/USB/Class/Host/MassStorageClassHost.h"/>
<build type="c-source" value="Drivers/USB/Class/Host/MassStorageClassHost.c"/>
</module>
<module type="service" id="lufa.drivers.usb.class.ms#host" caption="LUFA USB Class Driver - Mass Storage (Host)">
<info type="description" value="summary">
Common definitions and Host mode implementation of the Mass Storage USB class.
</info>
<build type="doxygen-entry-point" value="Group_USBClassMS"/>
<info type="gui-flag" value="hidden"/>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="header-file" value="Drivers/USB/Class/MassStorageClass.h"/>
<build type="header-file" value="Drivers/USB/Class/Common/MassStorageClassCommon.h"/>
<build type="header-file" value="Drivers/USB/Class/Device/MassStorageClassDevice.h"/>
<build type="header-file" value="Drivers/USB/Class/Host/MassStorageClassHost.h"/>
<build type="c-source" value="Drivers/USB/Class/Host/MassStorageClassHost.c"/>
</module>
<module type="service" id="lufa.drivers.usb.class.ms#device" caption="LUFA USB Class Driver - Mass Storage (Device)">
<info type="description" value="summary">
Common definitions and Device mode implementation of the Mass Storage USB class.
</info>
<build type="doxygen-entry-point" value="Group_USBClassMS"/>
<info type="gui-flag" value="hidden"/>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="header-file" value="Drivers/USB/Class/MassStorageClass.h"/>
<build type="header-file" value="Drivers/USB/Class/Common/MassStorageClassCommon.h"/>
<build type="header-file" value="Drivers/USB/Class/Device/MassStorageClassDevice.h"/>
<build type="c-source" value="Drivers/USB/Class/Device/MassStorageClassDevice.c"/>
<build type="header-file" value="Drivers/USB/Class/Host/MassStorageClassHost.h"/>
</module>
<module type="service" id="lufa.drivers.usb.class.ms#definitions_only" caption="LUFA USB Class Driver - Mass Storage (Definitions Only)">
<info type="description" value="summary">
Common definitions only (no implementations) of the Mass Storage USB class.
</info>
<build type="doxygen-entry-point" value="Group_USBClassMS"/>
<info type="gui-flag" value="hidden"/>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="header-file" value="Drivers/USB/Class/MassStorageClass.h"/>
<build type="header-file" value="Drivers/USB/Class/Common/MassStorageClassCommon.h"/>
<build type="header-file" value="Drivers/USB/Class/Device/MassStorageClassDevice.h"/>
<build type="header-file" value="Drivers/USB/Class/Host/MassStorageClassHost.h"/>
</module>
</select-by-config>
</asf>
</lufa>

View file

@ -0,0 +1,99 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<select-by-config id="lufa.drivers.usb.class.printer" name="lufa.drivers.usb.class.printer.mode" default="host_device" caption="LUFA USB Class Driver - Printer">
<build type="doxygen-entry-point" value="Group_USBClassPrinter"/>
<info type="gui-flag" value="hidden"/>
<module type="service" id="lufa.drivers.usb.class.printer#host_device" caption="LUFA USB Class Driver - Printer (Host/Device)">
<info type="description" value="summary">
Common definitions and Host/Device mode implementations of the Printer USB class.
</info>
<build type="doxygen-entry-point" value="Group_USBClassPrinter"/>
<info type="gui-flag" value="hidden"/>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="header-file" value="Drivers/USB/Class/PrinterClass.h"/>
<build type="header-file" value="Drivers/USB/Class/Common/PrinterClassCommon.h"/>
<build type="header-file" value="Drivers/USB/Class/Device/PrinterClassDevice.h"/>
<build type="c-source" value="Drivers/USB/Class/Device/PrinterClassDevice.c"/>
<build type="header-file" value="Drivers/USB/Class/Host/PrinterClassHost.h"/>
<build type="c-source" value="Drivers/USB/Class/Host/PrinterClassHost.c"/>
</module>
<module type="service" id="lufa.drivers.usb.class.printer#host" caption="LUFA USB Class Driver - Printer (Host)">
<info type="description" value="summary">
Common definitions and Host mode implementation of the Printer USB class.
</info>
<build type="doxygen-entry-point" value="Group_USBClassPrinter"/>
<info type="gui-flag" value="hidden"/>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="header-file" value="Drivers/USB/Class/PrinterClass.h"/>
<build type="header-file" value="Drivers/USB/Class/Common/PrinterClassCommon.h"/>
<build type="header-file" value="Drivers/USB/Class/Device/PrinterClassDevice.h"/>
<build type="header-file" value="Drivers/USB/Class/Host/PrinterClassHost.h"/>
<build type="c-source" value="Drivers/USB/Class/Host/PrinterClassHost.c"/>
</module>
<module type="service" id="lufa.drivers.usb.class.printer#device" caption="LUFA USB Class Driver - Printer (Device)">
<info type="description" value="summary">
Common definitions and Device mode implementation of the Printer USB class.
</info>
<build type="doxygen-entry-point" value="Group_USBClassPrinter"/>
<info type="gui-flag" value="hidden"/>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="header-file" value="Drivers/USB/Class/PrinterClass.h"/>
<build type="header-file" value="Drivers/USB/Class/Common/PrinterClassCommon.h"/>
<build type="header-file" value="Drivers/USB/Class/Device/PrinterClassDevice.h"/>
<build type="c-source" value="Drivers/USB/Class/Device/PrinterClassDevice.c"/>
<build type="header-file" value="Drivers/USB/Class/Host/PrinterClassHost.h"/>
</module>
<module type="service" id="lufa.drivers.usb.class.printer#definitions_only" caption="LUFA USB Class Driver - Printer (Definitions Only)">
<info type="description" value="summary">
Common definitions only (no implementations) of the Printer USB class.
</info>
<build type="doxygen-entry-point" value="Group_USBClassPrinter"/>
<info type="gui-flag" value="hidden"/>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="header-file" value="Drivers/USB/Class/PrinterClass.h"/>
<build type="header-file" value="Drivers/USB/Class/Common/PrinterClassCommon.h"/>
<build type="header-file" value="Drivers/USB/Class/Device/PrinterClassDevice.h"/>
<build type="header-file" value="Drivers/USB/Class/Host/PrinterClassHost.h"/>
</module>
</select-by-config>
</asf>
</lufa>

View file

@ -0,0 +1,99 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<select-by-config id="lufa.drivers.usb.class.rndis" name="lufa.drivers.usb.class.rndis.mode" default="host_device" caption="LUFA USB Class Driver - RNDIS Ethernet">
<build type="doxygen-entry-point" value="Group_USBClassRNDIS"/>
<info type="gui-flag" value="hidden"/>
<module type="service" id="lufa.drivers.usb.class.rndis#host_device" caption="LUFA USB Class Driver - RNDIS Ethernet (Host/Device)">
<info type="description" value="summary">
Common definitions and Host/Device mode implementations of the RNDIS Ethernet USB class.
</info>
<build type="doxygen-entry-point" value="Group_USBClassRNDIS"/>
<info type="gui-flag" value="hidden"/>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="header-file" value="Drivers/USB/Class/RNDISClass.h"/>
<build type="header-file" value="Drivers/USB/Class/Common/RNDISClassCommon.h"/>
<build type="header-file" value="Drivers/USB/Class/Device/RNDISClassDevice.h"/>
<build type="c-source" value="Drivers/USB/Class/Device/RNDISClassDevice.c"/>
<build type="header-file" value="Drivers/USB/Class/Host/RNDISClassHost.h"/>
<build type="c-source" value="Drivers/USB/Class/Host/RNDISClassHost.c"/>
</module>
<module type="service" id="lufa.drivers.usb.class.rndis#host" caption="LUFA USB Class Driver - RNDIS Ethernet (Host)">
<info type="description" value="summary">
Common definitions and Host mode implementation of the RNDIS Ethernet USB class.
</info>
<build type="doxygen-entry-point" value="Group_USBClassRNDIS"/>
<info type="gui-flag" value="hidden"/>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="header-file" value="Drivers/USB/Class/RNDISClass.h"/>
<build type="header-file" value="Drivers/USB/Class/Common/RNDISClassCommon.h"/>
<build type="header-file" value="Drivers/USB/Class/Device/RNDISClassDevice.h"/>
<build type="header-file" value="Drivers/USB/Class/Host/RNDISClassHost.h"/>
<build type="c-source" value="Drivers/USB/Class/Host/RNDISClassHost.c"/>
</module>
<module type="service" id="lufa.drivers.usb.class.rndis#device" caption="LUFA USB Class Driver - RNDIS Ethernet (Device)">
<info type="description" value="summary">
Common definitions and Device mode implementation of the RNDIS Ethernet USB class.
</info>
<build type="doxygen-entry-point" value="Group_USBClassRNDIS"/>
<info type="gui-flag" value="hidden"/>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="header-file" value="Drivers/USB/Class/RNDISClass.h"/>
<build type="header-file" value="Drivers/USB/Class/Common/RNDISClassCommon.h"/>
<build type="header-file" value="Drivers/USB/Class/Device/RNDISClassDevice.h"/>
<build type="c-source" value="Drivers/USB/Class/Device/RNDISClassDevice.c"/>
<build type="header-file" value="Drivers/USB/Class/Host/RNDISClassHost.h"/>
</module>
<module type="service" id="lufa.drivers.usb.class.rndis#definitions_only" caption="LUFA USB Class Driver - RNDIS Ethernet (Definitions Only)">
<info type="description" value="summary">
Common definitions only (no implementations) of the RNDIS Ethernet USB class.
</info>
<build type="doxygen-entry-point" value="Group_USBClassRNDIS"/>
<info type="gui-flag" value="hidden"/>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="header-file" value="Drivers/USB/Class/RNDISClass.h"/>
<build type="header-file" value="Drivers/USB/Class/Common/RNDISClassCommon.h"/>
<build type="header-file" value="Drivers/USB/Class/Device/RNDISClassDevice.h"/>
<build type="header-file" value="Drivers/USB/Class/Host/RNDISClassHost.h"/>
</module>
</select-by-config>
</asf>
</lufa>

View file

@ -0,0 +1,56 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<select-by-config id="lufa.drivers.usb.class.si" name="lufa.drivers.usb.class.si.mode" default="host" caption="LUFA USB Class Driver - Still Image">
<build type="doxygen-entry-point" value="Group_USBClassSI"/>
<info type="gui-flag" value="hidden"/>
<module type="service" id="lufa.drivers.usb.class.si#host" caption="LUFA USB Class Driver - Still Image (Host)">
<info type="description" value="summary">
Common definitions and Host mode implementation of the Still Image USB class.
</info>
<build type="doxygen-entry-point" value="Group_USBClassSI"/>
<info type="gui-flag" value="hidden"/>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="header-file" value="Drivers/USB/Class/StillImageClass.h"/>
<build type="header-file" value="Drivers/USB/Class/Common/StillImageClassCommon.h"/>
<build type="header-file" value="Drivers/USB/Class/Host/StillImageClassHost.h"/>
<build type="c-source" value="Drivers/USB/Class/Host/StillImageClassHost.c"/>
</module>
<module type="service" id="lufa.drivers.usb.class.si#definitions_only" caption="LUFA USB Class Driver - Still Image (Definitions Only)">
<info type="description" value="summary">
Common definitions only (no implementations) of the Still Image USB class.
</info>
<build type="doxygen-entry-point" value="Group_USBClassSI"/>
<info type="gui-flag" value="hidden"/>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="header-file" value="Drivers/USB/Class/StillImageClass.h"/>
<build type="header-file" value="Drivers/USB/Class/Common/StillImageClassCommon.h"/>
<build type="header-file" value="Drivers/USB/Class/Host/StillImageClassHost.h"/>
</module>
</select-by-config>
</asf>
</lufa>

View file

@ -0,0 +1,85 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<module type="driver" id="lufa.drivers.usb.core.common" caption="LUFA USB Core Driver - Common">
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_USBManagement"/>
<info type="gui-flag" value="hidden"/>
<build type="header-file" value="Drivers/USB/Core/Device.h"/>
<build type="header-file" value="Drivers/USB/Core/Endpoint.h"/>
<build type="header-file" value="Drivers/USB/Core/Host.h"/>
<build type="header-file" value="Drivers/USB/Core/Pipe.h"/>
<build type="header-file" value="Drivers/USB/Core/OTG.h"/>
<build type="header-file" value="Drivers/USB/Core/USBController.h"/>
<build type="header-file" value="Drivers/USB/Core/USBInterrupt.h"/>
<build type="header-file" value="Drivers/USB/Core/EndpointStream.h"/>
<build type="header-file" value="Drivers/USB/Core/PipeStream.h"/>
<build type="c-source" value="Drivers/USB/Core/ConfigDescriptors.c"/>
<build type="header-file" value="Drivers/USB/Core/ConfigDescriptors.h"/>
<build type="c-source" value="Drivers/USB/Core/DeviceStandardReq.c"/>
<build type="header-file" value="Drivers/USB/Core/DeviceStandardReq.h"/>
<build type="c-source" value="Drivers/USB/Core/Events.c"/>
<build type="header-file" value="Drivers/USB/Core/Events.h"/>
<build type="c-source" value="Drivers/USB/Core/HostStandardReq.c"/>
<build type="header-file" value="Drivers/USB/Core/HostStandardReq.h"/>
<build type="c-source" value="Drivers/USB/Core/USBTask.c"/>
<build type="header-file" value="Drivers/USB/Core/USBTask.h"/>
<build type="header-file" value="Drivers/USB/Core/USBMode.h"/>
<build type="header-file" value="Drivers/USB/Core/StdDescriptors.h"/>
<build type="header-file" value="Drivers/USB/Core/StdRequestType.h"/>
<build type="c-source" value="Drivers/USB/Class/Common/HIDParser.c"/>
<build type="header-file" value="Drivers/USB/Class/Common/HIDParser.h"/>
<build type="header-file" value="Drivers/USB/Class/Common/HIDReportData.h"/>
</module>
<select-by-device id="lufa.drivers.usb.core" caption="LUFA USB Core Driver">
<module type="driver" id="lufa.drivers.usb.core#avr8" caption="LUFA USB Core Driver - AVR8">
<device-support-alias value="lufa_avr8"/>
<info type="gui-flag" value="hidden"/>
<build type="doxygen-entry-point" value="Group_USBManagement_AVR8"/>
<require idref="lufa.drivers.usb.core.common"/>
<require idref="lufa.drivers.usb.core.avr8"/>
</module>
<module type="driver" id="lufa.drivers.usb.core#xmega" caption="LUFA USB Core Driver - XMEGA">
<device-support-alias value="lufa_xmega"/>
<info type="gui-flag" value="hidden"/>
<build type="doxygen-entry-point" value="Group_USBManagement_XMEGA"/>
<require idref="lufa.drivers.usb.core.common"/>
<require idref="lufa.drivers.usb.core.xmega"/>
</module>
<module type="driver" id="lufa.drivers.usb.core#uc3" caption="LUFA USB Core Driver - UC3">
<device-support-alias value="lufa_uc3"/>
<info type="gui-flag" value="hidden"/>
<build type="doxygen-entry-point" value="Group_USBManagement_UC3"/>
<require idref="lufa.drivers.usb.core.common"/>
<require idref="lufa.drivers.usb.core.uc3"/>
</module>
</select-by-device>
</asf>
</lufa>

View file

@ -0,0 +1,43 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<module type="driver" id="lufa.drivers.usb.core.avr8" caption="LUFA USB Core Driver for AVR8">
<device-support-alias value="lufa_avr8"/>
<info type="gui-flag" value="hidden"/>
<build type="doxygen-entry-point" value="Group_USBManagement_AVR8"/>
<build type="c-source" value="Drivers/USB/Core/AVR8/Template/Template_Endpoint_Control_R.c"/>
<build type="c-source" value="Drivers/USB/Core/AVR8/Template/Template_Endpoint_Control_W.c"/>
<build type="c-source" value="Drivers/USB/Core/AVR8/Template/Template_Endpoint_RW.c"/>
<build type="c-source" value="Drivers/USB/Core/AVR8/Template/Template_Pipe_RW.c"/>
<build type="c-source" value="Drivers/USB/Core/AVR8/Device_AVR8.c"/>
<build type="header-file" value="Drivers/USB/Core/AVR8/Device_AVR8.h"/>
<build type="c-source" value="Drivers/USB/Core/AVR8/Endpoint_AVR8.c"/>
<build type="header-file" value="Drivers/USB/Core/AVR8/Endpoint_AVR8.h"/>
<build type="c-source" value="Drivers/USB/Core/AVR8/Host_AVR8.c"/>
<build type="header-file" value="Drivers/USB/Core/AVR8/Host_AVR8.h"/>
<build type="c-source" value="Drivers/USB/Core/AVR8/Pipe_AVR8.c"/>
<build type="header-file" value="Drivers/USB/Core/AVR8/Pipe_AVR8.h"/>
<build type="header-file" value="Drivers/USB/Core/AVR8/OTG_AVR8.h"/>
<build type="c-source" value="Drivers/USB/Core/AVR8/USBController_AVR8.c"/>
<build type="header-file" value="Drivers/USB/Core/AVR8/USBController_AVR8.h"/>
<build type="c-source" value="Drivers/USB/Core/AVR8/USBInterrupt_AVR8.c"/>
<build type="header-file" value="Drivers/USB/Core/AVR8/USBInterrupt_AVR8.h"/>
<build type="c-source" value="Drivers/USB/Core/AVR8/EndpointStream_AVR8.c"/>
<build type="header-file" value="Drivers/USB/Core/AVR8/EndpointStream_AVR8.h"/>
<build type="c-source" value="Drivers/USB/Core/AVR8/PipeStream_AVR8.c"/>
<build type="header-file" value="Drivers/USB/Core/AVR8/PipeStream_AVR8.h"/>
</module>
</asf>
</lufa>

View file

@ -0,0 +1,42 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<module type="driver" id="lufa.drivers.usb.core.uc3" caption="LUFA USB Core Driver for UC3">
<device-support-alias value="lufa_uc3"/>
<info type="gui-flag" value="hidden"/>
<build type="doxygen-entry-point" value="Group_USBManagement_UC3"/>
<build type="c-source" value="Drivers/USB/Core/UC3/Template/Template_Endpoint_Control_R.c"/>
<build type="c-source" value="Drivers/USB/Core/UC3/Template/Template_Endpoint_Control_W.c"/>
<build type="c-source" value="Drivers/USB/Core/UC3/Template/Template_Endpoint_RW.c"/>
<build type="c-source" value="Drivers/USB/Core/UC3/Template/Template_Pipe_RW.c"/>
<build type="c-source" value="Drivers/USB/Core/UC3/Device_UC3.c"/>
<build type="header-file" value="Drivers/USB/Core/UC3/Device_UC3.h"/>
<build type="c-source" value="Drivers/USB/Core/UC3/Endpoint_UC3.c"/>
<build type="header-file" value="Drivers/USB/Core/UC3/Endpoint_UC3.h"/>
<build type="c-source" value="Drivers/USB/Core/UC3/Host_UC3.c"/>
<build type="header-file" value="Drivers/USB/Core/UC3/Host_UC3.h"/>
<build type="c-source" value="Drivers/USB/Core/UC3/Pipe_UC3.c"/>
<build type="header-file" value="Drivers/USB/Core/UC3/Pipe_UC3.h"/>
<build type="c-source" value="Drivers/USB/Core/UC3/USBController_UC3.c"/>
<build type="header-file" value="Drivers/USB/Core/UC3/USBController_UC3.h"/>
<build type="c-source" value="Drivers/USB/Core/UC3/USBInterrupt_UC3.c"/>
<build type="header-file" value="Drivers/USB/Core/UC3/USBInterrupt_UC3.h"/>
<build type="c-source" value="Drivers/USB/Core/UC3/EndpointStream_UC3.c"/>
<build type="header-file" value="Drivers/USB/Core/UC3/EndpointStream_UC3.h"/>
<build type="c-source" value="Drivers/USB/Core/UC3/PipeStream_UC3.c"/>
<build type="header-file" value="Drivers/USB/Core/UC3/PipeStream_UC3.h"/>
</module>
</asf>
</lufa>

View file

@ -0,0 +1,36 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<module type="driver" id="lufa.drivers.usb.core.xmega" caption="LUFA USB Core Driver for XMEGA">
<device-support-alias value="lufa_xmega"/>
<info type="gui-flag" value="hidden"/>
<build type="doxygen-entry-point" value="Group_USBManagement_XMEGA"/>
<build type="c-source" value="Drivers/USB/Core/XMEGA/Template/Template_Endpoint_Control_R.c"/>
<build type="c-source" value="Drivers/USB/Core/XMEGA/Template/Template_Endpoint_Control_W.c"/>
<build type="c-source" value="Drivers/USB/Core/XMEGA/Template/Template_Endpoint_RW.c"/>
<build type="c-source" value="Drivers/USB/Core/XMEGA/Device_XMEGA.c"/>
<build type="header-file" value="Drivers/USB/Core/XMEGA/Device_XMEGA.h"/>
<build type="c-source" value="Drivers/USB/Core/XMEGA/Endpoint_XMEGA.c"/>
<build type="header-file" value="Drivers/USB/Core/XMEGA/Endpoint_XMEGA.h"/>
<build type="c-source" value="Drivers/USB/Core/XMEGA/Pipe_XMEGA.c"/>
<build type="c-source" value="Drivers/USB/Core/XMEGA/USBController_XMEGA.c"/>
<build type="header-file" value="Drivers/USB/Core/XMEGA/USBController_XMEGA.h"/>
<build type="c-source" value="Drivers/USB/Core/XMEGA/USBInterrupt_XMEGA.c"/>
<build type="header-file" value="Drivers/USB/Core/XMEGA/USBInterrupt_XMEGA.h"/>
<build type="c-source" value="Drivers/USB/Core/XMEGA/EndpointStream_XMEGA.c"/>
<build type="header-file" value="Drivers/USB/Core/XMEGA/EndpointStream_XMEGA.h"/>
</module>
</asf>
</lufa>

View file

@ -0,0 +1,60 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<select-by-device id="lufa.platform" caption="LUFA Platform Specific Support">
<module type="service" id="lufa.platform#avr8" caption="LUFA Platform Specific Support - AVR8">
<device-support-alias value="lufa_avr8"/>
<build type="define" name="ARCH" value="ARCH_AVR8"/>
<build type="doxygen-entry-point" value="Group_PlatformDrivers"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Platform/Platform.h"/>
<require idref="lufa.common"/>
</module>
<module type="service" id="lufa.platform#xmega" caption="LUFA Platform Specific Support - XMEGA">
<device-support-alias value="lufa_xmega"/>
<build type="define" name="ARCH" value="ARCH_XMEGA"/>
<build type="doxygen-entry-point" value="Group_PlatformDrivers"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Platform/Platform.h"/>
<build type="distribute" value="Platform/XMEGA/XMEGAExperimentalInfo.txt" subtype="license"/>
<require idref="lufa.platform.xmega"/>
<require idref="lufa.common"/>
</module>
<module type="service" id="lufa.platform#uc3" caption="LUFA Platform Specific Support - UC3">
<device-support-alias value="lufa_uc3"/>
<build type="define" name="ARCH" value="ARCH_UC3"/>
<build type="doxygen-entry-point" value="Group_PlatformDrivers"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Platform/Platform.h"/>
<build type="distribute" value="Platform/UC3/UC3ExperimentalInfo.txt" subtype="license"/>
<require idref="lufa.platform.uc3"/>
<require idref="lufa.common"/>
</module>
</select-by-device>
</asf>
</lufa>

View file

@ -0,0 +1,26 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<module type="driver" id="lufa.platform.uc3" caption="LUFA UC3 Platform Drivers">
<device-support-alias value="lufa_uc3"/>
<info type="gui-flag" value="hidden"/>
<build type="doxygen-entry-point" value="Group_PlatformDrivers_UC3"/>
<build type="header-file" value="Platform/UC3/ClockManagement.h"/>
<build type="header-file" value="Platform/UC3/InterruptManagement.h"/>
<build type="c-source" value="Platform/UC3/InterruptManagement.c"/>
<build type="asm-source" value="Platform/UC3/Exception.S"/>
</module>
</asf>
</lufa>

View file

@ -0,0 +1,23 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf xmlversion="1.0">
<module type="driver" id="lufa.platform.xmega" caption="LUFA XMEGA Platform Drivers">
<device-support-alias value="lufa_xmega"/>
<info type="gui-flag" value="hidden"/>
<build type="doxygen-entry-point" value="Group_PlatformDrivers_XMEGA"/>
<build type="header-file" value="Platform/XMEGA/ClockManagement.h"/>
</module>
</asf>
</lufa>

View file

@ -0,0 +1,45 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<select-by-device id="common.utils.toolchain_config" caption="Toolchain configuration defaults">
<module type="build-specific" id="common.utils.toolchain_config#avr" caption="Toolchain configuration defaults for 8-bit AVR">
<info type="gui-flag" value="hidden"/>
<device-support value="avr"/>
<toolchain-config name="avrgcc.compiler.general.ChangeDefaultBitFieldUnsigned" value="True" toolchain="avrgcc"/>
<toolchain-config name="avrgcc.compiler.general.ChangeDefaultCharTypeUnsigned" value="True" toolchain="avrgcc"/>
<toolchain-config name="avrgcc.compiler.optimization.OtherFlags" value="-fdata-sections" toolchain="avrgcc"/>
<toolchain-config name="avrgcc.compiler.optimization.PrepareFunctionsForGarbageCollection" value="True" toolchain="avrgcc"/>
<toolchain-config name="avrgcc.compiler.warnings.AllWarnings" value="True" toolchain="avrgcc"/>
<toolchain-config name="avrgcc.compiler.miscellaneous.OtherFlags" value="-mrelax -std=gnu99 -fno-strict-aliasing -fno-jump-tables" toolchain="avrgcc"/>
<toolchain-config name="avrgcc.linker.optimization.GarbageCollectUnusedSections" value="True" toolchain="avrgcc"/>
<toolchain-config name="avrgcc.linker.optimization.RelaxBranches" value="True" toolchain="avrgcc"/>
<toolchain-config name="avrgcc.linker.miscellaneous.LinkerFlags" value="-Wl,--relax" toolchain="avrgcc"/>
</module>
</select-by-device>
<module type="build-specific" id="common.utils.toolchain_config#uc3" caption="Toolchain configuration defaults for 32-bit AVR">
<info type="gui-flag" value="hidden"/>
<device-support value="uc3"/>
<toolchain-config name="avrgcc.compiler.general.ChangeDefaultBitFieldUnsigned" value="True" toolchain="avr32gcc"/>
<toolchain-config name="avrgcc.compiler.general.ChangeDefaultCharTypeUnsigned" value="True" toolchain="avr32gcc"/>
<toolchain-config name="avr32gcc.compiler.optimization.OtherFlags" value="-fdata-sections" toolchain="avr32gcc"/>
<toolchain-config name="avr32gcc.compiler.optimization.PrepareFunctionsForGarbageCollection" value="True" toolchain="avr32gcc"/>
<toolchain-config name="avr32gcc.compiler.warnings.AllWarnings" value="True" toolchain="avr32gcc"/>
<toolchain-config name="avr32gcc.compiler.miscellaneous.OtherFlags" value="-mrelax -std=gnu99 -fno-strict-aliasing -mno-cond-exec-before-reload" toolchain="avr32gcc"/>
<toolchain-config name="avr32gcc.linker.optimization.GarbageCollectUnusedSections" value="True" toolchain="avr32gcc"/>
<toolchain-config name="avr32gcc.linker.optimization.RelaxBranches" value="True" toolchain="avr32gcc"/>
<toolchain-config name="avr32gcc.linker.miscellaneous.LinkerFlags" value="-Wl,--relax" toolchain="avr32gcc"/>
</module>
</asf>
</lufa>

View file

@ -0,0 +1,142 @@
#
# LUFA Library
# Copyright (C) Dean Camera, 2017.
#
# dean [at] fourwalledcubicle [dot] com
# www.lufa-lib.org
#
# ---------------------------------------
# Makefile for the LUFA Atmel Studio Integration.
# ---------------------------------------
LUFA_ROOT := ..
LUFA_VERSION_NUM := $(shell grep -e "\#define *LUFA_VERSION_STRING " $(LUFA_ROOT)/Version.h | cut -d'"' -f2)
LUFA_VERSION_TYPE := $(shell grep -e "\#define *LUFA_VERSION_RELEASE_TYPE " $(LUFA_ROOT)/Version.h)
ifneq ($(findstring LUFA_VERSION_RELEASE_TYPE_DEVELOPMENT, $(LUFA_VERSION_TYPE)),LUFA_VERSION_RELEASE_TYPE_DEVELOPMENT)
EXT_VERSION_NUM := $(shell date +"%y.%m.%d").$(LUFA_VERSION_NUM)
EXT_VSIX_NAME := LUFA-RELEASE-$(LUFA_VERSION_NUM).vsix
else
EXT_VERSION_NUM := 0.$(shell date +"%y%m%d.%H%M%S")
EXT_VSIX_NAME := LUFA-TESTING-$(shell date +"%y.%m.%d-%H.%M.%S").vsix
$(warning Development mode set - assuming a test version should be created.)
endif
DOXYGEN_TAG_FILE_XML := $(LUFA_ROOT)/Documentation/lufa_doc_tags.xml
DOXYGEN_COMBINED_XML := $(LUFA_ROOT)/Documentation/xml/lufa_doc.xml
TEMP_MANIFEST_XML := manifest.xml
EXTENSION_OUTPUT_XML := $(LUFA_ROOT)/../extension.xml
MODULE_OUTPUT_XML := $(LUFA_ROOT)/asf.xml
MSHELP_OUTPUT_XML := $(LUFA_ROOT)/../lufa_help_$(subst .,_,$(EXT_VERSION_NUM)).mshc
XML_FILES := $(filter-out $(TEMP_MANIFEST_FILE), $(shell ls *.xml))
VSIX_ASSETS := $(LUFA_ROOT)/DoxygenPages/Images/LUFA_thumb.png \
$(LUFA_ROOT)/DoxygenPages/Images/LUFA.png \
$(LUFA_ROOT)/License.txt \
VSIX/"[Content_Types].xml" \
VSIX/LUFA.dll \
VSIX/LUFA.pkgdef
VSIX_GEN_PARAMS := --stringparam extension-version "$(EXT_VERSION_NUM)" \
--stringparam lufa-version "$(LUFA_VERSION_NUM)" \
--stringparam help-package-filename "$(notdir $(MSHELP_OUTPUT_XML))"
MSHELP_GEN_PARAMS := --stringparam generate.toc "book toc" \
--stringparam chunk.quietly "1" \
--stringparam chunk.section.depth "3" \
--stringparam chunk.first.sections "1" \
--stringparam chapter.autolabel "0" \
--stringparam root.filename "LUFA" \
--stringparam html.stylesheet "lufa_studio_help_styling.css"
all: clear_project_dirs generate_xml check_filenames generate_vsix
clear_project_dirs:
@make -s -C $(LUFA_ROOT)/.. clean
clean:
@rm -f $(TEMP_MANIFEST_XML) $(MODULE_OUTPUT_XML) $(EXTENSION_OUTPUT_XML) $(DOXYGEN_TAG_FILE_XML) $(DOXYGEN_COMBINED_XML) $(MSHELP_OUTPUT_XML)
@rm -rf mshelp
@cd $(LUFA_ROOT)/.. && rm -f contents.zip exampleProjects.xml content.xml.cache extension.vsixmanifest asf-manifest.xml extension.xml helpcontentsetup.msha $(notdir $(VSIX_ASSETS)) *.vsix *.mshc
$(DOXYGEN_TAG_FILE_XML):
@make -C ../ doxygen DOXYGEN_OVERRIDE_PARAMS="GENERATE_TAGFILE=Documentation/lufa_doc_tags.xml GENERATE_HTML=no GENERATE_XML=yes"
$(DOXYGEN_COMBINED_XML): $(DOXYGEN_TAG_FILE_XML)
@xsltproc $(dir $@)/combine.xslt $(dir $@)/index.xml > $(DOXYGEN_COMBINED_XML)
$(TEMP_MANIFEST_XML): $(DOXYGEN_TAG_FILE_XML) $(DOXYGEN_COMBINED_XML)
@echo Generating temporary module manifest XML...
@printf "<lufa-manifest version=\"%s\" tagfile=\"%s\" docfile=\"%s\">\n" $(LUFA_VERSION_NUM) $(DOXYGEN_TAG_FILE_XML) $(DOXYGEN_COMBINED_XML) > $@
@for i in $(XML_FILES); do \
printf "\t<xml-source filename=\"%s\"/>\n" $$i >> $@; \
done;
@echo '</lufa-manifest>' >> $@
$(MODULE_OUTPUT_XML): $(TEMP_MANIFEST_XML)
@echo Generating library core XDK module manifest file...
@xsltproc XDK/lufa_module_transform.xslt $< | xsltproc XDK/lufa_indent_transform.xslt - > $(MODULE_OUTPUT_XML)
$(EXTENSION_OUTPUT_XML): $(TEMP_MANIFEST_XML)
@echo Generating library XDK extension manifest file...
@xsltproc XDK/lufa_extension_transform.xslt $< | xsltproc XDK/lufa_indent_transform.xslt - > $(EXTENSION_OUTPUT_XML)
$(MSHELP_OUTPUT_XML): $(DOXYGEN_COMBINED_XML)
@echo Converting Doxygen XML to DocBook...
@-mkdir mshelp 2> /dev/null
@xsltproc HV1/lufa_docbook_transform.xslt $(DOXYGEN_COMBINED_XML) > mshelp/lufa_docbook.xml
@echo Converting DocBook XML to Microsoft Help 1.0...
@cd mshelp && xsltproc $(MSHELP_GEN_PARAMS) ../HV1/lufa_hv1_transform.xslt lufa_docbook.xml
@echo Copying help assets...
@cp HV1/lufa_studio_help_styling.css mshelp
@-mkdir mshelp/images 2> /dev/null
@cp `find $(LUFA_ROOT)/DoxygenPages/Images -type f` mshelp/images
@echo Archiving help content...
@cd mshelp && zip ../$(MSHELP_OUTPUT_XML) -q -0 -r *.html *.css images
@echo Generating HV1 manifest...
@xsltproc $(VSIX_GEN_PARAMS) HV1/lufa_helpcontentsetup_transform.xslt HV1/helpcontentsetup.msha > $(LUFA_ROOT)/../helpcontentsetup.msha
generate_help: $(MSHELP_OUTPUT_XML)
generate_xml: $(EXTENSION_OUTPUT_XML) $(MODULE_OUTPUT_XML)
generate_vsix: $(EXTENSION_OUTPUT_XML) $(MODULE_OUTPUT_XML) $(MSHELP_OUTPUT_XML)
@echo Generating XDK cache files...
@rm -f $(LUFA_ROOT)/../content.xml.cache
@rm -f $(LUFA_ROOT)/../ExampleProjects.xml
@python VSIX/generate_caches.py $(LUFA_ROOT)/../
@echo Archiving XDK content...
@rm -f contents.zip
@cd $(LUFA_ROOT)/../ && zip contents.zip -q -0 -r --exclude=*Documentation* --exclude=*StudioIntegration* LUFA Bootloaders Demos Projects README.txt
@echo Creating VSIX dependencies...
@cp $(VSIX_ASSETS) $(LUFA_ROOT)/..
@xsltproc $(VSIX_GEN_PARAMS) VSIX/lufa_vsmanifest_transform.xslt VSIX/extension.vsixmanifest > $(LUFA_ROOT)/../extension.vsixmanifest
@xsltproc $(VSIX_GEN_PARAMS) VSIX/lufa_asfmanifest_transform.xslt VSIX/asf-manifest.xml > $(LUFA_ROOT)/../asf-manifest.xml
@echo Generating Atmel Studio VSIX file...
cd $(LUFA_ROOT)/../ && zip $(EXT_VSIX_NAME) -q -9 contents.zip exampleProjects.xml content.xml.cache extension.vsixmanifest asf-manifest.xml extension.xml helpcontentsetup.msha $(notdir $(MSHELP_OUTPUT_XML)) $(notdir $(VSIX_ASSETS))
@echo "Atmel Studio VSIX extension file generated."
check_filenames: $(MODULE_OUTPUT_XML)
@echo Verifying referenced filenames of XDK modules...
@for f in `find $(LUFA_ROOT)/../ -name "asf.xml"`; do \
echo "Checking $$f..."; \
asf_file_dir=`dirname $$f`; \
xsltproc XDK/lufa_filelist_transform.xslt $$f | sed -e "/^$$/d" | while read -r i; do \
if ( ( ! test -f "$$asf_file_dir/$$i" ) && ( ! test -d "$$asf_file_dir/$$i" ) ); then \
echo "Source file \"$$i\" referenced in $$f does not exist!"; \
exit 1; \
fi; \
done || exit 1; \
done;
check_database:
python ProjectGenerator/project_generator.py -b $(LUFA_ROOT)/../ --main-ext-uuid=0e160d5c-e331-48d9-850b-e0387912171b CHECK
.PHONY: all clean generate_help generate_xml generate_vsix check_filenames check_database