docs
This commit is contained in:
parent
74b00382a6
commit
75de4fe1db
307
Doxygenfile
307
Doxygenfile
@ -1,4 +1,4 @@
|
||||
# Doxyfile 1.7.4
|
||||
# Doxyfile 1.8.2
|
||||
|
||||
# This file describes the settings to be used by the documentation system
|
||||
# doxygen (www.doxygen.org) for a project.
|
||||
@ -22,8 +22,9 @@
|
||||
|
||||
DOXYFILE_ENCODING = UTF-8
|
||||
|
||||
# The PROJECT_NAME tag is a single word (or a sequence of words surrounded
|
||||
# by quotes) that should identify the project.
|
||||
# The PROJECT_NAME tag is a single word (or sequence of words) that should
|
||||
# identify the project. Note that if you do not use Doxywizard you need
|
||||
# to put quotes around the project name if it contains spaces.
|
||||
|
||||
PROJECT_NAME = ChibiOS/GFX
|
||||
|
||||
@ -44,7 +45,7 @@ PROJECT_BRIEF =
|
||||
# exceed 55 pixels and the maximum width should not exceed 200 pixels.
|
||||
# Doxygen will copy the logo to the output directory.
|
||||
|
||||
PROJECT_LOGO =
|
||||
PROJECT_LOGO = docs/rsc/logo.png
|
||||
|
||||
# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute)
|
||||
# base path where the generated documentation will be put.
|
||||
@ -135,7 +136,9 @@ FULL_PATH_NAMES = NO
|
||||
# only done if one of the specified strings matches the left-hand part of
|
||||
# the path. The tag can be used to show relative paths in the file list.
|
||||
# If left blank the directory from which doxygen is run is used as the
|
||||
# path to strip.
|
||||
# path to strip. Note that you specify absolute paths here, but also
|
||||
# relative paths, which will be relative from the directory where doxygen is
|
||||
# started.
|
||||
|
||||
STRIP_FROM_PATH = "C:/Documents and Settings/Administrator/"
|
||||
|
||||
@ -202,27 +205,20 @@ TAB_SIZE = 2
|
||||
# will result in a user-defined paragraph with heading "Side Effects:".
|
||||
# You can put \n's in the value part of an alias to insert newlines.
|
||||
|
||||
ALIASES = "iclass=@par Function Class:\n This is an \
|
||||
<b>I-Class</b> API, this function can be \
|
||||
invoked from within a system lock zone by both \
|
||||
threads and interrupt handlers." \
|
||||
"sclass=@par Function Class:\n This is an \
|
||||
<b>S-Class</b> API, this function can be \
|
||||
invoked from within a system lock zone by threads \
|
||||
only." \
|
||||
"api=@par Function Class:\n Normal API, this \
|
||||
function can be invoked by regular system threads \
|
||||
but not from within a lock zone." \
|
||||
"notapi=@par Function Class:\n Not an API, this \
|
||||
function is for internal use only." \
|
||||
"isr=@par Function Class:\n Interrupt handler, \
|
||||
this function should not be directly invoked." \
|
||||
"init=@par Function Class:\n Initializer, this \
|
||||
function just initializes an object and can be \
|
||||
invoked before the kernel is initialized." \
|
||||
"special=@par Function Class:\n Special function, \
|
||||
this function has special requirements see the \
|
||||
notes."
|
||||
ALIASES = "iclass=@par Function Class:\n This is an <b>I-Class</b> API, this function can be invoked from within a system lock zone by both threads and interrupt handlers." \
|
||||
"sclass=@par Function Class:\n This is an <b>S-Class</b> API, this function can be invoked from within a system lock zone by threads only." \
|
||||
"api=@par Function Class:\n Normal API, this function can be invoked by regular system threads but not from within a lock zone." \
|
||||
"notapi=@par Function Class:\n Not an API, this function is for internal use only." \
|
||||
"isr=@par Function Class:\n Interrupt handler, this function should not be directly invoked." \
|
||||
"init=@par Function Class:\n Initializer, this function just initializes an object and can be invoked before the kernel is initialized." \
|
||||
"special=@par Function Class:\n Special function, this function has special requirements see the notes."
|
||||
|
||||
# This tag can be used to specify a number of word-keyword mappings (TCL only).
|
||||
# A mapping has the form "name=value". For example adding
|
||||
# "class=itcl::class" will allow you to use the command class in the
|
||||
# itcl::class meaning.
|
||||
|
||||
TCL_SUBST =
|
||||
|
||||
# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C
|
||||
# sources only. Doxygen will then generate output that is more tailored for C.
|
||||
@ -251,17 +247,34 @@ OPTIMIZE_FOR_FORTRAN = NO
|
||||
OPTIMIZE_OUTPUT_VHDL = NO
|
||||
|
||||
# Doxygen selects the parser to use depending on the extension of the files it
|
||||
# parses. With this tag you can assign which parser to use for a given extension.
|
||||
# Doxygen has a built-in mapping, but you can override or extend it using this
|
||||
# tag. The format is ext=language, where ext is a file extension, and language
|
||||
# is one of the parsers supported by doxygen: IDL, Java, Javascript, CSharp, C,
|
||||
# C++, D, PHP, Objective-C, Python, Fortran, VHDL, C, C++. For instance to make
|
||||
# doxygen treat .inc files as Fortran files (default is PHP), and .f files as C
|
||||
# (default is Fortran), use: inc=Fortran f=C. Note that for custom extensions
|
||||
# you also need to set FILE_PATTERNS otherwise the files are not read by doxygen.
|
||||
# parses. With this tag you can assign which parser to use for a given
|
||||
# extension. Doxygen has a built-in mapping, but you can override or extend it
|
||||
# using this tag. The format is ext=language, where ext is a file extension,
|
||||
# and language is one of the parsers supported by doxygen: IDL, Java,
|
||||
# Javascript, CSharp, C, C++, D, PHP, Objective-C, Python, Fortran, VHDL, C,
|
||||
# C++. For instance to make doxygen treat .inc files as Fortran files (default
|
||||
# is PHP), and .f files as C (default is Fortran), use: inc=Fortran f=C. Note
|
||||
# that for custom extensions you also need to set FILE_PATTERNS otherwise the
|
||||
# files are not read by doxygen.
|
||||
|
||||
EXTENSION_MAPPING =
|
||||
|
||||
# If MARKDOWN_SUPPORT is enabled (the default) then doxygen pre-processes all
|
||||
# comments according to the Markdown format, which allows for more readable
|
||||
# documentation. See http://daringfireball.net/projects/markdown/ for details.
|
||||
# The output of markdown processing is further processed by doxygen, so you
|
||||
# can mix doxygen, HTML, and XML commands with Markdown formatting.
|
||||
# Disable only in case of backward compatibilities issues.
|
||||
|
||||
MARKDOWN_SUPPORT = YES
|
||||
|
||||
# When enabled doxygen tries to link words that correspond to documented classes,
|
||||
# or namespaces to their corresponding documentation. Such a link can be
|
||||
# prevented in individual cases by by putting a % sign in front of the word or
|
||||
# globally by setting AUTOLINK_SUPPORT to NO.
|
||||
|
||||
AUTOLINK_SUPPORT = YES
|
||||
|
||||
# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want
|
||||
# to include (a tag file for) the STL sources as input, then you should
|
||||
# set this tag to YES in order to let doxygen match functions declarations and
|
||||
@ -282,12 +295,7 @@ CPP_CLI_SUPPORT = NO
|
||||
|
||||
SIP_SUPPORT = NO
|
||||
|
||||
# For Microsoft's IDL there are propget and propput attributes to indicate getter
|
||||
# and setter methods for a property. Setting this option to YES (the default)
|
||||
# will make doxygen replace the get and set methods by a property in the
|
||||
# documentation. This will only work if the methods are indeed getting or
|
||||
# setting a simple type. If this is not the case, or you want to show the
|
||||
# methods anyway, you should set this option to NO.
|
||||
# For Microsoft's IDL there are propget and propput attributes to indicate getter and setter methods for a property. Setting this option to YES (the default) will make doxygen replace the get and set methods by a property in the documentation. This will only work if the methods are indeed getting or setting a simple type. If this is not the case, or you want to show the methods anyway, you should set this option to NO.
|
||||
|
||||
IDL_PROPERTY_SUPPORT = YES
|
||||
|
||||
@ -313,6 +321,15 @@ SUBGROUPING = YES
|
||||
|
||||
INLINE_GROUPED_CLASSES = NO
|
||||
|
||||
# When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and
|
||||
# unions with only public data fields will be shown inline in the documentation
|
||||
# of the scope in which they are defined (i.e. file, namespace, or group
|
||||
# documentation), provided this scope is documented. If set to NO (the default),
|
||||
# structs, classes, and unions are shown on a separate page (for HTML and Man
|
||||
# pages) or section (for LaTeX and RTF).
|
||||
|
||||
INLINE_SIMPLE_STRUCTS = NO
|
||||
|
||||
# When TYPEDEF_HIDES_STRUCT is enabled, a typedef of a struct, union, or enum
|
||||
# is documented as struct, union, or enum with the name of the typedef. So
|
||||
# typedef struct TypeS {} TypeT, will appear in the documentation as a struct
|
||||
@ -335,10 +352,21 @@ TYPEDEF_HIDES_STRUCT = NO
|
||||
# a logarithmic scale so increasing the size by one will roughly double the
|
||||
# memory usage. The cache size is given by this formula:
|
||||
# 2^(16+SYMBOL_CACHE_SIZE). The valid range is 0..9, the default is 0,
|
||||
# corresponding to a cache size of 2^16 = 65536 symbols
|
||||
# corresponding to a cache size of 2^16 = 65536 symbols.
|
||||
|
||||
SYMBOL_CACHE_SIZE = 0
|
||||
|
||||
# Similar to the SYMBOL_CACHE_SIZE the size of the symbol lookup cache can be
|
||||
# set using LOOKUP_CACHE_SIZE. This cache is used to resolve symbols given
|
||||
# their name and scope. Since this can be an expensive process and often the
|
||||
# same symbol appear multiple times in the code, doxygen keeps a cache of
|
||||
# pre-resolved symbols. If the cache is too small doxygen will become slower.
|
||||
# If the cache is too large, memory is wasted. The cache size is given by this
|
||||
# formula: 2^(16+LOOKUP_CACHE_SIZE). The valid range is 0..9, the default is 0,
|
||||
# corresponding to a cache size of 2^16 = 65536 symbols.
|
||||
|
||||
LOOKUP_CACHE_SIZE = 0
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
# Build related configuration options
|
||||
#---------------------------------------------------------------------------
|
||||
@ -355,6 +383,11 @@ EXTRACT_ALL = NO
|
||||
|
||||
EXTRACT_PRIVATE = NO
|
||||
|
||||
# If the EXTRACT_PACKAGE tag is set to YES all members with package or internal
|
||||
# scope will be included in the documentation.
|
||||
|
||||
EXTRACT_PACKAGE = NO
|
||||
|
||||
# If the EXTRACT_STATIC tag is set to YES all static members of a file
|
||||
# will be included in the documentation.
|
||||
|
||||
@ -542,12 +575,6 @@ MAX_INITIALIZER_LINES = 30
|
||||
|
||||
SHOW_USED_FILES = NO
|
||||
|
||||
# If the sources in your project are distributed over multiple directories
|
||||
# then setting the SHOW_DIRECTORIES tag to YES will show the directory hierarchy
|
||||
# in the documentation. The default is NO.
|
||||
|
||||
SHOW_DIRECTORIES = NO
|
||||
|
||||
# Set the SHOW_FILES tag to NO to disable the generation of the Files page.
|
||||
# This will remove the Files entry from the Quick Index and from the
|
||||
# Folder Tree View (if specified). The default is YES.
|
||||
@ -573,12 +600,22 @@ FILE_VERSION_FILTER =
|
||||
|
||||
# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed
|
||||
# by doxygen. The layout file controls the global structure of the generated
|
||||
# output files in an output format independent way. The create the layout file
|
||||
# output files in an output format independent way. To create the layout file
|
||||
# that represents doxygen's defaults, run doxygen with the -l option.
|
||||
# You can optionally specify a file name after the option, if omitted
|
||||
# DoxygenLayout.xml will be used as the name of the layout file.
|
||||
|
||||
LAYOUT_FILE = docs/layout.xml
|
||||
LAYOUT_FILE = docs/rsc/layout.xml
|
||||
|
||||
# The CITE_BIB_FILES tag can be used to specify one or more bib files
|
||||
# containing the references data. This must be a list of .bib files. The
|
||||
# .bib extension is automatically appended if omitted. Using this command
|
||||
# requires the bibtex tool to be installed. See also
|
||||
# http://en.wikipedia.org/wiki/BibTeX for more info. For LaTeX the style
|
||||
# of the bibliography can be controlled using LATEX_BIB_STYLE. To use this
|
||||
# feature you need bibtex and perl available in the search path.
|
||||
|
||||
CITE_BIB_FILES =
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
# configuration options related to warning and progress messages
|
||||
@ -666,13 +703,15 @@ FILE_PATTERNS =
|
||||
|
||||
RECURSIVE = YES
|
||||
|
||||
# The EXCLUDE tag can be used to specify files and/or directories that should
|
||||
# The EXCLUDE tag can be used to specify files and/or directories that should be
|
||||
# excluded from the INPUT source files. This way you can easily exclude a
|
||||
# subdirectory from a directory tree whose root is specified with the INPUT tag.
|
||||
# Note that relative paths are relative to the directory from which doxygen is
|
||||
# run.
|
||||
|
||||
EXCLUDE =
|
||||
|
||||
# The EXCLUDE_SYMLINKS tag can be used select whether or not files or
|
||||
# The EXCLUDE_SYMLINKS tag can be used to select whether or not files or
|
||||
# directories that are symbolic links (a Unix file system feature) are excluded
|
||||
# from the input.
|
||||
|
||||
@ -718,7 +757,7 @@ EXAMPLE_RECURSIVE = NO
|
||||
# directories that contain image that are included in the documentation (see
|
||||
# the \image command).
|
||||
|
||||
IMAGE_PATH = ./rsc
|
||||
IMAGE_PATH =
|
||||
|
||||
# The INPUT_FILTER tag can be used to specify a program that doxygen should
|
||||
# invoke to filter for each input file. Doxygen will invoke the filter program
|
||||
@ -774,7 +813,7 @@ INLINE_SOURCES = NO
|
||||
|
||||
# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct
|
||||
# doxygen to hide any special comment blocks from generated source code
|
||||
# fragments. Normal C and C++ comments will always remain visible.
|
||||
# fragments. Normal C, C++ and Fortran comments will always remain visible.
|
||||
|
||||
STRIP_CODE_COMMENTS = NO
|
||||
|
||||
@ -861,10 +900,11 @@ HTML_FILE_EXTENSION = .html
|
||||
# standard header. Note that when using a custom header you are responsible
|
||||
# for the proper inclusion of any scripts and style sheets that doxygen
|
||||
# needs, which is dependent on the configuration options used.
|
||||
# It is adviced to generate a default header using "doxygen -w html
|
||||
# It is advised to generate a default header using "doxygen -w html
|
||||
# header.html footer.html stylesheet.css YourConfigFile" and then modify
|
||||
# that header. Note that the header is subject to change so you typically
|
||||
# have to redo this when upgrading to a newer version of doxygen or when changing the value of configuration settings such as GENERATE_TREEVIEW!
|
||||
# have to redo this when upgrading to a newer version of doxygen or when
|
||||
# changing the value of configuration settings such as GENERATE_TREEVIEW!
|
||||
|
||||
HTML_HEADER =
|
||||
|
||||
@ -876,13 +916,23 @@ HTML_FOOTER =
|
||||
|
||||
# The HTML_STYLESHEET tag can be used to specify a user-defined cascading
|
||||
# style sheet that is used by each HTML page. It can be used to
|
||||
# fine-tune the look of the HTML output. If the tag is left blank doxygen
|
||||
# will generate a default style sheet. Note that doxygen will try to copy
|
||||
# the style sheet file to the HTML output directory, so don't put your own
|
||||
# stylesheet in the HTML output directory as well, or it will be erased!
|
||||
# fine-tune the look of the HTML output. If left blank doxygen will
|
||||
# generate a default style sheet. Note that it is recommended to use
|
||||
# HTML_EXTRA_STYLESHEET instead of this one, as it is more robust and this
|
||||
# tag will in the future become obsolete.
|
||||
|
||||
HTML_STYLESHEET =
|
||||
|
||||
# The HTML_EXTRA_STYLESHEET tag can be used to specify an additional
|
||||
# user-defined cascading style sheet that is included after the standard
|
||||
# style sheets created by doxygen. Using this option one can overrule
|
||||
# certain style aspects. This is preferred over using HTML_STYLESHEET
|
||||
# since it does not replace the standard style sheet and is therefor more
|
||||
# robust against future updates. Doxygen will copy the style sheet file to
|
||||
# the output directory.
|
||||
|
||||
HTML_EXTRA_STYLESHEET =
|
||||
|
||||
# The HTML_EXTRA_FILES tag can be used to specify one or more extra images or
|
||||
# other source files which should be copied to the HTML output directory. Note
|
||||
# that these files will be copied to the base HTML output directory. Use the
|
||||
@ -923,20 +973,23 @@ HTML_COLORSTYLE_GAMMA = 80
|
||||
|
||||
HTML_TIMESTAMP = YES
|
||||
|
||||
# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes,
|
||||
# files or namespaces will be aligned in HTML using tables. If set to
|
||||
# NO a bullet list will be used.
|
||||
|
||||
HTML_ALIGN_MEMBERS = YES
|
||||
|
||||
# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML
|
||||
# documentation will contain sections that can be hidden and shown after the
|
||||
# page has loaded. For this to work a browser that supports
|
||||
# JavaScript and DHTML is required (for instance Mozilla 1.0+, Firefox
|
||||
# Netscape 6.0+, Internet explorer 5.0+, Konqueror, or Safari).
|
||||
# page has loaded.
|
||||
|
||||
HTML_DYNAMIC_SECTIONS = NO
|
||||
|
||||
# With HTML_INDEX_NUM_ENTRIES one can control the preferred number of
|
||||
# entries shown in the various tree structured indices initially; the user
|
||||
# can expand and collapse entries dynamically later on. Doxygen will expand
|
||||
# the tree to such a level that at most the specified number of entries are
|
||||
# visible (unless a fully collapsed tree already exceeds this amount).
|
||||
# So setting the number of entries 1 will produce a full collapsed tree by
|
||||
# default. 0 is a special value representing an infinite number of entries
|
||||
# and will result in a full expanded tree by default.
|
||||
|
||||
HTML_INDEX_NUM_ENTRIES = 100
|
||||
|
||||
# If the GENERATE_DOCSET tag is set to YES, additional index files
|
||||
# will be generated that can be used as input for Apple's Xcode 3
|
||||
# integrated development environment, introduced with OSX 10.5 (Leopard).
|
||||
@ -964,9 +1017,9 @@ DOCSET_FEEDNAME = "Doxygen generated docs"
|
||||
|
||||
DOCSET_BUNDLE_ID = org.doxygen.Project
|
||||
|
||||
# When GENERATE_PUBLISHER_ID tag specifies a string that should uniquely identify
|
||||
# the documentation publisher. This should be a reverse domain-name style
|
||||
# string, e.g. com.mycompany.MyDocSet.documentation.
|
||||
# When GENERATE_PUBLISHER_ID tag specifies a string that should uniquely
|
||||
# identify the documentation publisher. This should be a reverse domain-name
|
||||
# style string, e.g. com.mycompany.MyDocSet.documentation.
|
||||
|
||||
DOCSET_PUBLISHER_ID = org.doxygen.Publisher
|
||||
|
||||
@ -1088,19 +1141,14 @@ GENERATE_ECLIPSEHELP = NO
|
||||
|
||||
ECLIPSE_DOC_ID = org.doxygen.Project
|
||||
|
||||
# The DISABLE_INDEX tag can be used to turn on/off the condensed index at
|
||||
# top of each HTML page. The value NO (the default) enables the index and
|
||||
# the value YES disables it.
|
||||
# The DISABLE_INDEX tag can be used to turn on/off the condensed index (tabs)
|
||||
# at top of each HTML page. The value NO (the default) enables the index and
|
||||
# the value YES disables it. Since the tabs have the same information as the
|
||||
# navigation tree you can set this option to NO if you already set
|
||||
# GENERATE_TREEVIEW to YES.
|
||||
|
||||
DISABLE_INDEX = NO
|
||||
|
||||
# The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values
|
||||
# (range [0,1..20]) that doxygen will group on one line in the generated HTML
|
||||
# documentation. Note that a value of 0 will completely suppress the enum
|
||||
# values from appearing in the overview section.
|
||||
|
||||
ENUM_VALUES_PER_LINE = 4
|
||||
|
||||
# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index
|
||||
# structure should be generated to display hierarchical information.
|
||||
# If the tag value is set to YES, a side panel will be generated
|
||||
@ -1108,13 +1156,17 @@ ENUM_VALUES_PER_LINE = 4
|
||||
# is generated for HTML Help). For this to work a browser that supports
|
||||
# JavaScript, DHTML, CSS and frames is required (i.e. any modern browser).
|
||||
# Windows users are probably better off using the HTML help feature.
|
||||
# Since the tree basically has the same information as the tab index you
|
||||
# could consider to set DISABLE_INDEX to NO when enabling this option.
|
||||
|
||||
GENERATE_TREEVIEW = YES
|
||||
|
||||
# By enabling USE_INLINE_TREES, doxygen will generate the Groups, Directories,
|
||||
# and Class Hierarchy pages using a tree view instead of an ordered list.
|
||||
# The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values
|
||||
# (range [0,1..20]) that doxygen will group on one line in the generated HTML
|
||||
# documentation. Note that a value of 0 will completely suppress the enum
|
||||
# values from appearing in the overview section.
|
||||
|
||||
USE_INLINE_TREES = NO
|
||||
ENUM_VALUES_PER_LINE = 4
|
||||
|
||||
# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be
|
||||
# used to set the initial width (in pixels) of the frame in which the tree
|
||||
@ -1147,7 +1199,7 @@ FORMULA_TRANSPARENT = YES
|
||||
# (see http://www.mathjax.org) which uses client side Javascript for the
|
||||
# rendering instead of using prerendered bitmaps. Use this if you do not
|
||||
# have LaTeX installed or if you want to formulas look prettier in the HTML
|
||||
# output. When enabled you also need to install MathJax separately and
|
||||
# output. When enabled you may also need to install MathJax separately and
|
||||
# configure the path to it using the MATHJAX_RELPATH option.
|
||||
|
||||
USE_MATHJAX = NO
|
||||
@ -1156,13 +1208,19 @@ USE_MATHJAX = NO
|
||||
# HTML output directory using the MATHJAX_RELPATH option. The destination
|
||||
# directory should contain the MathJax.js script. For instance, if the mathjax
|
||||
# directory is located at the same level as the HTML output directory, then
|
||||
# MATHJAX_RELPATH should be ../mathjax. The default value points to the
|
||||
# mathjax.org site, so you can quickly see the result without installing
|
||||
# MathJax, but it is strongly recommended to install a local copy of MathJax
|
||||
# before deployment.
|
||||
# MATHJAX_RELPATH should be ../mathjax. The default value points to
|
||||
# the MathJax Content Delivery Network so you can quickly see the result without
|
||||
# installing MathJax.
|
||||
# However, it is strongly recommended to install a local
|
||||
# copy of MathJax from http://www.mathjax.org before deployment.
|
||||
|
||||
MATHJAX_RELPATH = http://www.mathjax.org/mathjax
|
||||
|
||||
# The MATHJAX_EXTENSIONS tag can be used to specify one or MathJax extension
|
||||
# names that should be enabled during MathJax rendering.
|
||||
|
||||
MATHJAX_EXTENSIONS =
|
||||
|
||||
# When the SEARCHENGINE tag is enabled doxygen will generate a search box
|
||||
# for the HTML output. The underlying search engine uses javascript
|
||||
# and DHTML and should work on any modern browser. Note that when using
|
||||
@ -1276,6 +1334,12 @@ LATEX_HIDE_INDICES = NO
|
||||
|
||||
LATEX_SOURCE_CODE = NO
|
||||
|
||||
# The LATEX_BIB_STYLE tag can be used to specify the style to use for the
|
||||
# bibliography, e.g. plainnat, or ieeetr. The default style is "plain". See
|
||||
# http://en.wikipedia.org/wiki/BibTeX for more info.
|
||||
|
||||
LATEX_BIB_STYLE = plain
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
# configuration options related to the RTF output
|
||||
#---------------------------------------------------------------------------
|
||||
@ -1498,22 +1562,18 @@ SKIP_FUNCTION_MACROS = NO
|
||||
# Configuration::additions related to external references
|
||||
#---------------------------------------------------------------------------
|
||||
|
||||
# The TAGFILES option can be used to specify one or more tagfiles.
|
||||
# Optionally an initial location of the external documentation
|
||||
# can be added for each tagfile. The format of a tag file without
|
||||
# this location is as follows:
|
||||
# The TAGFILES option can be used to specify one or more tagfiles. For each
|
||||
# tag file the location of the external documentation should be added. The
|
||||
# format of a tag file without this location is as follows:
|
||||
#
|
||||
# TAGFILES = file1 file2 ...
|
||||
# Adding location for the tag files is done as follows:
|
||||
#
|
||||
# TAGFILES = file1=loc1 "file2 = loc2" ...
|
||||
# where "loc1" and "loc2" can be relative or absolute paths or
|
||||
# URLs. If a location is present for each tag, the installdox tool
|
||||
# does not have to be run to correct the links.
|
||||
# Note that each tag file must have a unique name
|
||||
# (where the name does NOT include the path)
|
||||
# If a tag file is not located in the directory in which doxygen
|
||||
# is run, you must also specify the path to the tagfile here.
|
||||
# where "loc1" and "loc2" can be relative or absolute paths
|
||||
# or URLs. Note that each tag file must have a unique name (where the name does
|
||||
# NOT include the path). If a tag file is not located in the directory in which
|
||||
# doxygen is run, you must also specify the path to the tagfile here.
|
||||
|
||||
TAGFILES =
|
||||
|
||||
@ -1581,13 +1641,12 @@ HAVE_DOT = YES
|
||||
|
||||
DOT_NUM_THREADS = 0
|
||||
|
||||
# By default doxygen will write a font called Helvetica to the output
|
||||
# directory and reference it in all dot files that doxygen generates.
|
||||
# When you want a differently looking font you can specify the font name
|
||||
# using DOT_FONTNAME. You need to make sure dot is able to find the font,
|
||||
# which can be done by putting it in a standard location or by setting the
|
||||
# DOTFONTPATH environment variable or by setting DOT_FONTPATH to the directory
|
||||
# containing the font.
|
||||
# By default doxygen will use the Helvetica font for all dot files that
|
||||
# doxygen generates. When you want a differently looking font you can specify
|
||||
# the font name using DOT_FONTNAME. You need to make sure dot is able to find
|
||||
# the font, which can be done by putting it in a standard location or by setting
|
||||
# the DOTFONTPATH environment variable or by setting DOT_FONTPATH to the
|
||||
# directory containing the font.
|
||||
|
||||
DOT_FONTNAME = FreeSans
|
||||
|
||||
@ -1596,17 +1655,16 @@ DOT_FONTNAME = FreeSans
|
||||
|
||||
DOT_FONTSIZE = 8
|
||||
|
||||
# By default doxygen will tell dot to use the output directory to look for the
|
||||
# FreeSans.ttf font (which doxygen will put there itself). If you specify a
|
||||
# different font using DOT_FONTNAME you can set the path where dot
|
||||
# can find it using this tag.
|
||||
# By default doxygen will tell dot to use the Helvetica font.
|
||||
# If you specify a different font using DOT_FONTNAME you can use DOT_FONTPATH to
|
||||
# set the path where dot can find it.
|
||||
|
||||
DOT_FONTPATH =
|
||||
|
||||
# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen
|
||||
# will generate a graph for each documented class showing the direct and
|
||||
# indirect inheritance relations. Setting this tag to YES will force the
|
||||
# the CLASS_DIAGRAMS tag to NO.
|
||||
# CLASS_DIAGRAMS tag to NO.
|
||||
|
||||
CLASS_GRAPH = YES
|
||||
|
||||
@ -1628,6 +1686,15 @@ GROUP_GRAPHS = YES
|
||||
|
||||
UML_LOOK = YES
|
||||
|
||||
# If the UML_LOOK tag is enabled, the fields and methods are shown inside
|
||||
# the class node. If there are many fields or methods and many nodes the
|
||||
# graph may become too big to be useful. The UML_LIMIT_NUM_FIELDS
|
||||
# threshold limits the number of items for each type to make the size more
|
||||
# managable. Set this to 0 for no limit. Note that the threshold may be
|
||||
# exceeded by 50% before the limit is enforced.
|
||||
|
||||
UML_LIMIT_NUM_FIELDS = 10
|
||||
|
||||
# If set to YES, the inheritance and collaboration graphs will show the
|
||||
# relations between templates and their instances.
|
||||
|
||||
@ -1668,7 +1735,7 @@ CALLER_GRAPH = NO
|
||||
|
||||
GRAPHICAL_HIERARCHY = YES
|
||||
|
||||
# If the DIRECTORY_GRAPH, SHOW_DIRECTORIES and HAVE_DOT tags are set to YES
|
||||
# If the DIRECTORY_GRAPH and HAVE_DOT tags are set to YES
|
||||
# then doxygen will show the dependencies a directory has on other directories
|
||||
# in a graphical way. The dependency relations are determined by the #include
|
||||
# relations between the files in the directories.
|
||||
@ -1677,10 +1744,21 @@ DIRECTORY_GRAPH = NO
|
||||
|
||||
# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images
|
||||
# generated by dot. Possible values are svg, png, jpg, or gif.
|
||||
# If left blank png will be used.
|
||||
# If left blank png will be used. If you choose svg you need to set
|
||||
# HTML_FILE_EXTENSION to xhtml in order to make the SVG files
|
||||
# visible in IE 9+ (other browsers do not have this requirement).
|
||||
|
||||
DOT_IMAGE_FORMAT = png
|
||||
|
||||
# If DOT_IMAGE_FORMAT is set to svg, then this option can be set to YES to
|
||||
# enable generation of interactive SVG images that allow zooming and panning.
|
||||
# Note that this requires a modern browser other than Internet Explorer.
|
||||
# Tested and working are Firefox, Chrome, Safari, and Opera. For IE 9+ you
|
||||
# need to set HTML_FILE_EXTENSION to xhtml in order to make the SVG files
|
||||
# visible. Older versions of IE do not have SVG support.
|
||||
|
||||
INTERACTIVE_SVG = NO
|
||||
|
||||
# The tag DOT_PATH can be used to specify the path where the dot tool can be
|
||||
# found. If left blank, it is assumed the dot tool can be found in the path.
|
||||
|
||||
@ -1744,4 +1822,3 @@ GENERATE_LEGEND = YES
|
||||
# the various graphs.
|
||||
|
||||
DOT_CLEANUP = YES
|
||||
|
||||
|
184
docs/layout.xml
184
docs/layout.xml
@ -1,184 +0,0 @@
|
||||
<doxygenlayout version="1.0">
|
||||
<!-- Navigation index tabs for HTML output -->
|
||||
<navindex>
|
||||
<tab type="mainpage" visible="yes" title=""/>
|
||||
<tab type="pages" visible="yes" title="" intro=""/>
|
||||
<tab type="modules" visible="yes" title="" intro=""/>
|
||||
<tab type="namespaces" visible="yes" title="">
|
||||
<tab type="namespaces" visible="yes" title="" intro=""/>
|
||||
<tab type="namespacemembers" visible="yes" title="" intro=""/>
|
||||
</tab>
|
||||
<tab type="classes" visible="yes" title="">
|
||||
<tab type="classes" visible="yes" title="" intro=""/>
|
||||
<tab type="classindex" visible="$ALPHABETICAL_INDEX" title=""/>
|
||||
<tab type="hierarchy" visible="yes" title="" intro=""/>
|
||||
<tab type="classmembers" visible="yes" title="" intro=""/>
|
||||
</tab>
|
||||
<tab type="files" visible="yes" title="">
|
||||
<tab type="files" visible="yes" title="" intro=""/>
|
||||
<tab type="globals" visible="yes" title="" intro=""/>
|
||||
</tab>
|
||||
<tab type="dirs" visible="yes" title="" intro=""/>
|
||||
<tab type="examples" visible="yes" title="" intro=""/>
|
||||
</navindex>
|
||||
|
||||
<!-- Layout definition for a class page -->
|
||||
<class>
|
||||
<briefdescription visible="no"/>
|
||||
<detaileddescription title=""/>
|
||||
<includes visible="$SHOW_INCLUDE_FILES"/>
|
||||
<inheritancegraph visible="$CLASS_GRAPH"/>
|
||||
<collaborationgraph visible="$COLLABORATION_GRAPH"/>
|
||||
<allmemberslink visible="yes"/>
|
||||
<memberdecl>
|
||||
<nestedclasses visible="yes" title=""/>
|
||||
<publictypes title=""/>
|
||||
<publicslots title=""/>
|
||||
<signals title=""/>
|
||||
<publicmethods title=""/>
|
||||
<publicstaticmethods title=""/>
|
||||
<publicattributes title=""/>
|
||||
<publicstaticattributes title=""/>
|
||||
<protectedtypes title=""/>
|
||||
<protectedslots title=""/>
|
||||
<protectedmethods title=""/>
|
||||
<protectedstaticmethods title=""/>
|
||||
<protectedattributes title=""/>
|
||||
<protectedstaticattributes title=""/>
|
||||
<packagetypes title=""/>
|
||||
<packagemethods title=""/>
|
||||
<packagestaticmethods title=""/>
|
||||
<packageattributes title=""/>
|
||||
<packagestaticattributes title=""/>
|
||||
<properties title=""/>
|
||||
<events title=""/>
|
||||
<privatetypes title=""/>
|
||||
<privateslots title=""/>
|
||||
<privatemethods title=""/>
|
||||
<privatestaticmethods title=""/>
|
||||
<privateattributes title=""/>
|
||||
<privatestaticattributes title=""/>
|
||||
<friends title=""/>
|
||||
<related title="" subtitle=""/>
|
||||
<membergroups visible="yes"/>
|
||||
</memberdecl>
|
||||
<memberdef>
|
||||
<typedefs title=""/>
|
||||
<enums title=""/>
|
||||
<constructors title=""/>
|
||||
<functions title=""/>
|
||||
<related title=""/>
|
||||
<variables title=""/>
|
||||
<properties title=""/>
|
||||
<events title=""/>
|
||||
</memberdef>
|
||||
<usedfiles visible="$SHOW_USED_FILES"/>
|
||||
<authorsection visible="yes"/>
|
||||
</class>
|
||||
|
||||
<!-- Layout definition for a namespace page -->
|
||||
<namespace>
|
||||
<briefdescription visible="no"/>
|
||||
<detaileddescription title=""/>
|
||||
<memberdecl>
|
||||
<nestednamespaces visible="yes" title=""/>
|
||||
<classes visible="yes" title=""/>
|
||||
<typedefs title=""/>
|
||||
<enums title=""/>
|
||||
<functions title=""/>
|
||||
<variables title=""/>
|
||||
<membergroups visible="yes"/>
|
||||
</memberdecl>
|
||||
<memberdef>
|
||||
<typedefs title=""/>
|
||||
<enums title=""/>
|
||||
<functions title=""/>
|
||||
<variables title=""/>
|
||||
</memberdef>
|
||||
<authorsection visible="yes"/>
|
||||
</namespace>
|
||||
|
||||
<!-- Layout definition for a file page -->
|
||||
<file>
|
||||
<briefdescription visible="no"/>
|
||||
<detaileddescription title=""/>
|
||||
<includes visible="$SHOW_INCLUDE_FILES"/>
|
||||
<includegraph visible="$INCLUDE_GRAPH"/>
|
||||
<includedbygraph visible="$INCLUDED_BY_GRAPH"/>
|
||||
<sourcelink visible="yes"/>
|
||||
<memberdecl>
|
||||
<classes visible="yes" title=""/>
|
||||
<namespaces visible="yes" title=""/>
|
||||
<functions title=""/>
|
||||
<variables title=""/>
|
||||
<defines title=""/>
|
||||
<typedefs title=""/>
|
||||
<enums title=""/>
|
||||
<membergroups visible="yes"/>
|
||||
</memberdecl>
|
||||
<memberdef>
|
||||
<functions title=""/>
|
||||
<variables title=""/>
|
||||
<defines title=""/>
|
||||
<typedefs title=""/>
|
||||
<enums title=""/>
|
||||
</memberdef>
|
||||
<authorsection/>
|
||||
</file>
|
||||
|
||||
<!-- Layout definition for a group page -->
|
||||
<group>
|
||||
<briefdescription visible="no"/>
|
||||
<groupgraph visible="$GROUP_GRAPHS"/>
|
||||
<detaileddescription title=""/>
|
||||
<memberdecl>
|
||||
<classes visible="yes" title=""/>
|
||||
<namespaces visible="yes" title=""/>
|
||||
<dirs visible="yes" title=""/>
|
||||
<nestedgroups visible="yes" title=""/>
|
||||
<files visible="yes" title=""/>
|
||||
<functions title=""/>
|
||||
<variables title=""/>
|
||||
<membergroups visible="yes"/>
|
||||
<defines title=""/>
|
||||
<typedefs title=""/>
|
||||
<enums title=""/>
|
||||
<enumvalues title=""/>
|
||||
<signals title=""/>
|
||||
<publicslots title=""/>
|
||||
<protectedslots title=""/>
|
||||
<privateslots title=""/>
|
||||
<events title=""/>
|
||||
<properties title=""/>
|
||||
<friends title=""/>
|
||||
</memberdecl>
|
||||
<memberdef>
|
||||
<pagedocs/>
|
||||
<functions title=""/>
|
||||
<variables title=""/>
|
||||
<defines title=""/>
|
||||
<typedefs title=""/>
|
||||
<enums title=""/>
|
||||
<enumvalues title=""/>
|
||||
<signals title=""/>
|
||||
<publicslots title=""/>
|
||||
<protectedslots title=""/>
|
||||
<privateslots title=""/>
|
||||
<events title=""/>
|
||||
<properties title=""/>
|
||||
<friends title=""/>
|
||||
</memberdef>
|
||||
<authorsection visible="yes"/>
|
||||
</group>
|
||||
|
||||
<!-- Layout definition for a directory page -->
|
||||
<directory>
|
||||
<briefdescription visible="no"/>
|
||||
<directorygraph visible="yes"/>
|
||||
<detaileddescription title=""/>
|
||||
<memberdecl>
|
||||
<dirs visible="yes"/>
|
||||
<files visible="yes"/>
|
||||
</memberdecl>
|
||||
</directory>
|
||||
</doxygenlayout>
|
@ -19,7 +19,7 @@
|
||||
*/
|
||||
|
||||
/**
|
||||
* @file gdispNokia6610/gdisp_lld.c
|
||||
* @file drivers/gdisp/Nokia6610/gdisp_lld.c
|
||||
* @brief GDISP Graphics Driver subsystem low level driver source for the Nokia6610 display.
|
||||
*
|
||||
* @addtogroup GDISP
|
||||
|
@ -19,7 +19,7 @@
|
||||
*/
|
||||
|
||||
/**
|
||||
* @file gdispNokia6610/gdisp_lld_board_example.h
|
||||
* @file drivers/gdisp/Nokia6610/gdisp_lld_board_example.h
|
||||
* @brief GDISP Graphic Driver subsystem board interface for the Nokia6610 display.
|
||||
*
|
||||
* @addtogroup GDISP
|
||||
|
@ -23,7 +23,7 @@
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @file gdispNokia6610/gdisp_lld_board_olimexsam7ex256.h
|
||||
* @file drivers/gdisp/Nokia6610/gdisp_lld_board_olimexsam7ex256.h
|
||||
* @brief GDISP Graphic Driver subsystem board interface for the Olimex SAM7-EX256 board.
|
||||
*
|
||||
* @addtogroup GDISP
|
||||
|
@ -19,7 +19,7 @@
|
||||
*/
|
||||
|
||||
/**
|
||||
* @file gdispNokia6610/gdisp_lld_config.h
|
||||
* @file drivers/gdisp/Nokia6610/gdisp_lld_config.h
|
||||
* @brief GDISP Graphic Driver subsystem low level driver header for the Nokia6610 display.
|
||||
*
|
||||
* @addtogroup GDISP
|
||||
|
@ -19,7 +19,7 @@
|
||||
*/
|
||||
|
||||
/**
|
||||
* @file gdispS6d1121/gdisp_lld.c
|
||||
* @file drivers/gdisp/S6D1121/gdisp_lld.c
|
||||
* @brief GDISP Graphics Driver subsystem low level driver source for the S6d1121 display.
|
||||
*
|
||||
* @addtogroup GDISP
|
||||
@ -501,3 +501,4 @@ void GDISP_LLD(drawpixel)(coord_t x, coord_t y, color_t color) {
|
||||
|
||||
#endif /* GFX_USE_GDISP */
|
||||
/** @} */
|
||||
|
||||
|
@ -19,7 +19,7 @@
|
||||
*/
|
||||
|
||||
/**
|
||||
* @file gdispS6d1121/gdisp_lld_config.h
|
||||
* @file drivers/gdisp/S6D1121/gdisp_lld_config.h
|
||||
* @brief GDISP Graphic Driver subsystem low level driver header for the S6d1121 display.
|
||||
*
|
||||
* @addtogroup GDISP
|
||||
@ -51,3 +51,4 @@
|
||||
|
||||
#endif /* _GDISP_LLD_CONFIG_H */
|
||||
/** @} */
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
ChibiOS/RT - Copyright (C) 2012
|
||||
ChibiOS/GFX - Copyright (C) 2012
|
||||
Joel Bodenmann aka Tectu <joel@unormal.org>
|
||||
|
||||
This file is part of ChibiOS/GFX.
|
||||
@ -251,3 +251,4 @@ static void lld_lcdResetViewPort(void) {
|
||||
}
|
||||
|
||||
#endif /* S6D1121_H */
|
||||
|
||||
|
@ -19,7 +19,7 @@
|
||||
*/
|
||||
|
||||
/**
|
||||
* @file SSD1963/gdisp_lld.c
|
||||
* @file drivers/gdisp/SSD1963/gdisp_lld.c
|
||||
* @brief GDISP Graphics Driver subsystem low level driver source.
|
||||
*
|
||||
* @addtogroup GDISP
|
||||
|
@ -19,7 +19,7 @@
|
||||
*/
|
||||
|
||||
/**
|
||||
* @file SSD1963/gdisp_lld_config.h
|
||||
* @file drivers/gdisp/SSD1963/gdisp_lld_config.h
|
||||
* @brief GDISP Graphic Driver subsystem low level driver header.
|
||||
*
|
||||
* @addtogroup GDISP
|
||||
@ -50,3 +50,4 @@
|
||||
|
||||
#endif /* _GDISP_LLD_CONFIG_H */
|
||||
/** @} */
|
||||
|
||||
|
@ -18,14 +18,6 @@
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @file SSD1963/ssd1963.h
|
||||
* @brief SSD1963 specific data.
|
||||
*
|
||||
* @addtogroup GDISP
|
||||
* @{
|
||||
*/
|
||||
|
||||
#ifndef SSD1963_H
|
||||
#define SSD1963_H
|
||||
|
||||
@ -138,4 +130,4 @@
|
||||
#define SSD1963_GET_PIXEL_DATA_INTERFACE 0x00F1
|
||||
|
||||
#endif
|
||||
/** @} */
|
||||
|
||||
|
@ -19,7 +19,7 @@
|
||||
*/
|
||||
|
||||
/**
|
||||
* @file gdispTestStub/gdisp_lld.c
|
||||
* @file drivers/gdisp/TestStub/gdisp_lld.c
|
||||
* @brief GDISP Graphics Driver subsystem low level driver source (stub).
|
||||
*
|
||||
* @addtogroup GDISP
|
||||
|
@ -19,7 +19,7 @@
|
||||
*/
|
||||
|
||||
/**
|
||||
* @file gdispTestStub/gdisp_lld_config.h
|
||||
* @file drivers/gdisp/TestStub/gdisp_lld_config.h
|
||||
* @brief GDISP Graphic Driver subsystem low level driver header (stub).
|
||||
*
|
||||
* @addtogroup GDISP
|
||||
|
@ -19,7 +19,7 @@
|
||||
*/
|
||||
|
||||
/**
|
||||
* @file gdispVMT/gdisp_lld.c
|
||||
* @file drivers/gdisp/VMT/gdisp_lld.c
|
||||
* @brief GDISP Graphics Driver subsystem low level driver source for VMT.
|
||||
*
|
||||
* @addtogroup GDISP
|
||||
@ -279,3 +279,4 @@ bool_t gdisp_lld_init_VMT(void) {
|
||||
|
||||
#endif /* GFX_USE_GDISP */
|
||||
/** @} */
|
||||
|
||||
|
@ -19,7 +19,7 @@
|
||||
*/
|
||||
|
||||
/**
|
||||
* @file gdispVMT/gdisp_lld_config.h
|
||||
* @file drivers/gdisp/VMT/gdisp_lld_config.h
|
||||
* @brief GDISP Graphic Driver subsystem low level driver header template.
|
||||
*
|
||||
* @addtogroup GDISP
|
||||
@ -68,3 +68,4 @@
|
||||
|
||||
#endif /* _GDISP_LLD_CONFIG_H */
|
||||
/** @} */
|
||||
|
||||
|
@ -19,7 +19,7 @@
|
||||
*/
|
||||
|
||||
/**
|
||||
* @file gdispVMT/gdisp_lld.c
|
||||
* @file drivers/gdisp/VMT/gdisp_lld_driver1.c
|
||||
* @brief GDISP Graphics Driver subsystem low level driver source for VMT.
|
||||
*
|
||||
* @addtogroup GDISP
|
||||
@ -49,3 +49,4 @@
|
||||
|
||||
#endif /* GFX_USE_GDISP */
|
||||
/** @} */
|
||||
|
||||
|
@ -19,7 +19,7 @@
|
||||
*/
|
||||
|
||||
/**
|
||||
* @file gdispVMT/gdisp_lld.c
|
||||
* @file drivers/gdisp/VMT/gdisp_lld_driver2.c
|
||||
* @brief GDISP Graphics Driver subsystem low level driver source for VMT.
|
||||
*
|
||||
* @addtogroup GDISP
|
||||
@ -49,3 +49,4 @@
|
||||
|
||||
#endif /* GFX_USE_GDISP */
|
||||
/** @} */
|
||||
|
||||
|
@ -19,7 +19,7 @@
|
||||
*/
|
||||
|
||||
/**
|
||||
* @file touchpadXPT2046/touchpad_lld.c
|
||||
* @file drivers/touchpad/XPT2046/touchpad_lld.c
|
||||
* @brief Touchpad Driver subsystem low level driver source.
|
||||
*
|
||||
* @addtogroup TOUCHPAD
|
||||
@ -67,7 +67,7 @@
|
||||
/**
|
||||
* @brief Low level Touchpad driver initialization.
|
||||
*
|
||||
* @param[in] The touchpad driver
|
||||
* @param[in] tp The touchpad driver
|
||||
*
|
||||
* @notapi
|
||||
*/
|
||||
|
@ -19,7 +19,7 @@
|
||||
*/
|
||||
|
||||
/**
|
||||
* @file touchpadADS7843/touchpad_lld_config.h
|
||||
* @file drivers/touchpad/ADS7843/touchpad_lld_config.h
|
||||
* @brief Touchpad Driver subsystem low level driver.
|
||||
*
|
||||
* @addtogroup TOUCHPAD
|
||||
@ -42,3 +42,4 @@
|
||||
|
||||
#endif /* _TOUCHPAD_LLD_CONFIG_H */
|
||||
/** @} */
|
||||
|
||||
|
@ -19,7 +19,7 @@
|
||||
*/
|
||||
|
||||
/**
|
||||
* @file touchpadXPT2046/touchpad_lld.c
|
||||
* @file drivers/touchpad/XPT2046/touchpad_lld.c
|
||||
* @brief Touchpad Driver subsystem low level driver source.
|
||||
*
|
||||
* @addtogroup TOUCHPAD
|
||||
|
@ -19,7 +19,7 @@
|
||||
*/
|
||||
|
||||
/**
|
||||
* @file touchpadXPT2046/touchpad_lld_config.h
|
||||
* @file drivers/touchpad/XPT2046/touchpad_lld_config.h
|
||||
* @brief Touchppad Driver subsystem low level driver.
|
||||
*
|
||||
* @addtogroup TOUCHPAD
|
||||
@ -42,3 +42,4 @@
|
||||
|
||||
#endif /* _TOUCHPAD_LLD_CONFIG_H */
|
||||
/** @} */
|
||||
|
||||
|
@ -1,560 +0,0 @@
|
||||
/*
|
||||
ChibiOS/RT - Copyright (C) 2012
|
||||
Joel Bodenmann aka Tectu <joel@unormal.org>
|
||||
|
||||
This file is part of ChibiOS/GFX.
|
||||
|
||||
ChibiOS/GFX is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ChibiOS/GFX is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @file templates/gdisp_lld.c
|
||||
* @brief GDISP Graphics Driver subsystem low level driver source template.
|
||||
*
|
||||
* @addtogroup GDISP
|
||||
* @{
|
||||
*/
|
||||
|
||||
#include "ch.h"
|
||||
#include "hal.h"
|
||||
#include "gdisp.h"
|
||||
|
||||
#if GFX_USE_GDISP || defined(__DOXYGEN__)
|
||||
|
||||
/* Include the emulation code for things we don't support */
|
||||
#include "gdisp_emulation.c"
|
||||
|
||||
#if GDISP_NEED_TEXT && GDISP_HARDWARE_TEXT
|
||||
#include "gdisp_fonts.h"
|
||||
#endif
|
||||
|
||||
/* All the board specific code should go in these include file so the driver
|
||||
* can be ported to another board just by creating a suitable file.
|
||||
*/
|
||||
#if defined(BOARD_YOURBOARDNAME)
|
||||
#include "gdisp_lld_board_yourboardname.h"
|
||||
#else
|
||||
/* Include the user supplied board definitions */
|
||||
#include "gdisp_lld_board.h"
|
||||
#endif
|
||||
|
||||
/*===========================================================================*/
|
||||
/* Driver interrupt handlers. */
|
||||
/*===========================================================================*/
|
||||
|
||||
/*===========================================================================*/
|
||||
/* Driver exported functions. */
|
||||
/*===========================================================================*/
|
||||
|
||||
/* ---- Required Routines ---- */
|
||||
/*
|
||||
The following 2 routines are required.
|
||||
All other routines are optional.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @brief Low level GDISP driver initialisation.
|
||||
* @return TRUE if successful, FALSE on error.
|
||||
*
|
||||
* @notapi
|
||||
*/
|
||||
bool_t GDISP_LLD(init)(void) {
|
||||
/* Initialise your display */
|
||||
|
||||
/* Initialise the GDISP structure to match */
|
||||
GDISP.Width = GDISP_SCREEN_WIDTH;
|
||||
GDISP.Height = GDISP_SCREEN_HEIGHT;
|
||||
GDISP.Orientation = GDISP_ROTATE_0;
|
||||
GDISP.Powermode = powerOn;
|
||||
GDISP.Backlight = 100;
|
||||
GDISP.Contrast = 50;
|
||||
#if GDISP_NEED_VALIDATION || GDISP_NEED_CLIP
|
||||
GDISP.clipx0 = 0;
|
||||
GDISP.clipy0 = 0;
|
||||
GDISP.clipx1 = GDISP.Width;
|
||||
GDISP.clipy1 = GDISP.Height;
|
||||
#endif
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Draws a pixel on the display.
|
||||
*
|
||||
* @param[in] x X location of the pixel
|
||||
* @param[in] y Y location of the pixel
|
||||
* @param[in] color The color of the pixel
|
||||
*
|
||||
* @notapi
|
||||
*/
|
||||
void GDISP_LLD(drawpixel)(coord_t x, coord_t y, color_t color) {
|
||||
#if GDISP_NEED_VALIDATION || GDISP_NEED_CLIP
|
||||
if (x < GDISP.clipx0 || y < GDISP.clipy0 || x >= GDISP.clipx1 || y >= GDISP.clipy1) return;
|
||||
#endif
|
||||
/* Code here */
|
||||
}
|
||||
|
||||
/* ---- Optional Routines ---- */
|
||||
/*
|
||||
All the below routines are optional.
|
||||
Defining them will increase speed but everything
|
||||
will work if they are not defined.
|
||||
If you are not using a routine - turn it off using
|
||||
the appropriate GDISP_HARDWARE_XXXX macro.
|
||||
Don't bother coding for obvious similar routines if
|
||||
there is no performance penalty as the emulation software
|
||||
makes a good job of using similar routines.
|
||||
eg. If fillarea() is defined there is little
|
||||
point in defining clear() unless the
|
||||
performance bonus is significant.
|
||||
For good performance it is suggested to implement
|
||||
fillarea() and blitarea().
|
||||
*/
|
||||
|
||||
#if GDISP_HARDWARE_CLEARS || defined(__DOXYGEN__)
|
||||
/**
|
||||
* @brief Clear the display.
|
||||
* @note Optional - The high level driver can emulate using software.
|
||||
*
|
||||
* @param[in] color The color of the pixel
|
||||
*
|
||||
* @notapi
|
||||
*/
|
||||
void GDISP_LLD(clear)(color_t color) {
|
||||
/* Code here */
|
||||
}
|
||||
#endif
|
||||
|
||||
#if GDISP_HARDWARE_LINES || defined(__DOXYGEN__)
|
||||
/**
|
||||
* @brief Draw a line.
|
||||
* @note Optional - The high level driver can emulate using software.
|
||||
*
|
||||
* @param[in] x0, y0 The start of the line
|
||||
* @param[in] x1, y1 The end of the line
|
||||
* @param[in] color The color of the line
|
||||
*
|
||||
* @notapi
|
||||
*/
|
||||
void GDISP_LLD(drawline)(coord_t x0, coord_t y0, coord_t x1, coord_t y1, color_t color) {
|
||||
#if GDISP_NEED_VALIDATION || GDISP_NEED_CLIP
|
||||
/* Code here */
|
||||
#endif
|
||||
/* Code here */
|
||||
}
|
||||
#endif
|
||||
|
||||
#if GDISP_HARDWARE_FILLS || defined(__DOXYGEN__)
|
||||
/**
|
||||
* @brief Fill an area with a color.
|
||||
* @note Optional - The high level driver can emulate using software.
|
||||
*
|
||||
* @param[in] x, y The start filled area
|
||||
* @param[in] cx, cy The width and height to be filled
|
||||
* @param[in] color The color of the fill
|
||||
*
|
||||
* @notapi
|
||||
*/
|
||||
void GDISP_LLD(fillarea)(coord_t x, coord_t y, coord_t cx, coord_t cy, color_t color) {
|
||||
#if GDISP_NEED_VALIDATION || GDISP_NEED_CLIP
|
||||
if (x < GDISP.clipx0) { cx -= GDISP.clipx0 - x; x = GDISP.clipx0; }
|
||||
if (y < GDISP.clipy0) { cy -= GDISP.clipy0 - y; y = GDISP.clipy0; }
|
||||
if (cx <= 0 || cy <= 0 || x >= GDISP.clipx1 || y >= GDISP.clipy1) return;
|
||||
if (x+cx > GDISP.clipx1) cx = GDISP.clipx1 - x;
|
||||
if (y+cy > GDISP.clipy1) cy = GDISP.clipy1 - y;
|
||||
#endif
|
||||
/* Code here */
|
||||
}
|
||||
#endif
|
||||
|
||||
#if GDISP_HARDWARE_BITFILLS || defined(__DOXYGEN__)
|
||||
/**
|
||||
* @brief Fill an area with a bitmap.
|
||||
* @note Optional - The high level driver can emulate using software.
|
||||
*
|
||||
* @param[in] x, y The start filled area
|
||||
* @param[in] cx, cy The width and height to be filled
|
||||
* @param[in] srcx, srcy The bitmap position to start the fill from
|
||||
* @param[in] srccx The width of a line in the bitmap.
|
||||
* @param[in] buffer The pixels to use to fill the area.
|
||||
*
|
||||
* @notapi
|
||||
*/
|
||||
void GDISP_LLD(blitareaex)(coord_t x, coord_t y, coord_t cx, coord_t cy, coord_t srcx, coord_t srcy, coord_t srccx, const pixel_t *buffer) {
|
||||
#if GDISP_NEED_VALIDATION || GDISP_NEED_CLIP
|
||||
if (x < GDISP.clipx0) { cx -= GDISP.clipx0 - x; srcx += GDISP.clipx0 - x; x = GDISP.clipx0; }
|
||||
if (y < GDISP.clipy0) { cy -= GDISP.clipy0 - y; srcy += GDISP.clipy0 - y; y = GDISP.clipy0; }
|
||||
if (srcx+cx > srccx) cx = srccx - srcx;
|
||||
if (cx <= 0 || cy <= 0 || x >= GDISP.clipx1 || y >= GDISP.clipy1) return;
|
||||
if (x+cx > GDISP.clipx1) cx = GDISP.clipx1 - x;
|
||||
if (y+cy > GDISP.clipy1) cy = GDISP.clipy1 - y;
|
||||
#endif
|
||||
/* Code here */
|
||||
}
|
||||
#endif
|
||||
|
||||
/* Circular Drawing Functions */
|
||||
#if (GDISP_NEED_CIRCLE && GDISP_HARDWARE_CIRCLES) || defined(__DOXYGEN__)
|
||||
/**
|
||||
* @brief Draw a circle.
|
||||
* @note Optional - The high level driver can emulate using software.
|
||||
* @note If GDISP_NEED_CLIPPING is defined this routine MUST behave
|
||||
* correctly if the circle is over the edges of the screen.
|
||||
*
|
||||
* @param[in] x, y The centre of the circle
|
||||
* @param[in] radius The radius of the circle
|
||||
* @param[in] color The color of the circle
|
||||
*
|
||||
* @notapi
|
||||
*/
|
||||
void GDISP_LLD(drawcircle)(coord_t x, coord_t y, coord_t radius, color_t color) {
|
||||
#if GDISP_NEED_VALIDATION || GDISP_NEED_CLIP
|
||||
/* Code here */
|
||||
#endif
|
||||
/* Code here */
|
||||
}
|
||||
#endif
|
||||
|
||||
#if (GDISP_NEED_CIRCLE && GDISP_HARDWARE_CIRCLEFILLS) || defined(__DOXYGEN__)
|
||||
/**
|
||||
* @brief Create a filled circle.
|
||||
* @note Optional - The high level driver can emulate using software.
|
||||
* @note If GDISP_NEED_CLIPPING is defined this routine MUST behave
|
||||
* correctly if the circle is over the edges of the screen.
|
||||
*
|
||||
* @param[in] x, y The centre of the circle
|
||||
* @param[in] radius The radius of the circle
|
||||
* @param[in] color The color of the circle
|
||||
*
|
||||
* @notapi
|
||||
*/
|
||||
void GDISP_LLD(fillcircle)(coord_t x, coord_t y, coord_t radius, color_t color) {
|
||||
#if GDISP_NEED_VALIDATION || GDISP_NEED_CLIP
|
||||
/* Code here */
|
||||
#endif
|
||||
/* Code here */
|
||||
}
|
||||
#endif
|
||||
|
||||
#if (GDISP_NEED_ELLIPSE && GDISP_HARDWARE_ELLIPSES) || defined(__DOXYGEN__)
|
||||
/**
|
||||
* @brief Draw an ellipse.
|
||||
* @note Optional - The high level driver can emulate using software.
|
||||
* @note If GDISP_NEED_CLIPPING is defined this routine MUST behave
|
||||
* correctly if the ellipse is over the edges of the screen.
|
||||
*
|
||||
* @param[in] x, y The centre of the ellipse
|
||||
* @param[in] a, b The dimensions of the ellipse
|
||||
* @param[in] color The color of the ellipse
|
||||
*
|
||||
* @notapi
|
||||
*/
|
||||
void GDISP_LLD(drawellipse)(coord_t x, coord_t y, coord_t a, coord_t b, color_t color) {
|
||||
#if GDISP_NEED_VALIDATION || GDISP_NEED_CLIP
|
||||
/* Code here */
|
||||
#endif
|
||||
/* Code here */
|
||||
}
|
||||
#endif
|
||||
|
||||
#if (GDISP_NEED_ELLIPSE && GDISP_HARDWARE_ELLIPSEFILLS) || defined(__DOXYGEN__)
|
||||
/**
|
||||
* @brief Create a filled ellipse.
|
||||
* @note Optional - The high level driver can emulate using software.
|
||||
* @note If GDISP_NEED_CLIPPING is defined this routine MUST behave
|
||||
* correctly if the ellipse is over the edges of the screen.
|
||||
*
|
||||
* @param[in] x, y The centre of the ellipse
|
||||
* @param[in] a, b The dimensions of the ellipse
|
||||
* @param[in] color The color of the ellipse
|
||||
*
|
||||
* @notapi
|
||||
*/
|
||||
void GDISP_LLD(fillellipse)(coord_t x, coord_t y, coord_t a, coord_t b, color_t color) {
|
||||
#if GDISP_NEED_VALIDATION || GDISP_NEED_CLIP
|
||||
/* Code here */
|
||||
#endif
|
||||
/* Code here */
|
||||
}
|
||||
#endif
|
||||
|
||||
/* Arc Drawing Functions */
|
||||
#if (GDISP_NEED_ARC && GDISP_HARDWARE_ARCS) || defined(__DOXYGEN__)
|
||||
/**
|
||||
* @brief Draw an arc.
|
||||
* @note Optional - The high level driver can emulate using software.
|
||||
* @note If GDISP_NEED_CLIPPING is defined this routine MUST behave
|
||||
* correctly if the circle is over the edges of the screen.
|
||||
*
|
||||
* @param[in] x, y The centre of the arc circle
|
||||
* @param[in] radius The radius of the arc circle
|
||||
* @param[in] startangle, endangle The start and end angles for the arc (0..359)
|
||||
* @param[in] color The color of the circle
|
||||
*
|
||||
* @notapi
|
||||
*/
|
||||
void GDISP_LLD(drawarc)(coord_t x, coord_t y, coord_t radius, coord_t startangle, coord_t endangle, color_t color) {
|
||||
#if GDISP_NEED_VALIDATION || GDISP_NEED_CLIP
|
||||
/* Code here */
|
||||
#endif
|
||||
/* Code here */
|
||||
}
|
||||
#endif
|
||||
|
||||
#if (GDISP_NEED_ARC && GDISP_HARDWARE_ARCFILLS) || defined(__DOXYGEN__)
|
||||
/**
|
||||
* @brief Create a filled arc.
|
||||
* @note Optional - The high level driver can emulate using software.
|
||||
* @note If GDISP_NEED_CLIPPING is defined this routine MUST behave
|
||||
* correctly if the circle is over the edges of the screen.
|
||||
*
|
||||
* @param[in] x, y The centre of the arc circle
|
||||
* @param[in] radius The radius of the arc circle
|
||||
* @param[in] startangle, endangle The start and end angles for the arc (0..359)
|
||||
* @param[in] color The color of the circle
|
||||
*
|
||||
* @notapi
|
||||
*/
|
||||
void GDISP_LLD(fillarc)(coord_t x, coord_t y, coord_t radius, coord_t startangle, coord_t endangle, color_t color) {
|
||||
#if GDISP_NEED_VALIDATION || GDISP_NEED_CLIP
|
||||
/* Code here */
|
||||
#endif
|
||||
/* Code here */
|
||||
}
|
||||
#endif
|
||||
|
||||
#if (GDISP_NEED_TEXT && GDISP_HARDWARE_TEXT) || defined(__DOXYGEN__)
|
||||
/**
|
||||
* @brief Draw a character using a transparent background.
|
||||
* @note Optional - The high level driver can emulate using software.
|
||||
*
|
||||
* @param[in] x, y The top-left corner of the text
|
||||
* @param[in] c The character to print
|
||||
* @param[in] font The font to use
|
||||
* @param[in] color The color of the character
|
||||
*
|
||||
* @notapi
|
||||
*/
|
||||
void GDISP_LLD(drawchar)(coord_t x, coord_t y, char c, font_t font, color_t color) {
|
||||
#if GDISP_NEED_VALIDATION || GDISP_NEED_CLIP
|
||||
/* Code here */
|
||||
#endif
|
||||
/* Code here */
|
||||
}
|
||||
#endif
|
||||
|
||||
#if (GDISP_NEED_TEXT && GDISP_HARDWARE_TEXTFILLS) || defined(__DOXYGEN__)
|
||||
/**
|
||||
* @brief Draw a character using a filled background.
|
||||
* @note Optional - The high level driver can emulate using software.
|
||||
*
|
||||
* @param[in] x, y The top-left corner of the text
|
||||
* @param[in] c The character to print
|
||||
* @param[in] font The font to use
|
||||
* @param[in] color The color of the character
|
||||
* @param[in] bgcolor The background color
|
||||
*
|
||||
* @notapi
|
||||
*/
|
||||
void GDISP_LLD(fillchar)(coord_t x, coord_t y, char c, font_t font, color_t color, color_t bgcolor) {
|
||||
#if GDISP_NEED_VALIDATION || GDISP_NEED_CLIP
|
||||
/* Code here */
|
||||
#endif
|
||||
/* Code here */
|
||||
}
|
||||
#endif
|
||||
|
||||
#if (GDISP_NEED_PIXELREAD && GDISP_HARDWARE_PIXELREAD) || defined(__DOXYGEN__)
|
||||
/**
|
||||
* @brief Get the color of a particular pixel.
|
||||
* @note Optional.
|
||||
* @note If x,y is off the screen, the result is undefined.
|
||||
* @return The color of the specified pixel.
|
||||
*
|
||||
* @param[in] x, y The start of the text
|
||||
*
|
||||
* @notapi
|
||||
*/
|
||||
color_t GDISP_LLD(getpixelcolor)(coord_t x, coord_t y) {
|
||||
#if GDISP_NEED_VALIDATION || GDISP_NEED_CLIP
|
||||
if (x < 0 || x >= GDISP.Width || y < 0 || y >= GDISP.Height) return 0;
|
||||
#endif
|
||||
/* Code here */
|
||||
}
|
||||
#endif
|
||||
|
||||
#if (GDISP_NEED_SCROLL && GDISP_HARDWARE_SCROLL) || defined(__DOXYGEN__)
|
||||
/**
|
||||
* @brief Scroll vertically a section of the screen.
|
||||
* @note Optional.
|
||||
* @note If x,y + cx,cy is off the screen, the result is undefined.
|
||||
* @note If lines is >= cy, it is equivelent to a area fill with bgcolor.
|
||||
*
|
||||
* @param[in] x, y The start of the area to be scrolled
|
||||
* @param[in] cx, cy The size of the area to be scrolled
|
||||
* @param[in] lines The number of lines to scroll (Can be positive or negative)
|
||||
* @param[in] bgcolor The color to fill the newly exposed area.
|
||||
*
|
||||
* @notapi
|
||||
*/
|
||||
void GDISP_LLD(verticalscroll)(coord_t x, coord_t y, coord_t cx, coord_t cy, int lines, color_t bgcolor) {
|
||||
#if GDISP_NEED_VALIDATION || GDISP_NEED_CLIP
|
||||
if (x < GDISP.clipx0) { cx -= GDISP.clipx0 - x; x = GDISP.clipx0; }
|
||||
if (y < GDISP.clipy0) { cy -= GDISP.clipy0 - y; y = GDISP.clipy0; }
|
||||
if (!lines || cx <= 0 || cy <= 0 || x >= GDISP.clipx1 || y >= GDISP.clipy1) return;
|
||||
if (x+cx > GDISP.clipx1) cx = GDISP.clipx1 - x;
|
||||
if (y+cy > GDISP.clipy1) cy = GDISP.clipy1 - y;
|
||||
#endif
|
||||
/* Code here */
|
||||
}
|
||||
#endif
|
||||
|
||||
#if (GDISP_NEED_CONTROL && GDISP_HARDWARE_CONTROL) || defined(__DOXYGEN__)
|
||||
/**
|
||||
* @brief Driver Control
|
||||
* @details Unsupported control codes are ignored.
|
||||
* @note The value parameter should always be typecast to (void *).
|
||||
* @note There are some predefined and some specific to the low level driver.
|
||||
* @note GDISP_CONTROL_POWER - Takes a gdisp_powermode_t
|
||||
* GDISP_CONTROL_ORIENTATION - Takes a gdisp_orientation_t
|
||||
* GDISP_CONTROL_BACKLIGHT - Takes an int from 0 to 100. For a driver
|
||||
* that only supports off/on anything other
|
||||
* than zero is on.
|
||||
* GDISP_CONTROL_CONTRAST - Takes an int from 0 to 100.
|
||||
* GDISP_CONTROL_LLD - Low level driver control constants start at
|
||||
* this value.
|
||||
*
|
||||
* @param[in] what What to do.
|
||||
* @param[in] value The value to use (always cast to a void *).
|
||||
*
|
||||
* @notapi
|
||||
*/
|
||||
void GDISP_LLD(control)(unsigned what, void *value) {
|
||||
switch(what) {
|
||||
case GDISP_CONTROL_POWER:
|
||||
if (GDISP.Powermode == (gdisp_powermode_t)value)
|
||||
return;
|
||||
switch((gdisp_powermode_t)value) {
|
||||
case powerOff:
|
||||
/* Code here */
|
||||
break;
|
||||
case powerOn:
|
||||
/* Code here */
|
||||
/* You may need this ---
|
||||
if (GDISP.Powermode != powerSleep)
|
||||
GDISP_LLD(init)();
|
||||
*/
|
||||
break;
|
||||
case powerSleep:
|
||||
/* Code here */
|
||||
break;
|
||||
default:
|
||||
return;
|
||||
}
|
||||
GDISP.Powermode = (gdisp_powermode_t)value;
|
||||
return;
|
||||
case GDISP_CONTROL_ORIENTATION:
|
||||
if (GDISP.Orientation == (gdisp_orientation_t)value)
|
||||
return;
|
||||
switch((gdisp_orientation_t)value) {
|
||||
case GDISP_ROTATE_0:
|
||||
/* Code here */
|
||||
GDISP.Height = GDISP_SCREEN_HEIGHT;
|
||||
GDISP.Width = GDISP_SCREEN_WIDTH;
|
||||
break;
|
||||
case GDISP_ROTATE_90:
|
||||
/* Code here */
|
||||
GDISP.Height = GDISP_SCREEN_WIDTH;
|
||||
GDISP.Width = GDISP_SCREEN_HEIGHT;
|
||||
break;
|
||||
case GDISP_ROTATE_180:
|
||||
/* Code here */
|
||||
GDISP.Height = GDISP_SCREEN_HEIGHT;
|
||||
GDISP.Width = GDISP_SCREEN_WIDTH;
|
||||
break;
|
||||
case GDISP_ROTATE_270:
|
||||
/* Code here */
|
||||
GDISP.Height = GDISP_SCREEN_WIDTH;
|
||||
GDISP.Width = GDISP_SCREEN_HEIGHT;
|
||||
break;
|
||||
default:
|
||||
return;
|
||||
}
|
||||
#if GDISP_NEED_CLIP || GDISP_NEED_VALIDATION
|
||||
GDISP.clipx0 = 0;
|
||||
GDISP.clipy0 = 0;
|
||||
GDISP.clipx1 = GDISP.Width;
|
||||
GDISP.clipy1 = GDISP.Height;
|
||||
#endif
|
||||
GDISP.Orientation = (gdisp_orientation_t)value;
|
||||
return;
|
||||
/*
|
||||
case GDISP_CONTROL_BACKLIGHT:
|
||||
case GDISP_CONTROL_CONTRAST:
|
||||
*/
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
#if (GDISP_NEED_QUERY && GDISP_HARDWARE_QUERY) || defined(__DOXYGEN__)
|
||||
/**
|
||||
* @brief Query a driver value.
|
||||
* @details Typecase the result to the type you want.
|
||||
* @note GDISP_QUERY_WIDTH - (coord_t) Gets the width of the screen
|
||||
* GDISP_QUERY_HEIGHT - (coord_t) Gets the height of the screen
|
||||
* GDISP_QUERY_POWER - (gdisp_powermode_t) Get the current powermode
|
||||
* GDISP_QUERY_ORIENTATION - (gdisp_orientation_t) Get the current screen orientation
|
||||
* GDISP_QUERY_BACKLIGHT - (coord_t) Get the backlight state (0 to 100)
|
||||
* GDISP_QUERY_CONTRAST - (coord_t) Get the contrast (0 to 100).
|
||||
* GDISP_QUERY_LLD - Low level driver control constants start at
|
||||
* this value.
|
||||
*
|
||||
* @param[in] what What to Query
|
||||
*
|
||||
* @notapi
|
||||
*/
|
||||
void *GDISP_LLD(query)(unsigned what) {
|
||||
switch(what) {
|
||||
case GDISP_QUERY_WIDTH: return (void *)(unsigned)GDISP.Width;
|
||||
case GDISP_QUERY_HEIGHT: return (void *)(unsigned)GDISP.Height;
|
||||
case GDISP_QUERY_POWER: return (void *)(unsigned)GDISP.Powermode;
|
||||
case GDISP_QUERY_ORIENTATION: return (void *)(unsigned)GDISP.Orientation;
|
||||
case GDISP_QUERY_BACKLIGHT: return (void *)(unsigned)GDISP.Backlight;
|
||||
case GDISP_QUERY_CONTRAST: return (void *)(unsigned)GDISP.Contrast;
|
||||
case GDISP_QUERY_LLD+0:
|
||||
/* Code here */
|
||||
default: return (void *)-1;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
#if GDISP_NEED_CLIP && GDISP_HARDWARE_CLIP
|
||||
void GDISP_LLD(setclip)(coord_t x, coord_t y, coord_t cx, coord_t cy) {
|
||||
#if GDISP_NEED_VALIDATION
|
||||
if (x >= GDISP.Width || y >= GDISP.Height || cx < 0 || cy < 0)
|
||||
return;
|
||||
if (x < 0) x = 0;
|
||||
if (y < 0) y = 0;
|
||||
if (x+cx > GDISP.Width) cx = GDISP.Width - x;
|
||||
if (y+cy > GDISP.Height) cy = GDISP.Height - y;
|
||||
#endif
|
||||
GDISP.clipx0 = x;
|
||||
GDISP.clipy0 = y;
|
||||
GDISP.clipx1 = x+cx;
|
||||
GDISP.clipy1 = y+cy;
|
||||
/* Code here to set hardware clipping */
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* GFX_USE_GDISP */
|
||||
/** @} */
|
@ -1,5 +0,0 @@
|
||||
# List the required driver.
|
||||
GFXSRC += $(GFXLIB)/drivers/gdisp/gdispYOURDEVICE/gdisp_lld.c
|
||||
|
||||
# Required include directories
|
||||
GFXINC += $(GFXLIB)/drivers/gdisp/gdispYOURDEVICE
|
@ -1,69 +0,0 @@
|
||||
/*
|
||||
ChibiOS/RT - Copyright (C) 2012
|
||||
Joel Bodenmann aka Tectu <joel@unormal.org>
|
||||
|
||||
This file is part of ChibiOS/GFX.
|
||||
|
||||
ChibiOS/GFX is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ChibiOS/GFX is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @file templates/gdisp_lld_config.h
|
||||
* @brief GDISP Graphic Driver subsystem low level driver header template.
|
||||
*
|
||||
* @addtogroup GDISP
|
||||
* @{
|
||||
*/
|
||||
|
||||
#ifndef _GDISP_LLD_CONFIG_H
|
||||
#define _GDISP_LLD_CONFIG_H
|
||||
|
||||
#if GFX_USE_GDISP || defined(__DOXYGEN__)
|
||||
|
||||
/*===========================================================================*/
|
||||
/* Driver hardware support. */
|
||||
/*===========================================================================*/
|
||||
|
||||
#define GDISP_DRIVER_NAME "YourDriverName"
|
||||
#define GDISP_LLD(x) gdisp_lld_##x##_YourDriverName
|
||||
|
||||
#define GDISP_HARDWARE_LINES FALSE
|
||||
#define GDISP_HARDWARE_CLEARS FALSE
|
||||
#define GDISP_HARDWARE_FILLS FALSE
|
||||
#define GDISP_HARDWARE_BITFILLS FALSE
|
||||
#define GDISP_HARDWARE_CIRCLES FALSE
|
||||
#define GDISP_HARDWARE_CIRCLEFILLS FALSE
|
||||
#define GDISP_HARDWARE_ELLIPSES FALSE
|
||||
#define GDISP_HARDWARE_ELLIPSEFILLS FALSE
|
||||
#define GDISP_HARDWARE_ARCS FALSE
|
||||
#define GDISP_HARDWARE_ARCFILLS FALSE
|
||||
#define GDISP_HARDWARE_TEXT FALSE
|
||||
#define GDISP_HARDWARE_TEXTFILLS FALSE
|
||||
#define GDISP_HARDWARE_SCROLL FALSE
|
||||
#define GDISP_HARDWARE_PIXELREAD FALSE
|
||||
#define GDISP_HARDWARE_CONTROL FALSE
|
||||
#define GDISP_HARDWARE_QUERY FALSE
|
||||
#define GDISP_HARDWARE_CLIP FALSE
|
||||
|
||||
#define GDISP_SOFTWARE_TEXTFILLDRAW FALSE
|
||||
#define GDISP_SOFTWARE_TEXTBLITCOLUMN FALSE
|
||||
|
||||
#define GDISP_PIXELFORMAT GDISP_PIXELFORMAT_RGB565
|
||||
#define GDISP_PACKED_PIXELS FALSE
|
||||
#define GDISP_PACKED_LINES FALSE
|
||||
|
||||
#endif /* GFX_USE_GDISP */
|
||||
|
||||
#endif /* _GDISP_LLD_CONFIG_H */
|
||||
/** @} */
|
@ -1,35 +0,0 @@
|
||||
To use this driver template
|
||||
1. Copy this entire directory (including the directory itself)
|
||||
into halext/drivers
|
||||
2. Rename the directory to match your hardware.
|
||||
3. Customise each file in the directory including the .mk file
|
||||
and this file. An example for this file is below...
|
||||
4. Keep any board specific code in a file you create called
|
||||
gdisp_lld_board_yourboardname.h and adjust gdisp.c to match.
|
||||
This enables someone porting to a new board to add another
|
||||
suitable boad definition without worrying about the rest of
|
||||
the driver. See the gdispNokia6610 driver as an example.
|
||||
|
||||
------------------------------------------------------------------
|
||||
To use this driver:
|
||||
|
||||
1. Add in your halconf.h:
|
||||
a) #define GFX_USE_GDISP TRUE
|
||||
b) Any optional high level driver defines (see gdisp.h) eg: GDISP_NEED_MULTITHREAD
|
||||
c) One (only) of:
|
||||
#define GDISP_USE_GPIO
|
||||
#define GDISP_USE_SPI
|
||||
#define GDISP_USE_FSMC
|
||||
d) All of the following (with appropriate values):
|
||||
#define GDISP_SCREEN_WIDTH 128
|
||||
#define GDISP_SCREEN_HEIGHT 128
|
||||
e) If you are not using a known board then create a gdisp_lld_board.h file
|
||||
and ensure it is on your include path.
|
||||
Use the gdisp_lld_board_example.h file as a basis.
|
||||
Currently known boards are:
|
||||
XXXXXXXXX
|
||||
|
||||
|
||||
2. To your makefile add the following lines:
|
||||
include $(CHIBIOS)/os/halext/halext.mk
|
||||
include $(CHIBIOS)/os/halext/drivers/gdispXXXXX/gdisp_lld.mk
|
@ -1,9 +1,9 @@
|
||||
The following low level driver templates are available:
|
||||
|
||||
GDISP:
|
||||
gdispXXXXX - Generalised GDISP driver
|
||||
gdispXXX - Generalised GDISP driver
|
||||
|
||||
TOUCHPAD:
|
||||
touchpadXXXXX - Generalised TOUCHPAD driver
|
||||
touchpadXXX - Generalised TOUCHPAD driver
|
||||
|
||||
|
||||
|
@ -1,151 +0,0 @@
|
||||
/*
|
||||
ChibiOS/GFX - Copyright (C) 2012
|
||||
Joel Bodenmann aka Tectu <joel@unormal.org>
|
||||
|
||||
This file is part of ChibiOS/GFX.
|
||||
|
||||
ChibiOS/GFX is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ChibiOS/GFX is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @file touchpadXPT2046/touchpad_lld.c
|
||||
* @brief Touchpad Driver subsystem low level driver source.
|
||||
*
|
||||
* @addtogroup TOUCHPAD
|
||||
* @{
|
||||
*/
|
||||
|
||||
#include "ch.h"
|
||||
#include "hal.h"
|
||||
#include "touchpad.h"
|
||||
|
||||
#if GFX_USE_TOUCHPAD || defined(__DOXYGEN__)
|
||||
|
||||
/*===========================================================================*/
|
||||
/* Driver local definitions. */
|
||||
/*===========================================================================*/
|
||||
|
||||
/* put needed macros for your interface/driver here.
|
||||
* when using SPI, macros for setting and clearing CS line
|
||||
*/
|
||||
#define TP_CS_HIGH palSetPad(TP_CS_PORT, TP_CS)
|
||||
#define TP_CS_LOW palClearPad(TP_CS_PORT, TP_CS)
|
||||
|
||||
/*===========================================================================*/
|
||||
/* Driver exported variables. */
|
||||
/*===========================================================================*/
|
||||
|
||||
#if !defined(__DOXYGEN__)
|
||||
TOUCHPADDriver Touchpad;
|
||||
#endif
|
||||
|
||||
/*===========================================================================*/
|
||||
/* Driver local variables. */
|
||||
/*===========================================================================*/
|
||||
|
||||
/*===========================================================================*/
|
||||
/* Driver local functions. */
|
||||
/*===========================================================================*/
|
||||
|
||||
/*===========================================================================*/
|
||||
/* Driver interrupt handlers. */
|
||||
/*===========================================================================*/
|
||||
|
||||
/*===========================================================================*/
|
||||
/* Driver exported functions. */
|
||||
/*===========================================================================*/
|
||||
|
||||
/* ---- Required Routines ---- */
|
||||
|
||||
/**
|
||||
* @brief Low level Touchpad driver initialization.
|
||||
*
|
||||
* @param[in] tp The touchpad driver struct
|
||||
*
|
||||
* @notapi
|
||||
*/
|
||||
void tp_lld_init(TOUCHPADDriver *tp) {
|
||||
/* do communicate with the touchpad controller
|
||||
* to do any inizialisation (mostly spiStart())
|
||||
*/
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Reads out the X direction.
|
||||
*
|
||||
* @return The uncalibrated X coordinate
|
||||
*
|
||||
* @notapi
|
||||
*/
|
||||
uint16_t tp_lld_read_x(void) {
|
||||
uint16_t x;
|
||||
|
||||
/* do communicate with the touchpad controller
|
||||
* to receive the X-Coordinate
|
||||
*/
|
||||
x = 0;
|
||||
|
||||
return x;
|
||||
}
|
||||
|
||||
/*
|
||||
* @brief Reads out the Y direction.
|
||||
*
|
||||
* @return The uncalibrated Y coordinate
|
||||
*
|
||||
* @notapi
|
||||
*/
|
||||
uint16_t tp_lld_read_y(void) {
|
||||
uint16_t y;
|
||||
|
||||
/* do communicate with the touchpad controller
|
||||
* to receive the Y-Coordinate
|
||||
*/
|
||||
y = 0;
|
||||
|
||||
return y;
|
||||
}
|
||||
|
||||
/* ---- Optional Routines ---- */
|
||||
#if TOUCHPAD_HAS_IRQ || defined(__DOXYGEN__)
|
||||
/*
|
||||
* @brief for checking if touchpad is pressed or not.
|
||||
*
|
||||
* @return 1 if pressed / 0 if not pressed
|
||||
*
|
||||
* @notapi
|
||||
*/
|
||||
uint8_t tp_lld_irq(void) {
|
||||
/* do return PEN IRQ state if your
|
||||
* touchpad controller does have any
|
||||
*/
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
|
||||
#if TOUCHPAD_HAS_PRESSURE || defined(__DOXYGEN__)
|
||||
/*
|
||||
* @brief Reads out the Z direction / pressure.
|
||||
*
|
||||
* @notapi
|
||||
*/
|
||||
uint16_t tp_lld_read_z(void) {
|
||||
/* return the pressure */
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* GFX_USE_TOUCHPAD */
|
||||
/** @} */
|
||||
|
@ -1,6 +0,0 @@
|
||||
# List the required driver.
|
||||
GFXSRC += $(GFXLIB)/drivers/touchpad/touchpadYOURDEVICE/touchpad_lld.c
|
||||
|
||||
# Required include directories
|
||||
GFXINC += $(GFXLIB)/drivers/touchpad/touchpadYOURDEVICE
|
||||
|
@ -1,45 +0,0 @@
|
||||
/*
|
||||
ChibiOS/GFX - Copyright (C) 2012
|
||||
Joel Bodenmann aka Tectu <joel@unormal.org>
|
||||
|
||||
This file is part of ChibiOS/GFX.
|
||||
|
||||
ChibiOS/GFX is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ChibiOS/GFX is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @file touchpadXPT2046/touchpad_lld_config.h
|
||||
* @brief Touchppad Driver subsystem low level driver.
|
||||
*
|
||||
* @addtogroup TOUCHPAD
|
||||
* @{
|
||||
*/
|
||||
|
||||
#ifndef _TOUCHPAD_LLD_CONFIG_H
|
||||
#define _TOUCHPAD_LLD_CONFIG_H
|
||||
|
||||
#if GFX_USE_TOUCHPAD || defined(__DOXYGEN__)
|
||||
|
||||
/*===========================================================================*/
|
||||
/* Driver hardware support. */
|
||||
/*===========================================================================*/
|
||||
|
||||
#define TOUCHPAD_HAS_IRQ TRUE
|
||||
#define TOUCHPAD_HAS_PRESSURE TRUE
|
||||
|
||||
#endif /* GFX_USE_TOUCHPAD */
|
||||
|
||||
#endif /* _TOUCHPAD_LLD_CONFIG_H */
|
||||
/** @} */
|
||||
|
Loading…
Reference in New Issue
Block a user