Update documentation and add the mouse scroll functions

This commit is contained in:
Bradlee Speice 2012-07-18 10:01:00 -04:00
parent fe3a6e8515
commit 82dbc8020c
6 changed files with 50 additions and 4 deletions

View File

@ -53,6 +53,8 @@ CvPoint matchSubImage_X11_location_center( Display *displayLocation, const char
* \details Currently this function literally just passes off to XOpenDisplay, but is designed to be used in the future if extra functionality is needed.
* \param displayName The name of the display to open - '' is a valid name
* \returns Pointer to the opened X11 Display
* \warning You must open a display to use any functions.
* \warning The program using this library is responsible to close the display as well.
*/
/** \fn void cvaCloseDisplay ( Display *displayLocation );

View File

@ -449,6 +449,7 @@ Input a string of text to the X11 server. For example, inputting 'Hello, world!"
* \brief Check if the XTest extension is supported
* \param displayLocation The Display to check if XTest is supported on
* \returns True if XTest is supported, False otherwise
* \warning The program using this library is responsible for checking to see if XTest is supported.
*/
/** \fn cvaPoint xte_pointerLocation ( Display *displayLocation );
@ -606,6 +607,18 @@ Input a string of text to the X11 server. For example, inputting 'Hello, world!"
* \param displayLocation The Display of which to move the mouse
*/
/** \fn void xte_mouseScrollUp ( Display *displayLocation );
* \brief Scroll the mouse up
* \details This moves the mouse scroll wheel up one rotation, which may be multiple lines. What this really does is click mouse button 4.
* \param displayLocation The Display of which to scroll the mouse
*/
/** \fn void void xte_mouseScrollDown ( Display *displayLocation );
* \brief Scroll the mouse down
* \details This moves the mouse scroll wheel down one rotation, which may be multiple lines. What this really does is click mouse button 5.
* \param displayLocation The Display of which to scroll the mouse
*/
/** \fn void xte_clickKey ( Display *displayLocation, char *key );
* \brief Press and release a keyboard key
* \details This method allows you to press and release a key, where the key may be \c 'a', \c 'b', or maybe something fancy like \c 'space'. Please see \ref XTest_key_strings for a full list of keys.

View File

@ -76,10 +76,10 @@ typedef struct {
* \section how_it_works How Libcvautomation Works
* Libcvautomation represents two software products coming together - <a href="http://opencv.willowgarage.com/wiki/">OpenCV</a> and the <a href="http://www.x.org/docs/Xext/xtest.pdf">XTest extension</a> to the X11 server. OpenCV is used for image recognition, and XTest is used to actually drive the X server. You can dig into \ref libcvautomation-xtest.h to get an idea of what all this library is capable of. <br>
* Basically what happens is that for whenever you need to do image recognition, OpenCV is used to find the images, and XTest is used to generate any events needed. Libcvautomation is mostly a wrapper to integrate both of these products, but also adds some functions like matchSubImage_X11() that allow you to match an image against the X11 root window in place. This means no more <tt>'xwd | convert "<out_name>"'</tt>.
* \section using Using Libcvautomation
* \section using Jump in - Using Libcvautomation
* So how does one go about using libcvautomation? <br>
* I'm so glad you asked! I've provided a few reference programs - \c cva-match and \c cva-input - that can be used to demonstrate most of libcvautomation's capabilities. I've even provided a BASH wrapper to make it incredibly easy to use BASH with libcvautomation as well (requires that cva-match and cva-input are installed). Python bindings are on their way too. <br>
* Finally, if you want to know how to write your own application tests, please see \ref writing_app_tests for more information on that.
* Finally, if you want to know how to write your own application tests, please see \ref writing_app_tests for more information on that. I've provided code to give you a good idea of how they work.
* \section questions Questions? Comments? Concerns?
* Please send any feedback to <<a href="mailto:bspeice@uncc.edu">bspeice@uncc.edu</a>>. Pull requests can be submitted to <a href="https://github.com/DjBushido/cvautomation">my github repository</a>.*/
@ -375,6 +375,14 @@ typedef struct {
* Check if a program name or PID is currently running
*/
/** \def LIBCVAUTOMATION_VERSION
* \brief Define what version of Libcvautomation we are using
* \details This define provides access to what version of Libcvautomation we're using. All times that you need to know what it is should use this.
*/
/** \def LIBCVAUTOMATION_BUGREPORT
* \brief Define who to send bug reports to for Libcvautomation
* \details This define provides access to who should be emailed in case of a Libcvautomation bug. All times that you need to know what it is should use this.*/
/** \struct cvautomationList
* \brief Implements a structure to build an array for methods like matchSubImage_a()
* \details This structure is a simple way to wrap up all needed information for matching sub images in one location.

View File

@ -53,6 +53,8 @@ CvPoint matchSubImage_X11_location_center( Display *displayLocation, const char
* \details Currently this function literally just passes off to XOpenDisplay, but is designed to be used in the future if extra functionality is needed.
* \param displayName The name of the display to open - '' is a valid name
* \returns Pointer to the opened X11 Display
* \warning You must open a display to use any functions.
* \warning The program using this library is responsible to close the display as well.
*/
/** \fn void cvaCloseDisplay ( Display *displayLocation );

View File

@ -449,6 +449,7 @@ Input a string of text to the X11 server. For example, inputting 'Hello, world!"
* \brief Check if the XTest extension is supported
* \param displayLocation The Display to check if XTest is supported on
* \returns True if XTest is supported, False otherwise
* \warning The program using this library is responsible for checking to see if XTest is supported.
*/
/** \fn cvaPoint xte_pointerLocation ( Display *displayLocation );
@ -606,6 +607,18 @@ Input a string of text to the X11 server. For example, inputting 'Hello, world!"
* \param displayLocation The Display of which to move the mouse
*/
/** \fn void xte_mouseScrollUp ( Display *displayLocation );
* \brief Scroll the mouse up
* \details This moves the mouse scroll wheel up one rotation, which may be multiple lines. What this really does is click mouse button 4.
* \param displayLocation The Display of which to scroll the mouse
*/
/** \fn void void xte_mouseScrollDown ( Display *displayLocation );
* \brief Scroll the mouse down
* \details This moves the mouse scroll wheel down one rotation, which may be multiple lines. What this really does is click mouse button 5.
* \param displayLocation The Display of which to scroll the mouse
*/
/** \fn void xte_clickKey ( Display *displayLocation, char *key );
* \brief Press and release a keyboard key
* \details This method allows you to press and release a key, where the key may be \c 'a', \c 'b', or maybe something fancy like \c 'space'. Please see \ref XTest_key_strings for a full list of keys.

View File

@ -78,10 +78,10 @@ typedef struct {
* \section how_it_works How Libcvautomation Works
* Libcvautomation represents two software products coming together - <a href="http://opencv.willowgarage.com/wiki/">OpenCV</a> and the <a href="http://www.x.org/docs/Xext/xtest.pdf">XTest extension</a> to the X11 server. OpenCV is used for image recognition, and XTest is used to actually drive the X server. You can dig into \ref libcvautomation-xtest.h to get an idea of what all this library is capable of. <br>
* Basically what happens is that for whenever you need to do image recognition, OpenCV is used to find the images, and XTest is used to generate any events needed. Libcvautomation is mostly a wrapper to integrate both of these products, but also adds some functions like matchSubImage_X11() that allow you to match an image against the X11 root window in place. This means no more <tt>'xwd | convert "<out_name>"'</tt>.
* \section using Using Libcvautomation
* \section using Jump in - Using Libcvautomation
* So how does one go about using libcvautomation? <br>
* I'm so glad you asked! I've provided a few reference programs - \c cva-match and \c cva-input - that can be used to demonstrate most of libcvautomation's capabilities. I've even provided a BASH wrapper to make it incredibly easy to use BASH with libcvautomation as well (requires that cva-match and cva-input are installed). Python bindings are on their way too. <br>
* Finally, if you want to know how to write your own application tests, please see \ref writing_app_tests for more information on that.
* Finally, if you want to know how to write your own application tests, please see \ref writing_app_tests for more information on that. I've provided code to give you a good idea of how they work.
* \section questions Questions? Comments? Concerns?
* Please send any feedback to <<a href="mailto:bspeice@uncc.edu">bspeice@uncc.edu</a>>. Pull requests can be submitted to <a href="https://github.com/DjBushido/cvautomation">my github repository</a>.*/
@ -377,6 +377,14 @@ typedef struct {
* Check if a program name or PID is currently running
*/
/** \def LIBCVAUTOMATION_VERSION
* \brief Define what version of Libcvautomation we are using
* \details This define provides access to what version of Libcvautomation we're using. All times that you need to know what it is should use this.
*/
/** \def LIBCVAUTOMATION_BUGREPORT
* \brief Define who to send bug reports to for Libcvautomation
* \details This define provides access to who should be emailed in case of a Libcvautomation bug. All times that you need to know what it is should use this.*/
/** \struct cvautomationList
* \brief Implements a structure to build an array for methods like matchSubImage_a()
* \details This structure is a simple way to wrap up all needed information for matching sub images in one location.