# directories like "/usr/src/myproject". Separate the files or directories
# with spaces.
-INPUT = ../libtouchmouse/
+INPUT = ../libtouchmouse/ \
+ ../doc/
# This tag can be used to specify the character encoding of the source files
# that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is
# *.hxx *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.dox *.py
# *.f90 *.f *.for *.vhd *.vhdl
-FILE_PATTERNS =
+FILE_PATTERNS = *.h
# The RECURSIVE tag can be used to turn specify whether or not subdirectories
# should be searched for input files as well. Possible values are YES and NO.
# If left blank NO is used.
-RECURSIVE = NO
+RECURSIVE = YES
# The EXCLUDE tag can be used to specify files and/or directories that should
# excluded from the INPUT source files. This way you can easily exclude a
# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will
# generate Latex output.
-GENERATE_LATEX = YES
+GENERATE_LATEX = NO
# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put.
# If a relative path is entered the value of OUTPUT_DIRECTORY will be
--- /dev/null
+/**
+@mainpage libtouchmouse
+@author Drew Fisher (drew.m.fisher@gmail.com)
+
+An open-source, cross-platform driver for the Microsoft TouchMouse
+
+Sources: http://github.com/zarvox/libtouchmouse
+
+@section libtouchmouseIntro Introduction
+
+libtouchmouse is a userspace driver for the Microsoft TouchMouse built on HIDAPI
+(http://www.signal11.us/oss/hidapi/). While the TouchMouse will work as a
+basic mouse on all platforms that implement USB mice through HID, this driver
+is interesting in that it provides access to the device's raw touch image matrix.
+
+@section libtouchmouseUsage Usage
+
+libtouchmouse is properly used in the following manner:
+
+- Initialize the library with touchmouse_init()
+- Enumerate devices with touchmouse_enumerate_devices()
+- Open a device (or multiple devices) with touchmouse_open()
+- Free the device enumeration with touchmouse_free_enumeration()
+- Put the device in full image updates mode with touchmouse_set_device_mode()
+- Set a callback for the device with touchmouse_set_image_update_callback()
+- Repeatedly call touchmouse_process_events_timeout(), which will call your callback function to get image updates. You may wish to do this in a blocking manner in a thread.
+- When done with the device, (optionally) set the device back in default mode with touchmouse_set_device_mode() and close the device with touchmouse_close()
+- Deinitialize the library with touchmouse_shutdown()
+
+See the examples for usage examples that you're free to copy and modify at will.
+
+*/
#define __LIBTOUCHMOUSE_H__
#include <stdint.h>
-// Win32 needs symbols exported.
#ifndef _WIN32
+ /// Win32 needs symbols exported.
#define TOUCHMOUSEAPI
#else
#ifdef __cplusplus
+ /// Win32 needs symbols exported.
#define TOUCHMOUSEAPI extern "C" __declspec(dllexport)
#else
+ /// Win32 needs symbols exported.
#define TOUCHMOUSEAPI __declspec(dllexport)
#endif
#endif