Release version 1.1 Documentation
@ -1,4 +0,0 @@
|
||||
cvautomation
|
||||
============
|
||||
|
||||
Use OpenCV to create a GUI testing framework - replaces Sikuli, Xpresser
|
83
XTest_command_strings.html
Normal file
@ -0,0 +1,83 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>libcvautomation: xte_commandString() Command Strings</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<h1><a class="anchor" name="XTest_command_strings">xte_commandString() Command Strings</a></h1>This page describes the various command strings available for the <a class="el" href="libcvautomation-xtest_8h.html#382af05e5669ea2cbb22608e41cbc49a">xte_commandString()</a> function. <h2><a class="anchor" name="mouseclick">
|
||||
Mouse Click</a></h2>
|
||||
<div class="fragment"><pre class="fragment"> 'mouseclick <button_number>'
|
||||
</pre></div> Click the mouse button <code></code> <button_number> in-place.<h2><a class="anchor" name="imouseclick">
|
||||
Image Mouse Click</a></h2>
|
||||
<div class="fragment"><pre class="fragment"> 'imouseclick <image_name>'
|
||||
</pre></div> Click the mouse at an image's top-left corner.<h2><a class="anchor" name="icmouseclick">
|
||||
Image Mouse Click (Centered)</a></h2>
|
||||
<div class="fragment"><pre class="fragment"> 'icmouseclick <image_name>'
|
||||
</pre></div> Click the mouse at an image's center.<h2><a class="anchor" name="mousexy">
|
||||
Mouse XY Move</a></h2>
|
||||
<div class="fragment"><pre class="fragment"> 'mousexy <x-coord> <y-coord>'
|
||||
</pre></div> Move the mouse to an absolute coordinate. <dl compact><dt><b>Warning:</b></dt><dd>The <code><x-coord></code> and <code><y-coord></code> are expected to be integers.</dd></dl>
|
||||
<h2><a class="anchor" name="mouserxy">
|
||||
Mouse XY Move (Relative)</a></h2>
|
||||
<div class="fragment"><pre class="fragment"> 'mouserxy <x-increment> <y-increment>'
|
||||
</pre></div> Move the mouse by the given x and y values (relative motion). <dl compact><dt><b>A positive X increment will move the mouse to the right, and a positive Y increment will move the mouse down.</b></dt><dd></dd></dl>
|
||||
<dl compact><dt><b>Warning:</b></dt><dd>The <code><x-increment></code> and <code><y-increment></code> are expected to be integers.</dd></dl>
|
||||
<h2><a class="anchor" name="mouseimage">
|
||||
Mouse Image Move</a></h2>
|
||||
<div class="fragment"><pre class="fragment"> 'mouseimage <image_name>'
|
||||
</pre></div> Move the mouse to an image's top-left corner.<h2><a class="anchor" name="cmouseimage">
|
||||
Mouse Image Move (Centered)</a></h2>
|
||||
<div class="fragment"><pre class="fragment"> 'cmouseimage <image_name>'
|
||||
</pre></div> Move the mouse to an image's center.<h2><a class="anchor" name="mousedown">
|
||||
Mouse Button Down</a></h2>
|
||||
<div class="fragment"><pre class="fragment"> 'mousedown <button_number>'
|
||||
</pre></div> Push and leave down a mouse button.<h2><a class="anchor" name="mouseup">
|
||||
Mouse Button Up</a></h2>
|
||||
<div class="fragment"><pre class="fragment"> 'mouseup <button_number>'
|
||||
</pre></div> Release mouse button <code></code> <button_number><h2><a class="anchor" name="mousejiggle">
|
||||
Mouse Jiggle</a></h2>
|
||||
<div class="fragment"><pre class="fragment"> 'mousejiggle'
|
||||
</pre></div> Jiggle the mouse (helps to activate some widgets). Moves the mouse right and down 1 pixel, and then back.<h2><a class="anchor" name="mousescrolld">
|
||||
Mouse Scroll Down</a></h2>
|
||||
<div class="fragment"><pre class="fragment"> 'mousescrolld'
|
||||
</pre></div> Scroll the mouse down 1 time - depending on window manager settings, etc., this may be multiple lines. <dl compact><dt><b>Note:</b></dt><dd>This is a wrapper function for clicking button 4 on the mouse</dd></dl>
|
||||
<h2><a class="anchor" name="mousescrollu">
|
||||
Mouse Scroll Up</a></h2>
|
||||
<div class="fragment"><pre class="fragment"> 'mousescrollu'
|
||||
</pre></div> Scroll the mouse up 1 time - depending on window manager settings, etc., this may be multiple lines. <dl compact><dt><b>Note:</b></dt><dd>This is a wrapper function for clicking button 5 on the mouse</dd></dl>
|
||||
<h2><a class="anchor" name="keyclick">
|
||||
Key Button Click</a></h2>
|
||||
<div class="fragment"><pre class="fragment"> 'keyclick <key_name>'
|
||||
</pre></div> Push and release a keyboard key. This can be a key like <code>'a'</code>, <code>'b'</code>, or something fancy like <code>'space'</code>. Please see <a class="el" href="XTest_key_strings.html">XTest Key Strings</a> for a full list of special keys.<h2><a class="anchor" name="keydown">
|
||||
Key Button Down</a></h2>
|
||||
<div class="fragment"><pre class="fragment"> 'keydown <key_name>'
|
||||
</pre></div> Push down <em>but do not release</em> a keyboard key. This can be a key like <code>'a'</code>, <code>'b'</code>, or something fancy like <code>'space'</code>. Please see <a class="el" href="XTest_key_strings.html">XTest Key Strings</a> for a full list of special keys.<h2><a class="anchor" name="keyup">
|
||||
Key Button Up</a></h2>
|
||||
<div class="fragment"><pre class="fragment"> 'keyup <key_name>'
|
||||
</pre></div> Release a keyboard key. This can be a key like <code>'a'</code>, <code>'b'</code>, or something fancy like <code>'space'</code>. Please see <a class="el" href="XTest_key_strings.html">XTest Key Strings</a> for a full list of special keys.<h2><a class="anchor" name="keystring">
|
||||
Keyboard Input String</a></h2>
|
||||
<div class="fragment"><pre class="fragment"> 'keystring <string>'
|
||||
</pre></div> Input a string of text to the X11 server. For example, inputting 'Hello, world!" will act as if you typed 'Hello, world!' from the keyboard. <dl compact><dt><b>Warning:</b></dt><dd>Unlike <a class="el" href="XTest_command_strings.html#keydown">Key Button Down</a>, <a class="el" href="XTest_command_strings.html#keyup">Key Button Up</a>, and <a class="el" href="XTest_command_strings.html#keyclick">Key Button Click</a>, this function can not handle special keys like 'space'. </dd></dl>
|
||||
<hr size="1"><address style="align: right;"><small>Generated on Tue Jul 17 12:19:00 2012 for libcvautomation by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
271
XTest_key_strings.html
Normal file
@ -0,0 +1,271 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>libcvautomation: XTest Key Strings</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<h1><a class="anchor" name="XTest_key_strings">XTest Key Strings</a></h1>This page describes the various extra key strings to use with X11. The following list is generated with this command: <div class="fragment"><pre class="fragment"> xmodmap -pke | cut -d<span class="charliteral">'='</span> -f2 | sed 's/ /\n/g' | tr -s <span class="charliteral">'\n'</span> | awk '{ print length(), $0 | <span class="stringliteral">"sort -n"</span> }' | cut -d<span class="charliteral">' '</span> -f2 | uniq
|
||||
</pre></div> <div class="fragment"><pre class="fragment">0
|
||||
1
|
||||
2
|
||||
3
|
||||
4
|
||||
5
|
||||
6
|
||||
7
|
||||
8
|
||||
9
|
||||
a
|
||||
A
|
||||
b
|
||||
B
|
||||
c
|
||||
C
|
||||
d
|
||||
D
|
||||
e
|
||||
E
|
||||
f
|
||||
F
|
||||
g
|
||||
G
|
||||
h
|
||||
H
|
||||
i
|
||||
I
|
||||
j
|
||||
J
|
||||
k
|
||||
K
|
||||
l
|
||||
L
|
||||
m
|
||||
M
|
||||
n
|
||||
N
|
||||
o
|
||||
O
|
||||
p
|
||||
P
|
||||
q
|
||||
Q
|
||||
r
|
||||
R
|
||||
s
|
||||
S
|
||||
t
|
||||
T
|
||||
u
|
||||
U
|
||||
v
|
||||
V
|
||||
w
|
||||
W
|
||||
x
|
||||
X
|
||||
y
|
||||
Y
|
||||
z
|
||||
Z
|
||||
at
|
||||
F1
|
||||
F2
|
||||
F3
|
||||
F4
|
||||
F5
|
||||
F6
|
||||
F7
|
||||
F8
|
||||
F9
|
||||
Up
|
||||
bar
|
||||
End
|
||||
F10
|
||||
F11
|
||||
F12
|
||||
Tab
|
||||
Down
|
||||
Home
|
||||
KP_0
|
||||
KP_1
|
||||
KP_2
|
||||
KP_3
|
||||
KP_4
|
||||
KP_5
|
||||
KP_6
|
||||
KP_7
|
||||
KP_8
|
||||
KP_9
|
||||
Left
|
||||
less
|
||||
Menu
|
||||
Next
|
||||
plus
|
||||
Alt_L
|
||||
Break
|
||||
colon
|
||||
comma
|
||||
equal
|
||||
grave
|
||||
KP_Up
|
||||
minus
|
||||
Pause
|
||||
Print
|
||||
Prior
|
||||
Right
|
||||
slash
|
||||
space
|
||||
aacute
|
||||
Aacute
|
||||
dagger
|
||||
Delete
|
||||
dollar
|
||||
eacute
|
||||
Eacute
|
||||
Escape
|
||||
exclam
|
||||
iacute
|
||||
Iacute
|
||||
Insert
|
||||
KP_Add
|
||||
KP_End
|
||||
Meta_L
|
||||
oacute
|
||||
Oacute
|
||||
period
|
||||
Return
|
||||
uacute
|
||||
Uacute
|
||||
greater
|
||||
Hyper_L
|
||||
KP_Down
|
||||
KP_Home
|
||||
KP_Left
|
||||
KP_Next
|
||||
percent
|
||||
Shift_L
|
||||
Shift_R
|
||||
Super_L
|
||||
Super_R
|
||||
Sys_Req
|
||||
XF86WWW
|
||||
asterisk
|
||||
KP_Begin
|
||||
KP_Enter
|
||||
KP_Equal
|
||||
KP_Prior
|
||||
KP_Right
|
||||
NoSymbol
|
||||
Num_Lock
|
||||
question
|
||||
quotedbl
|
||||
XF86Back
|
||||
XF86Mail
|
||||
XF86Stop
|
||||
XF86WLAN
|
||||
ampersand
|
||||
backslash
|
||||
BackSpace
|
||||
braceleft
|
||||
brokenbar
|
||||
Caps_Lock
|
||||
Control_L
|
||||
Control_R
|
||||
KP_Delete
|
||||
KP_Divide
|
||||
KP_Insert
|
||||
parenleft
|
||||
semicolon
|
||||
XF86Eject
|
||||
XF86Sleep
|
||||
adiaeresis
|
||||
Adiaeresis
|
||||
apostrophe
|
||||
asciitilde
|
||||
braceright
|
||||
ediaeresis
|
||||
Ediaeresis
|
||||
idiaeresis
|
||||
KP_Decimal
|
||||
numbersign
|
||||
odiaeresis
|
||||
Odiaeresis
|
||||
parenright
|
||||
udiaeresis
|
||||
Udiaeresis
|
||||
underscore
|
||||
XF86Reload
|
||||
XF86Search
|
||||
XF86WakeUp
|
||||
asciicircum
|
||||
bracketleft
|
||||
KP_Multiply
|
||||
KP_Subtract
|
||||
Mode_switch
|
||||
Scroll_Lock
|
||||
XF86Battery
|
||||
XF86Display
|
||||
XF86Forward
|
||||
XF86_Ungrab
|
||||
bracketright
|
||||
doubledagger
|
||||
ISO_Left_Tab
|
||||
XF86PowerOff
|
||||
XF86AudioMute
|
||||
XF86AudioNext
|
||||
XF86AudioPrev
|
||||
XF86AudioStop
|
||||
XF86Favorites
|
||||
XF86AudioMedia
|
||||
XF86AudioPause
|
||||
XF86Calculator
|
||||
XF86_ClearGrab
|
||||
XF86MyComputer
|
||||
XF86_Next_VMode
|
||||
XF86_Prev_VMode
|
||||
ISO_Level3_Shift
|
||||
Terminate_Server
|
||||
XF86_Switch_VT_1
|
||||
XF86_Switch_VT_2
|
||||
XF86_Switch_VT_3
|
||||
XF86_Switch_VT_4
|
||||
XF86_Switch_VT_5
|
||||
XF86_Switch_VT_6
|
||||
XF86_Switch_VT_7
|
||||
XF86_Switch_VT_8
|
||||
XF86_Switch_VT_9
|
||||
XF86KbdLightOnOff
|
||||
XF86_Switch_VT_10
|
||||
XF86_Switch_VT_11
|
||||
XF86_Switch_VT_12
|
||||
Pointer_EnableKeys
|
||||
XF86KbdBrightnessUp
|
||||
XF86MonBrightnessUp
|
||||
XF86AudioLowerVolume
|
||||
XF86AudioRaiseVolume
|
||||
XF86KbdBrightnessDown
|
||||
XF86MonBrightnessDown
|
||||
</pre></div> <dl compact><dt><b>Warning:</b></dt><dd>Please note that each key string above is first translated into a key code, and then into the actual key click. Thus, while you might intend to press "dollar", it will actually come out as "4". </dd></dl>
|
||||
<hr size="1"><address style="align: right;"><small>Generated on Tue Jul 17 12:19:00 2012 for libcvautomation by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
39
annotated.html
Normal file
@ -0,0 +1,39 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>libcvautomation: Class List</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li id="current"><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li id="current"><a href="annotated.html"><span>Class List</span></a></li>
|
||||
<li><a href="functions.html"><span>Class Members</span></a></li>
|
||||
</ul></div>
|
||||
<h1>libcvautomation Class List</h1>Here are the classes, structs, unions and interfaces with brief descriptions:<table>
|
||||
<tr><td class="indexkey"><a class="el" href="structcvaPoint.html">cvaPoint</a></td><td class="indexvalue">Very simple structure to standardize how points are used in libcvautomation </td></tr>
|
||||
<tr><td class="indexkey"><a class="el" href="structcvautomationList.html">cvautomationList</a></td><td class="indexvalue">Implements a structure to build an array for methods like <a class="el" href="libcvautomation-opencv_8h.html#994981e2d31d5fb62fc3b227e36ebf87">matchSubImage_a()</a> </td></tr>
|
||||
<tr><td class="indexkey"><a class="el" href="structlist.html">list</a></td><td class="indexvalue"></td></tr>
|
||||
</table>
|
||||
<hr size="1"><address style="align: right;"><small>Generated on Tue Jul 17 12:19:00 2012 for libcvautomation by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
65
cva-input.html
Normal file
@ -0,0 +1,65 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>libcvautomation: </title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<dl compact><dt><b>Author:</b></dt><dd>Bradlee Speice <<a href="mailto:bspeice@uncc.edu">bspeice@uncc.edu</a>> </dd></dl>
|
||||
<dl compact><dt><b>Date:</b></dt><dd>7/11/2012 </dd></dl>
|
||||
<h2><a class="anchor" name="usage">
|
||||
Usage:</a></h2>
|
||||
This program works kind of like a mini-language. All options are parsed left-to-right, and executed right there. Thus, specifying "--display" at different places in the options will cause this program to use the most recent given display. <h2><a class="anchor" name="example">
|
||||
Example Usage:</a></h2>
|
||||
Click the mouse:<p>
|
||||
cva-input -s 'click 1'<p>
|
||||
Press key 'a':<p>
|
||||
cva-input -s 'keyclick a'<h2><a class="anchor" name="options">
|
||||
Full Options:</a></h2>
|
||||
-h, --help: Display this usage message.<p>
|
||||
-u, --usage: Display this usage message.<p>
|
||||
-d, --display: Specify the X display to use.<p>
|
||||
-m, --search-method: Specify a method to search by. See <code>cva-match --help</code> for more information on this.<p>
|
||||
-t, --tolerance: Specify how strict the match is.<p>
|
||||
-b, --button: Specify the mouse button to press (default 1).<p>
|
||||
-c, --center: Instead of matching the top-left corner of an image, match the center of the image.<p>
|
||||
-o, --sane-tolerance: Set the tolerance using a scale of 1-100, rather than INT_MIN to INT_MAX (100 ~= INT_MAX)<p>
|
||||
-s, --string: Command string - see below.<h2><a class="anchor" name="commands">
|
||||
Full Command List:</a></h2>
|
||||
mouseclick: Click the mouse in-place.<p>
|
||||
imouseclick: Click the mouse at an image's top-left corner.<p>
|
||||
icmouseclick: Click the mouse at an image's center.<p>
|
||||
mousexy: Move the mouse to the given coordinate.<p>
|
||||
mouserxy: Move the mouse by the given x and y values (relative motion).<p>
|
||||
mouseimage: Move the mouse to an image's top-left corner.<p>
|
||||
cmouseimage: Move the mouse to an image's center.<p>
|
||||
mousedown: Push and leave down a mouse button.<p>
|
||||
mouseup: Release a mouse button.<p>
|
||||
mousejiggle: Jiggle the mouse (helps to activate some widgets).<p>
|
||||
keyclick: Click a keyboard button.<p>
|
||||
keydown: Push and leave down a keyboard button.<p>
|
||||
keyup: Release a keyboard button.<p>
|
||||
keystring: Input a string of keys to X11.<h2><a class="anchor" name="contact">
|
||||
Contact Information:</a></h2>
|
||||
Questions? Comments? Concerns? Suggestions? Send all feedback to Bradlee Speice at <<a href="mailto:bspeice@uncc.edu">bspeice@uncc.edu</a>> <hr size="1"><address style="align: right;"><small>Generated on Tue Jul 17 12:19:00 2012 for libcvautomation by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
250
cva-input_8c-source.html
Normal file
@ -0,0 +1,250 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>libcvautomation: cva-input.c Source File</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li id="current"><a href="files.html"><span>Files</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="files.html"><span>File List</span></a></li>
|
||||
<li><a href="globals.html"><span>File Members</span></a></li>
|
||||
</ul></div>
|
||||
<h1>cva-input.c</h1><a href="cva-input_8c.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/*</span>
|
||||
<a name="l00002"></a>00002 <span class="comment"> * =====================================================================================</span>
|
||||
<a name="l00003"></a>00003 <span class="comment"> *</span>
|
||||
<a name="l00004"></a>00004 <span class="comment"> * Filename: cva-input.c</span>
|
||||
<a name="l00005"></a>00005 <span class="comment"> *</span>
|
||||
<a name="l00006"></a>00006 <span class="comment"> * Description: This is an example program to demonstrate the XTest and XInput</span>
|
||||
<a name="l00007"></a>00007 <span class="comment"> * functionality in libcvautomation</span>
|
||||
<a name="l00008"></a>00008 <span class="comment"> *</span>
|
||||
<a name="l00009"></a>00009 <span class="comment"> * Created: 06/26/2012 09:20:20 AM</span>
|
||||
<a name="l00010"></a>00010 <span class="comment"> * Revision: none</span>
|
||||
<a name="l00011"></a>00011 <span class="comment"> * Compiler: gcc</span>
|
||||
<a name="l00012"></a>00012 <span class="comment"> *</span>
|
||||
<a name="l00013"></a>00013 <span class="comment"> * Author: Bradlee Speice (), bspeice.nc@gmail.com</span>
|
||||
<a name="l00014"></a>00014 <span class="comment"> * Organization: </span>
|
||||
<a name="l00015"></a>00015 <span class="comment"> *</span>
|
||||
<a name="l00016"></a>00016 <span class="comment"> * =====================================================================================</span>
|
||||
<a name="l00017"></a>00017 <span class="comment"> */</span>
|
||||
<a name="l00018"></a>00018 <span class="preprocessor">#include <stdlib.h></span>
|
||||
<a name="l00019"></a>00019 <span class="preprocessor">#include <stdio.h></span>
|
||||
<a name="l00020"></a>00020 <span class="preprocessor">#include <unistd.h></span>
|
||||
<a name="l00021"></a>00021 <span class="preprocessor">#include <getopt.h></span>
|
||||
<a name="l00022"></a>00022 <span class="preprocessor">#include <limits.h></span>
|
||||
<a name="l00023"></a>00023 <span class="preprocessor">#include <math.h></span>
|
||||
<a name="l00024"></a>00024
|
||||
<a name="l00025"></a>00025 <span class="preprocessor">#include <<a class="code" href="libcvautomation_8h.html">libcvautomation/libcvautomation.h</a>></span>
|
||||
<a name="l00026"></a>00026
|
||||
<a name="l00027"></a>00027 <span class="keywordtype">void</span> <a class="code" href="cva-input_8c.html#76233dfb0e07a4db25a86e8688302693">usage</a> ();
|
||||
<a name="l00028"></a>00028 <span class="keywordtype">void</span> <a class="code" href="cva-input_8c.html#21a0cec68b592a986793eb77804e776f">checkXTEEnabled</a> (Display *display);
|
||||
<a name="l00029"></a>00029
|
||||
<a name="l00030"></a><a class="code" href="cva-input_8c.html#24e6ce6d053864cf5fb7af941457bb0e">00030</a> <span class="keywordtype">int</span> <a class="code" href="cva-input_8c.html#24e6ce6d053864cf5fb7af941457bb0e">main</a>( <span class="keywordtype">int</span> argc, <span class="keywordtype">char</span>** argv )
|
||||
<a name="l00031"></a>00031 {
|
||||
<a name="l00032"></a>00032 <span class="comment">/* Set up for getopt */</span>
|
||||
<a name="l00033"></a>00033 <span class="keywordtype">int</span> mouseButton;
|
||||
<a name="l00034"></a>00034 mouseButton = 1;
|
||||
<a name="l00035"></a>00035 <span class="keywordtype">char</span> *separator;
|
||||
<a name="l00036"></a>00036 separator = <span class="stringliteral">","</span>;
|
||||
<a name="l00037"></a>00037 <span class="keywordtype">char</span> *xDisplayLocation;
|
||||
<a name="l00038"></a>00038 xDisplayLocation = <span class="stringliteral">""</span>;
|
||||
<a name="l00039"></a>00039 Display *display;
|
||||
<a name="l00040"></a>00040 display = NULL;
|
||||
<a name="l00041"></a>00041
|
||||
<a name="l00042"></a>00042 <span class="keywordtype">int</span> searchMethod, tolerance;
|
||||
<a name="l00043"></a>00043 searchMethod = 0;
|
||||
<a name="l00044"></a>00044 tolerance = INT_MAX;
|
||||
<a name="l00045"></a>00045
|
||||
<a name="l00046"></a>00046 <span class="comment">/* Start getopt */</span>
|
||||
<a name="l00047"></a>00047 <span class="keywordflow">while</span> (1)
|
||||
<a name="l00048"></a>00048 {
|
||||
<a name="l00049"></a>00049 <span class="keyword">static</span> <span class="keyword">struct </span>option long_options[] =
|
||||
<a name="l00050"></a>00050 {
|
||||
<a name="l00051"></a>00051 {<span class="stringliteral">"help"</span>, no_argument, 0, <span class="charliteral">'h'</span>},
|
||||
<a name="l00052"></a>00052 {<span class="stringliteral">"usage"</span>, no_argument, 0, <span class="charliteral">'u'</span>},
|
||||
<a name="l00053"></a>00053 {<span class="stringliteral">"version"</span>, no_argument, 0, <span class="charliteral">'v'</span>},
|
||||
<a name="l00054"></a>00054 {<span class="stringliteral">"display"</span>, required_argument, 0, <span class="charliteral">'d'</span>},
|
||||
<a name="l00055"></a>00055 {<span class="stringliteral">"search-method"</span>,required_argument, 0, <span class="charliteral">'m'</span>},
|
||||
<a name="l00056"></a>00056 {<span class="stringliteral">"tolerance"</span>, required_argument, 0, <span class="charliteral">'t'</span>},
|
||||
<a name="l00057"></a>00057 {<span class="stringliteral">"button"</span>, required_argument, 0, <span class="charliteral">'b'</span>},
|
||||
<a name="l00058"></a>00058 {<span class="stringliteral">"string"</span>, required_argument, 0, <span class="charliteral">'s'</span>},
|
||||
<a name="l00059"></a>00059 {<span class="stringliteral">"sane-tolerance"</span>, required_argument, 0,<span class="charliteral">'o'</span>},
|
||||
<a name="l00060"></a>00060 {<span class="stringliteral">"print-format"</span>,required_argument, 0, <span class="charliteral">'p'</span>},
|
||||
<a name="l00061"></a>00061 <span class="comment">/* Other valid values are "optional_argument"</span>
|
||||
<a name="l00062"></a>00062 <span class="comment"> * and "required_argument" */</span>
|
||||
<a name="l00063"></a>00063 {0, 0, 0, 0}
|
||||
<a name="l00064"></a>00064 };
|
||||
<a name="l00065"></a>00065
|
||||
<a name="l00066"></a>00066 <span class="keywordtype">int</span> option_index = 0;
|
||||
<a name="l00067"></a>00067 opterr = 0;
|
||||
<a name="l00068"></a>00068
|
||||
<a name="l00069"></a>00069 <span class="keywordtype">int</span> c = getopt_long (argc, argv, <span class="stringliteral">"hud:m:t:b:cs:"</span>, <span class="comment">/* Use a single colon for required_argument,</span>
|
||||
<a name="l00070"></a>00070 <span class="comment"> * double colon for optional_argument */</span>
|
||||
<a name="l00071"></a>00071 long_options, &option_index);
|
||||
<a name="l00072"></a>00072
|
||||
<a name="l00073"></a>00073 <span class="comment">/* We're done with parsing options */</span>
|
||||
<a name="l00074"></a>00074 <span class="keywordflow">if</span> (c == -1)
|
||||
<a name="l00075"></a>00075 <span class="keywordflow">break</span>;
|
||||
<a name="l00076"></a>00076
|
||||
<a name="l00077"></a>00077 <span class="keywordflow">switch</span> (c)
|
||||
<a name="l00078"></a>00078 {
|
||||
<a name="l00079"></a>00079 <span class="keywordflow">case</span> 0:
|
||||
<a name="l00080"></a>00080 <span class="keywordflow">break</span>;
|
||||
<a name="l00081"></a>00081
|
||||
<a name="l00082"></a>00082 <span class="keywordflow">case</span> <span class="charliteral">'h'</span>:
|
||||
<a name="l00083"></a>00083 <a class="code" href="cva-input_8c.html#76233dfb0e07a4db25a86e8688302693">usage</a>();
|
||||
<a name="l00084"></a>00084 <span class="keywordflow">break</span>;
|
||||
<a name="l00085"></a>00085
|
||||
<a name="l00086"></a>00086 <span class="keywordflow">case</span> <span class="charliteral">'u'</span>:
|
||||
<a name="l00087"></a>00087 <a class="code" href="cva-input_8c.html#76233dfb0e07a4db25a86e8688302693">usage</a>();
|
||||
<a name="l00088"></a>00088 <span class="keywordflow">break</span>;
|
||||
<a name="l00089"></a>00089
|
||||
<a name="l00090"></a>00090 <span class="keywordflow">case</span> <span class="charliteral">'v'</span>:
|
||||
<a name="l00091"></a>00091 <a class="code" href="cva-input_8c.html#76233dfb0e07a4db25a86e8688302693">usage</a>();
|
||||
<a name="l00092"></a>00092 <span class="keywordflow">break</span>;
|
||||
<a name="l00093"></a>00093
|
||||
<a name="l00094"></a>00094 <span class="keywordflow">case</span> <span class="charliteral">'d'</span>:
|
||||
<a name="l00095"></a>00095 <span class="keywordflow">if</span> (display == NULL)
|
||||
<a name="l00096"></a>00096 display = XOpenDisplay( optarg );
|
||||
<a name="l00097"></a>00097 <span class="keywordflow">else</span>
|
||||
<a name="l00098"></a>00098 {
|
||||
<a name="l00099"></a>00099 XCloseDisplay( display );
|
||||
<a name="l00100"></a>00100 XOpenDisplay( optarg );
|
||||
<a name="l00101"></a>00101 }
|
||||
<a name="l00102"></a>00102
|
||||
<a name="l00103"></a>00103 <span class="keywordflow">case</span> <span class="charliteral">'m'</span>:
|
||||
<a name="l00104"></a>00104 searchMethod = atoi(optarg);
|
||||
<a name="l00105"></a>00105 <span class="keywordflow">break</span>;
|
||||
<a name="l00106"></a>00106
|
||||
<a name="l00107"></a>00107 <span class="keywordflow">case</span> <span class="charliteral">'t'</span>:
|
||||
<a name="l00108"></a>00108 tolerance = atoi(optarg);
|
||||
<a name="l00109"></a>00109 <span class="keywordflow">break</span>;
|
||||
<a name="l00110"></a>00110
|
||||
<a name="l00111"></a>00111 <span class="keywordflow">case</span> <span class="charliteral">'b'</span>:
|
||||
<a name="l00112"></a>00112 mouseButton = atoi(optarg);
|
||||
<a name="l00113"></a>00113 <span class="keywordflow">break</span>;
|
||||
<a name="l00114"></a>00114
|
||||
<a name="l00115"></a>00115 <span class="keywordflow">case</span> <span class="charliteral">'s'</span>:
|
||||
<a name="l00116"></a>00116 <span class="keywordflow">if</span> (display == NULL)
|
||||
<a name="l00117"></a>00117 display = XOpenDisplay( xDisplayLocation );
|
||||
<a name="l00118"></a>00118 <a class="code" href="structcvaPoint.html">cvaPoint</a> returnPoint;
|
||||
<a name="l00119"></a>00119 returnPoint = <a class="code" href="libcvautomation-xtest_8h.html#382af05e5669ea2cbb22608e41cbc49a">xte_commandString</a>( display, optarg, mouseButton, searchMethod, tolerance );
|
||||
<a name="l00120"></a>00120
|
||||
<a name="l00121"></a>00121 <span class="keywordflow">if</span> (returnPoint.<a class="code" href="structcvaPoint.html#4b281115ba26b80bfc9ab6250b37d01d">x</a> != -1 && returnPoint.<a class="code" href="structcvaPoint.html#3e7df78670c23fb2114a386750edbf1e">y</a> != -1)
|
||||
<a name="l00122"></a>00122 printf(<span class="stringliteral">"%s%s%i%s%i\n"</span>, optarg, separator, returnPoint.<a class="code" href="structcvaPoint.html#4b281115ba26b80bfc9ab6250b37d01d">x</a>, separator, returnPoint.<a class="code" href="structcvaPoint.html#3e7df78670c23fb2114a386750edbf1e">y</a>);
|
||||
<a name="l00123"></a>00123 <span class="keywordflow">else</span>
|
||||
<a name="l00124"></a>00124 printf(<span class="stringliteral">"%s\n"</span>, optarg);
|
||||
<a name="l00125"></a>00125 <span class="keywordflow">break</span>;
|
||||
<a name="l00126"></a>00126
|
||||
<a name="l00127"></a>00127 <span class="keywordflow">case</span> <span class="charliteral">'o'</span>:
|
||||
<a name="l00128"></a>00128 tolerance = atoi(optarg);
|
||||
<a name="l00129"></a>00129 <span class="comment">/* Provide a more sane way to configure tolerance:</span>
|
||||
<a name="l00130"></a>00130 <span class="comment"> * --sane-tolerance=100 ~= INT_MAX */</span>
|
||||
<a name="l00131"></a>00131 tolerance = pow(1.2397076, tolerance);
|
||||
<a name="l00132"></a>00132 <span class="keywordflow">break</span>;
|
||||
<a name="l00133"></a>00133
|
||||
<a name="l00134"></a>00134 <span class="keywordflow">case</span> <span class="charliteral">'?'</span>:
|
||||
<a name="l00135"></a>00135 <span class="comment">/* Error routine */</span>
|
||||
<a name="l00136"></a>00136 <span class="keywordflow">break</span>;
|
||||
<a name="l00137"></a>00137
|
||||
<a name="l00138"></a>00138 <span class="keywordflow">default</span>:
|
||||
<a name="l00139"></a>00139 fprintf( stderr, <span class="stringliteral">"Unknown option..."</span> );
|
||||
<a name="l00140"></a>00140 exit(0);
|
||||
<a name="l00141"></a>00141 };
|
||||
<a name="l00142"></a>00142 }
|
||||
<a name="l00143"></a>00143
|
||||
<a name="l00144"></a>00144 <span class="keywordflow">if</span> ( display != NULL )
|
||||
<a name="l00145"></a>00145 XCloseDisplay( display );
|
||||
<a name="l00146"></a>00146
|
||||
<a name="l00147"></a>00147 <span class="keywordflow">return</span> 0;
|
||||
<a name="l00148"></a>00148 }
|
||||
<a name="l00149"></a>00149
|
||||
<a name="l00150"></a>00150 <span class="comment">/* </span>
|
||||
<a name="l00151"></a>00151 <span class="comment"> * === FUNCTION ======================================================================</span>
|
||||
<a name="l00152"></a>00152 <span class="comment"> * Name: usage</span>
|
||||
<a name="l00153"></a>00153 <span class="comment"> * Description: I really shouldn't need to write this</span>
|
||||
<a name="l00154"></a>00154 <span class="comment"> * =====================================================================================</span>
|
||||
<a name="l00155"></a>00155 <span class="comment"> */</span>
|
||||
<a name="l00156"></a><a class="code" href="cva-input_8c.html#76233dfb0e07a4db25a86e8688302693">00156</a> <span class="keywordtype">void</span> <a class="code" href="cva-input_8c.html#76233dfb0e07a4db25a86e8688302693">usage</a> ( )
|
||||
<a name="l00157"></a>00157 {
|
||||
<a name="l00158"></a>00158 fprintf( stderr, <span class="stringliteral">"\</span>
|
||||
<a name="l00159"></a>00159 <span class="stringliteral">Libcvautomation version: %s\n\</span>
|
||||
<a name="l00160"></a>00160 <span class="stringliteral">cva-input -s <command_string>\n\</span>
|
||||
<a name="l00161"></a>00161 <span class="stringliteral">\n\</span>
|
||||
<a name="l00162"></a>00162 <span class="stringliteral">The cva-input program demonstrates the XTest section of libcvautomation.\n\</span>
|
||||
<a name="l00163"></a>00163 <span class="stringliteral">\n\</span>
|
||||
<a name="l00164"></a>00164 <span class="stringliteral">Usage: \n\</span>
|
||||
<a name="l00165"></a>00165 <span class="stringliteral">\n\</span>
|
||||
<a name="l00166"></a>00166 <span class="stringliteral">\t-h, --help:\t\tDisplay this usage message.\n\</span>
|
||||
<a name="l00167"></a>00167 <span class="stringliteral">\t-u, --usage:\t\tDisplay this usage message.\n\</span>
|
||||
<a name="l00168"></a>00168 <span class="stringliteral">\t-d, --display:\t\tSpecify the X display to use.\n\</span>
|
||||
<a name="l00169"></a>00169 <span class="stringliteral">\t-m, --search-method:\tSpecify a method to search by. See `cva-match --help\'\n\</span>
|
||||
<a name="l00170"></a>00170 <span class="stringliteral">\t\t\t\tfor more information on this.\n\</span>
|
||||
<a name="l00171"></a>00171 <span class="stringliteral">\t-t, --tolerance:\tSpecify how strict the match is.\n\</span>
|
||||
<a name="l00172"></a>00172 <span class="stringliteral">\t-b, --button:\t\tSpecify the mouse button to press (default 1).\n\</span>
|
||||
<a name="l00173"></a>00173 <span class="stringliteral">\t-c, --center:\t\tInstead of matching the top-left corner of an image,\n\</span>
|
||||
<a name="l00174"></a>00174 <span class="stringliteral">\t\t\t\tmatch the center of the image.\n\</span>
|
||||
<a name="l00175"></a>00175 <span class="stringliteral">\t-o, --sane-tolerance:\tSet the tolerance using a scale of 1-100,\n\</span>
|
||||
<a name="l00176"></a>00176 <span class="stringliteral">\t-s, --string:\t\tCommand string - see below.\n\</span>
|
||||
<a name="l00177"></a>00177 <span class="stringliteral">\n\</span>
|
||||
<a name="l00178"></a>00178 <span class="stringliteral">This program works kind of like a mini-language. All options\n\</span>
|
||||
<a name="l00179"></a>00179 <span class="stringliteral">are parsed left-to-right, and executed right there. Thus, specifying \"--display\"\n\</span>
|
||||
<a name="l00180"></a>00180 <span class="stringliteral">at different places in the options will cause this program to use the most recent\n\</span>
|
||||
<a name="l00181"></a>00181 <span class="stringliteral">given display.\n\</span>
|
||||
<a name="l00182"></a>00182 <span class="stringliteral">Available commands:\n\</span>
|
||||
<a name="l00183"></a>00183 <span class="stringliteral">\tmouseclick:\tClick the mouse in-place.\n\</span>
|
||||
<a name="l00184"></a>00184 <span class="stringliteral">\timouseclick:\tClick the mouse at an image's top-left corner.\n\</span>
|
||||
<a name="l00185"></a>00185 <span class="stringliteral">\ticmouseclick:\tClick the mouse at an image's center.\n\</span>
|
||||
<a name="l00186"></a>00186 <span class="stringliteral">\tmousexy:\tMove the mouse to the given coordinate.\n\</span>
|
||||
<a name="l00187"></a>00187 <span class="stringliteral">\tmouserxy:\tMove the mouse by the given x and y values (relative motion).\n\</span>
|
||||
<a name="l00188"></a>00188 <span class="stringliteral">\tmouseimage:\tMove the mouse to an image's top-left corner.\n\</span>
|
||||
<a name="l00189"></a>00189 <span class="stringliteral">\tcmouseimage:\tMove the mouse to an image's center.\n\</span>
|
||||
<a name="l00190"></a>00190 <span class="stringliteral">\tmousedown:\tPush and leave down a mouse button.\n\</span>
|
||||
<a name="l00191"></a>00191 <span class="stringliteral">\tmouseup:\tRelease a mouse button.\n\</span>
|
||||
<a name="l00192"></a>00192 <span class="stringliteral">\tmousejiggle:\tJiggle the mouse (helps to activate some widgets).\n\</span>
|
||||
<a name="l00193"></a>00193 <span class="stringliteral">\tkeyclick:\tClick a keyboard button.\n\</span>
|
||||
<a name="l00194"></a>00194 <span class="stringliteral">\tkeydown:\tPush and leave down a keyboard button.\n\</span>
|
||||
<a name="l00195"></a>00195 <span class="stringliteral">\tkeyup:\tRelease a keyboard button.\n\</span>
|
||||
<a name="l00196"></a>00196 <span class="stringliteral">\tkeystring:\tInput a string of keys to X11.\n\</span>
|
||||
<a name="l00197"></a>00197 <span class="stringliteral">\n\</span>
|
||||
<a name="l00198"></a>00198 <span class="stringliteral">If you have any questions, comments, concerns, email <%s>.\n\n"</span>, <a class="code" href="libcvautomation_8h.html#6b6ab32b9a55421b91988946b2180bd0">LIBCVAUTOMATION_VERSION</a>, <a class="code" href="libcvautomation_8h.html#064f2ecb9f4013fd636368d0dd59e453">LIBCVAUTOMATION_BUGREPORT</a> );
|
||||
<a name="l00199"></a>00199
|
||||
<a name="l00200"></a>00200 exit (0);
|
||||
<a name="l00201"></a>00201
|
||||
<a name="l00202"></a>00202 } <span class="comment">/* ----- end of function usage ----- */</span>
|
||||
<a name="l00203"></a>00203
|
||||
<a name="l00204"></a><a class="code" href="cva-input_8c.html#21a0cec68b592a986793eb77804e776f">00204</a> <span class="keywordtype">void</span> <a class="code" href="cva-input_8c.html#21a0cec68b592a986793eb77804e776f">checkXTEEnabled</a> ( Display *display )
|
||||
<a name="l00205"></a>00205 {
|
||||
<a name="l00206"></a>00206 <span class="comment">/* Make sure we have the XTest Extensions enabled.</span>
|
||||
<a name="l00207"></a>00207 <span class="comment"> * This is a quick wrapper. */</span>
|
||||
<a name="l00208"></a>00208 <span class="keywordflow">if</span> (! <a class="code" href="libcvautomation-xtest_8h.html#d054a30613fdebf388218ce7c7ba8eaa">xte_XTestSupported</a>( display ))
|
||||
<a name="l00209"></a>00209 {
|
||||
<a name="l00210"></a>00210 printf(<span class="stringliteral">"The XTest extension is not supported! Aborting..."</span>);
|
||||
<a name="l00211"></a>00211 exit(255);
|
||||
<a name="l00212"></a>00212 }
|
||||
<a name="l00213"></a>00213 }
|
||||
<a name="l00214"></a>00214
|
||||
<a name="l00215"></a>00215 <span class="comment">/* Doxygen Information */</span>
|
||||
<a name="l00222"></a>00222 <span class="comment">/* The biggest purpose of documenting this code is to trick doxygen into making a man page for it. */</span>
|
||||
</pre></div><hr size="1"><address style="align: right;"><small>Generated on Tue Jul 17 12:19:00 2012 for libcvautomation by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
65
cva-input_8c.html
Normal file
@ -0,0 +1,65 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>libcvautomation: cva-input.c File Reference</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li id="current"><a href="files.html"><span>Files</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="files.html"><span>File List</span></a></li>
|
||||
<li><a href="globals.html"><span>File Members</span></a></li>
|
||||
</ul></div>
|
||||
<h1>cva-input.c File Reference</h1>The cva-input program to demonstrate Libcvautomation's XTest functionality. <a href="#_details">More...</a>
|
||||
<p>
|
||||
<code>#include <stdlib.h></code><br>
|
||||
<code>#include <stdio.h></code><br>
|
||||
<code>#include <unistd.h></code><br>
|
||||
<code>#include <getopt.h></code><br>
|
||||
<code>#include <limits.h></code><br>
|
||||
<code>#include <math.h></code><br>
|
||||
<code>#include <<a class="el" href="libcvautomation_8h-source.html">libcvautomation/libcvautomation.h</a>></code><br>
|
||||
|
||||
<p>
|
||||
<a href="cva-input_8c-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
|
||||
<tr><td></td></tr>
|
||||
<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="76233dfb0e07a4db25a86e8688302693"></a><!-- doxytag: member="cva-input.c::usage" ref="76233dfb0e07a4db25a86e8688302693" args="()" -->
|
||||
void </td><td class="memItemRight" valign="bottom"><a class="el" href="cva-input_8c.html#76233dfb0e07a4db25a86e8688302693">usage</a> ()</td></tr>
|
||||
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="21a0cec68b592a986793eb77804e776f"></a><!-- doxytag: member="cva-input.c::checkXTEEnabled" ref="21a0cec68b592a986793eb77804e776f" args="(Display *display)" -->
|
||||
void </td><td class="memItemRight" valign="bottom"><a class="el" href="cva-input_8c.html#21a0cec68b592a986793eb77804e776f">checkXTEEnabled</a> (Display *display)</td></tr>
|
||||
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="24e6ce6d053864cf5fb7af941457bb0e"></a><!-- doxytag: member="cva-input.c::main" ref="24e6ce6d053864cf5fb7af941457bb0e" args="(int argc, char **argv)" -->
|
||||
int </td><td class="memItemRight" valign="bottom"><a class="el" href="cva-input_8c.html#24e6ce6d053864cf5fb7af941457bb0e">main</a> (int argc, char **argv)</td></tr>
|
||||
|
||||
</table>
|
||||
<hr><a name="_details"></a><h2>Detailed Description</h2>
|
||||
The cva-input program to demonstrate Libcvautomation's XTest functionality.
|
||||
<p>
|
||||
<dl compact><dt><b>Author:</b></dt><dd>Bradlee Speice <<a href="mailto:bspeice@uncc.edu">bspeice@uncc.edu</a>> </dd></dl>
|
||||
<dl compact><dt><b>Date:</b></dt><dd>7/11/2012 </dd></dl>
|
||||
|
||||
<p>
|
||||
Definition in file <a class="el" href="cva-input_8c-source.html">cva-input.c</a>.<hr size="1"><address style="align: right;"><small>Generated on Tue Jul 17 12:19:00 2012 for libcvautomation by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
54
cva-match.html
Normal file
@ -0,0 +1,54 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>libcvautomation: </title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<dl compact><dt><b>Author:</b></dt><dd>Bradlee Speice <<a href="mailto:bspeice@uncc.edu">bspeice@uncc.edu</a>> </dd></dl>
|
||||
<dl compact><dt><b>Date:</b></dt><dd>7/11/2012 </dd></dl>
|
||||
<h2><a class="anchor" name="usage">
|
||||
Usage:</a></h2>
|
||||
This program uses OpenCV in order to recognize an image within an image. The return code is how many matches were found - return 0 for no matches, 1 for one match, etc.<h2><a class="anchor" name="example">
|
||||
Example Usage:</a></h2>
|
||||
Match two images against the root X11 window:<p>
|
||||
cva-match --x-root -s "<image_name>" -s "<image_name_2>"<p>
|
||||
Match a root and sub image with a custom tolerance and search method<p>
|
||||
cva-match -r "<root_image>" -s "<image_name>" -o 75 -m 1<h2><a class="anchor" name="options">
|
||||
Full Options:</a></h2>
|
||||
-h, --help: Display this usage message.<p>
|
||||
-u, --usage: Display this usage message.<p>
|
||||
-r, --root-image: Location of the root image to compare against.<p>
|
||||
-s, --sub-image: Location of the sub-image to find in root.<p>
|
||||
-p, --separator: Separator of the X and Y coordinates.<p>
|
||||
-t, --tolerance: Set how strict the match is - 100 is recommended lowest value.<p>
|
||||
<dl compact><dt><b>Note:</b></dt><dd>When using CCORR or CCOEFF tolerance works in opposite direction, so -50 is recommended highest value.</dd></dl>
|
||||
-m, --search-method: Set which method is used to search for sub-images.<p>
|
||||
<dl compact><dt><b>Note:</b></dt><dd>Search Methods: CV_TM_SQDIFF = 0, CV_TM_SQDIFF_NORMED = 1, CV_TM_CCORR = 2, CV_TM_CCORR_NORMED = 3, CV_TM_CCOEFF = 4, CV_TM_COEFF_NORMED = 5</dd></dl>
|
||||
-x, --x-root[=DISPLAY]: Set the root image to come from X11<p>
|
||||
<dl compact><dt><b>Note:</b></dt><dd>The DISPLAY variable is optional, not specifying it will cause X to use the default display (not specifically :0.0)</dd></dl>
|
||||
-c, --center: The output points should be centered on the sub-image, rather than the top-left corner.<p>
|
||||
-o, --sane-tolerance: Set the tolerance using a scale of 1-100, rather than INT_MIN to INT_MAX (100 ~= INT_MAX)<h2><a class="anchor" name="contact">
|
||||
Contact Information:</a></h2>
|
||||
Questions? Comments? Concerns? Suggestions? Send all feedback to Bradlee Speice at <<a href="mailto:bspeice@uncc.edu">bspeice@uncc.edu</a>> <hr size="1"><address style="align: right;"><small>Generated on Tue Jul 17 12:19:00 2012 for libcvautomation by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
294
cva-match_8c-source.html
Normal file
@ -0,0 +1,294 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>libcvautomation: cva-match.c Source File</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li id="current"><a href="files.html"><span>Files</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="files.html"><span>File List</span></a></li>
|
||||
<li><a href="globals.html"><span>File Members</span></a></li>
|
||||
</ul></div>
|
||||
<h1>cva-match.c</h1><a href="cva-match_8c.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/*</span>
|
||||
<a name="l00002"></a>00002 <span class="comment"> * =====================================================================================</span>
|
||||
<a name="l00003"></a>00003 <span class="comment"> *</span>
|
||||
<a name="l00004"></a>00004 <span class="comment"> * Filename: cva-match.c</span>
|
||||
<a name="l00005"></a>00005 <span class="comment"> *</span>
|
||||
<a name="l00006"></a>00006 <span class="comment"> * Description: Match an image to its parent image, and return the coordinates</span>
|
||||
<a name="l00007"></a>00007 <span class="comment"> *</span>
|
||||
<a name="l00008"></a>00008 <span class="comment"> * Version: 0.1</span>
|
||||
<a name="l00009"></a>00009 <span class="comment"> * Created: 06/20/2012</span>
|
||||
<a name="l00010"></a>00010 <span class="comment"> * Revision: none</span>
|
||||
<a name="l00011"></a>00011 <span class="comment"> * Compiler: gcc</span>
|
||||
<a name="l00012"></a>00012 <span class="comment"> *</span>
|
||||
<a name="l00013"></a>00013 <span class="comment"> * Author: Bradlee Speice, bspeice@uncc.edu</span>
|
||||
<a name="l00014"></a>00014 <span class="comment"> * Organization: MOSAIC at University of North Carolina at Charlotte</span>
|
||||
<a name="l00015"></a>00015 <span class="comment"> *</span>
|
||||
<a name="l00016"></a>00016 <span class="comment"> * =====================================================================================</span>
|
||||
<a name="l00017"></a>00017 <span class="comment"> */</span>
|
||||
<a name="l00018"></a>00018 <span class="preprocessor">#include <stdlib.h></span>
|
||||
<a name="l00019"></a>00019 <span class="preprocessor">#include <stdio.h></span>
|
||||
<a name="l00020"></a>00020 <span class="preprocessor">#include <unistd.h></span>
|
||||
<a name="l00021"></a>00021 <span class="preprocessor">#include <getopt.h></span>
|
||||
<a name="l00022"></a>00022 <span class="preprocessor">#include <limits.h></span>
|
||||
<a name="l00023"></a>00023
|
||||
<a name="l00024"></a>00024 <span class="preprocessor">#include <<a class="code" href="libcvautomation_8h.html">libcvautomation/libcvautomation.h</a>></span>
|
||||
<a name="l00025"></a>00025
|
||||
<a name="l00026"></a>00026 <span class="keywordtype">void</span> <a class="code" href="cva-input_8c.html#76233dfb0e07a4db25a86e8688302693">usage</a> ();
|
||||
<a name="l00027"></a>00027
|
||||
<a name="l00028"></a><a class="code" href="structlist.html">00028</a> <span class="keyword">struct </span><a class="code" href="structlist.html">list</a> {
|
||||
<a name="l00029"></a><a class="code" href="structlist.html#ed82c7e1f3c98f1c527884c60e88ac06">00029</a> <span class="keywordtype">char</span> *<a class="code" href="structlist.html#ed82c7e1f3c98f1c527884c60e88ac06">fileName</a>;
|
||||
<a name="l00030"></a><a class="code" href="structlist.html#17ba8e20337279fa9dfa74ac99c21bc1">00030</a> <span class="keyword">struct </span><a class="code" href="structlist.html">list</a> *<a class="code" href="structlist.html#17ba8e20337279fa9dfa74ac99c21bc1">next</a>;
|
||||
<a name="l00031"></a>00031 };
|
||||
<a name="l00032"></a>00032
|
||||
<a name="l00033"></a><a class="code" href="cva-match_8c.html#13f238c775b8e32baf4b94d638a11d6f">00033</a> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structlist.html">list</a> <a class="code" href="cva-match_8c.html#13f238c775b8e32baf4b94d638a11d6f">basic_list</a>;
|
||||
<a name="l00034"></a>00034
|
||||
<a name="l00035"></a><a class="code" href="cva-match_8c.html#24e6ce6d053864cf5fb7af941457bb0e">00035</a> <span class="keywordtype">int</span> <a class="code" href="cva-input_8c.html#24e6ce6d053864cf5fb7af941457bb0e">main</a>( <span class="keywordtype">int</span> argc, <span class="keywordtype">char</span>** argv )
|
||||
<a name="l00036"></a>00036 {
|
||||
<a name="l00037"></a>00037 CvPoint result_point;
|
||||
<a name="l00038"></a>00038 result_point.x = result_point.y = 0;
|
||||
<a name="l00039"></a>00039
|
||||
<a name="l00040"></a>00040 <span class="comment">/* Set up everything for getopt */</span>
|
||||
<a name="l00041"></a>00041 <span class="keywordtype">char</span> *separator = <span class="stringliteral">","</span>;
|
||||
<a name="l00042"></a>00042 <span class="keywordtype">char</span> *root_location = <span class="stringliteral">"root.png"</span>;
|
||||
<a name="l00043"></a>00043 <span class="keywordtype">char</span> *sub_location = <span class="stringliteral">"sub.png"</span>;
|
||||
<a name="l00044"></a>00044 <span class="keywordtype">int</span> tolerance = INT_MAX;
|
||||
<a name="l00045"></a>00045 <span class="keywordtype">int</span> search_method = CV_TM_SQDIFF;
|
||||
<a name="l00046"></a>00046 <span class="keywordtype">int</span> useX = 0; <span class="comment">/* bool useX = false; */</span>
|
||||
<a name="l00047"></a>00047 <span class="keywordtype">int</span> useCenter = 0;
|
||||
<a name="l00048"></a>00048 <span class="keywordtype">char</span> *xDisplayLocation;
|
||||
<a name="l00049"></a>00049 Display *display;
|
||||
<a name="l00050"></a>00050 <span class="comment">/* This line to suppress a compiler warning */</span>
|
||||
<a name="l00051"></a>00051 display = NULL;
|
||||
<a name="l00052"></a>00052
|
||||
<a name="l00053"></a>00053 <span class="comment">/* Set the default display */</span>
|
||||
<a name="l00054"></a>00054 xDisplayLocation = <span class="stringliteral">""</span>;
|
||||
<a name="l00055"></a>00055
|
||||
<a name="l00056"></a>00056 <span class="comment">/* Set up the linked list for slave images */</span>
|
||||
<a name="l00057"></a>00057 <a class="code" href="cva-match_8c.html#13f238c775b8e32baf4b94d638a11d6f">basic_list</a> *list_head = NULL, *list_curr = NULL, *list_prev = NULL;
|
||||
<a name="l00058"></a>00058
|
||||
<a name="l00059"></a>00059 <span class="comment">/* Start getopt */</span>
|
||||
<a name="l00060"></a>00060 <span class="keywordflow">while</span> (1)
|
||||
<a name="l00061"></a>00061 {
|
||||
<a name="l00062"></a>00062 <span class="keyword">static</span> <span class="keyword">struct </span>option long_options[] =
|
||||
<a name="l00063"></a>00063 {
|
||||
<a name="l00064"></a>00064 {<span class="stringliteral">"help"</span>, no_argument, 0, <span class="charliteral">'h'</span>},
|
||||
<a name="l00065"></a>00065 {<span class="stringliteral">"usage"</span>, no_argument, 0, <span class="charliteral">'u'</span>},
|
||||
<a name="l00066"></a>00066 {<span class="stringliteral">"version"</span>, no_argument, 0, <span class="charliteral">'v'</span>},
|
||||
<a name="l00067"></a>00067 {<span class="stringliteral">"root-image"</span>, required_argument, 0, <span class="charliteral">'r'</span>},
|
||||
<a name="l00068"></a>00068 {<span class="stringliteral">"sub-image"</span>, required_argument, 0, <span class="charliteral">'s'</span>},
|
||||
<a name="l00069"></a>00069 {<span class="stringliteral">"separator"</span>, required_argument, 0, <span class="charliteral">'p'</span>},
|
||||
<a name="l00070"></a>00070 {<span class="stringliteral">"search-method"</span>,required_argument, 0, <span class="charliteral">'m'</span>},
|
||||
<a name="l00071"></a>00071 {<span class="stringliteral">"tolerance"</span>, required_argument, 0, <span class="charliteral">'t'</span>},
|
||||
<a name="l00072"></a>00072 {<span class="stringliteral">"x-root"</span>, optional_argument, 0, <span class="charliteral">'x'</span>},
|
||||
<a name="l00073"></a>00073 {<span class="stringliteral">"center"</span>, no_argument, 0, <span class="charliteral">'c'</span>},
|
||||
<a name="l00074"></a>00074 {<span class="stringliteral">"sane-tolerance"</span>, required_argument, 0, <span class="charliteral">'o'</span>},
|
||||
<a name="l00075"></a>00075 {0, 0, 0, 0}
|
||||
<a name="l00076"></a>00076 };
|
||||
<a name="l00077"></a>00077
|
||||
<a name="l00078"></a>00078 <span class="keywordtype">int</span> option_index = 0;
|
||||
<a name="l00079"></a>00079 opterr = 0;
|
||||
<a name="l00080"></a>00080
|
||||
<a name="l00081"></a>00081 <span class="keywordtype">int</span> c = getopt_long (argc, argv, <span class="stringliteral">"hur:s:p:m:t:x::c"</span>,
|
||||
<a name="l00082"></a>00082 long_options, &option_index);
|
||||
<a name="l00083"></a>00083
|
||||
<a name="l00084"></a>00084 <span class="comment">/* We're done with parsing options */</span>
|
||||
<a name="l00085"></a>00085 <span class="keywordflow">if</span> (c == -1)
|
||||
<a name="l00086"></a>00086 <span class="keywordflow">break</span>;
|
||||
<a name="l00087"></a>00087
|
||||
<a name="l00088"></a>00088 <span class="keywordflow">switch</span> (c)
|
||||
<a name="l00089"></a>00089 {
|
||||
<a name="l00090"></a>00090 <span class="keywordflow">case</span> 0:
|
||||
<a name="l00091"></a>00091 <span class="keywordflow">break</span>;
|
||||
<a name="l00092"></a>00092
|
||||
<a name="l00093"></a>00093 <span class="keywordflow">case</span> <span class="charliteral">'h'</span>:
|
||||
<a name="l00094"></a>00094 <a class="code" href="cva-input_8c.html#76233dfb0e07a4db25a86e8688302693">usage</a>();
|
||||
<a name="l00095"></a>00095 <span class="keywordflow">break</span>;
|
||||
<a name="l00096"></a>00096
|
||||
<a name="l00097"></a>00097 <span class="keywordflow">case</span> <span class="charliteral">'u'</span>:
|
||||
<a name="l00098"></a>00098 <a class="code" href="cva-input_8c.html#76233dfb0e07a4db25a86e8688302693">usage</a>();
|
||||
<a name="l00099"></a>00099 <span class="keywordflow">break</span>;
|
||||
<a name="l00100"></a>00100
|
||||
<a name="l00101"></a>00101 <span class="keywordflow">case</span> <span class="charliteral">'v'</span>:
|
||||
<a name="l00102"></a>00102 <a class="code" href="cva-input_8c.html#76233dfb0e07a4db25a86e8688302693">usage</a>();
|
||||
<a name="l00103"></a>00103 <span class="keywordflow">break</span>;
|
||||
<a name="l00104"></a>00104
|
||||
<a name="l00105"></a>00105 <span class="keywordflow">case</span> <span class="charliteral">'r'</span>:
|
||||
<a name="l00106"></a>00106 root_location = optarg;
|
||||
<a name="l00107"></a>00107 <span class="keywordflow">break</span>;
|
||||
<a name="l00108"></a>00108
|
||||
<a name="l00109"></a>00109 <span class="keywordflow">case</span> <span class="charliteral">'s'</span>:
|
||||
<a name="l00110"></a>00110 <span class="keywordflow">if</span> ( list_head == NULL )
|
||||
<a name="l00111"></a>00111 {
|
||||
<a name="l00112"></a>00112 list_head = (<a class="code" href="cva-match_8c.html#13f238c775b8e32baf4b94d638a11d6f">basic_list</a> *) malloc (<span class="keyword">sizeof</span>(<a class="code" href="cva-match_8c.html#13f238c775b8e32baf4b94d638a11d6f">basic_list</a>));
|
||||
<a name="l00113"></a>00113 list_curr = list_head;
|
||||
<a name="l00114"></a>00114 }
|
||||
<a name="l00115"></a>00115 list_curr-><a class="code" href="structlist.html#ed82c7e1f3c98f1c527884c60e88ac06">fileName</a> = optarg;
|
||||
<a name="l00116"></a>00116 list_curr->next = (<a class="code" href="cva-match_8c.html#13f238c775b8e32baf4b94d638a11d6f">basic_list</a> *) malloc (<span class="keyword">sizeof</span>(<a class="code" href="cva-match_8c.html#13f238c775b8e32baf4b94d638a11d6f">basic_list</a>));
|
||||
<a name="l00117"></a>00117 list_curr = list_curr->next;
|
||||
<a name="l00118"></a>00118 <span class="keywordflow">break</span>;
|
||||
<a name="l00119"></a>00119
|
||||
<a name="l00120"></a>00120 <span class="keywordflow">case</span> <span class="charliteral">'p'</span>:
|
||||
<a name="l00121"></a>00121 separator = optarg;
|
||||
<a name="l00122"></a>00122 <span class="keywordflow">break</span>;
|
||||
<a name="l00123"></a>00123
|
||||
<a name="l00124"></a>00124 <span class="keywordflow">case</span> <span class="charliteral">'m'</span>:
|
||||
<a name="l00125"></a>00125 search_method = atoi(optarg);
|
||||
<a name="l00126"></a>00126 <span class="keywordflow">break</span>;
|
||||
<a name="l00127"></a>00127
|
||||
<a name="l00128"></a>00128 <span class="keywordflow">case</span> <span class="charliteral">'t'</span>:
|
||||
<a name="l00129"></a>00129 tolerance = atoi(optarg);
|
||||
<a name="l00130"></a>00130 <span class="keywordflow">break</span>;
|
||||
<a name="l00131"></a>00131
|
||||
<a name="l00132"></a>00132 <span class="keywordflow">case</span> <span class="charliteral">'x'</span>:
|
||||
<a name="l00133"></a>00133 <span class="keywordflow">if</span> ( optarg != NULL ) {
|
||||
<a name="l00134"></a>00134 useX = 1;
|
||||
<a name="l00135"></a>00135 xDisplayLocation = optarg;
|
||||
<a name="l00136"></a>00136 display = XOpenDisplay(xDisplayLocation);
|
||||
<a name="l00137"></a>00137 } <span class="keywordflow">else</span> {
|
||||
<a name="l00138"></a>00138 useX = 1;
|
||||
<a name="l00139"></a>00139 xDisplayLocation = <span class="stringliteral">""</span>;
|
||||
<a name="l00140"></a>00140 display = XOpenDisplay(xDisplayLocation);
|
||||
<a name="l00141"></a>00141 }
|
||||
<a name="l00142"></a>00142 <span class="keywordflow">break</span>;
|
||||
<a name="l00143"></a>00143
|
||||
<a name="l00144"></a>00144 <span class="keywordflow">case</span> <span class="charliteral">'c'</span>:
|
||||
<a name="l00145"></a>00145 useCenter = 1;
|
||||
<a name="l00146"></a>00146
|
||||
<a name="l00147"></a>00147 <span class="keywordflow">case</span> <span class="charliteral">'o'</span>:
|
||||
<a name="l00148"></a>00148 tolerance = atoi(optarg);
|
||||
<a name="l00149"></a>00149 <span class="comment">/* Provide a more sane way to configure tolerance:</span>
|
||||
<a name="l00150"></a>00150 <span class="comment"> * --sane-tolerance=100 ~= INT_MAX */</span>
|
||||
<a name="l00151"></a>00151 tolerance = pow(1.2397076, tolerance);
|
||||
<a name="l00152"></a>00152 <span class="keywordflow">break</span>;
|
||||
<a name="l00153"></a>00153
|
||||
<a name="l00154"></a>00154 <span class="keywordflow">case</span> <span class="charliteral">'?'</span>:
|
||||
<a name="l00155"></a>00155 <span class="comment">/* Error routine */</span>
|
||||
<a name="l00156"></a>00156 <span class="keywordflow">break</span>;
|
||||
<a name="l00157"></a>00157
|
||||
<a name="l00158"></a>00158 <span class="keywordflow">default</span>:
|
||||
<a name="l00159"></a>00159 fprintf( stderr, <span class="stringliteral">"Unknown option..."</span> );
|
||||
<a name="l00160"></a>00160 exit(0);
|
||||
<a name="l00161"></a>00161 };
|
||||
<a name="l00162"></a>00162 }
|
||||
<a name="l00163"></a>00163
|
||||
<a name="l00164"></a>00164 <span class="comment">/* Make sure we have a linked list, </span>
|
||||
<a name="l00165"></a>00165 <span class="comment"> * and reset the linked list to go back through from the top */</span>
|
||||
<a name="l00166"></a>00166 <span class="keywordflow">if</span> ( list_head == NULL )
|
||||
<a name="l00167"></a>00167 <span class="keywordflow">return</span> 1;
|
||||
<a name="l00168"></a>00168 <span class="keywordflow">else</span>
|
||||
<a name="l00169"></a>00169 list_curr = list_head;
|
||||
<a name="l00170"></a>00170
|
||||
<a name="l00171"></a>00171 <span class="keywordflow">do</span>
|
||||
<a name="l00172"></a>00172 {
|
||||
<a name="l00173"></a>00173 sub_location = list_curr-><a class="code" href="structlist.html#ed82c7e1f3c98f1c527884c60e88ac06">fileName</a>;
|
||||
<a name="l00174"></a>00174
|
||||
<a name="l00175"></a>00175 <span class="keywordflow">if</span> (useX && useCenter)
|
||||
<a name="l00176"></a>00176 result_point = <a class="code" href="libcvautomation-xlib_8h.html#b441627acd22889f404d89c9cc4809f5">matchSubImage_X11_location_center</a>( display, sub_location, search_method, tolerance );
|
||||
<a name="l00177"></a>00177 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (useX && !useCenter)
|
||||
<a name="l00178"></a>00178 result_point = <a class="code" href="libcvautomation-xlib_8h.html#d238842448af81c09f56d1d54253c1b5">matchSubImage_X11_location</a>( display, sub_location, search_method, tolerance );
|
||||
<a name="l00179"></a>00179 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (!useX && useCenter)
|
||||
<a name="l00180"></a>00180 result_point = <a class="code" href="libcvautomation-opencv_8h.html#bed7c891adb272993912d973c0e08c27">matchSubImage_location_center</a>( root_location, sub_location, search_method, tolerance );
|
||||
<a name="l00181"></a>00181 <span class="keywordflow">else</span> <span class="comment">/* if (!useX && !useCenter) */</span>
|
||||
<a name="l00182"></a>00182 result_point = <a class="code" href="libcvautomation-opencv_8h.html#c0d3066da6b2d42251c876d12a7158c7">matchSubImage_location</a>( root_location, sub_location, search_method, tolerance );
|
||||
<a name="l00183"></a>00183
|
||||
<a name="l00184"></a>00184 <span class="keywordflow">if</span> ( result_point.x != -1 && result_point.y != -1 )
|
||||
<a name="l00185"></a>00185 <span class="comment">/* Output the match location */</span>
|
||||
<a name="l00186"></a>00186 printf (<span class="stringliteral">"%s%s%i%s%i\n"</span>, list_curr->fileName, separator,
|
||||
<a name="l00187"></a>00187 result_point.x, separator, result_point.y );
|
||||
<a name="l00188"></a>00188
|
||||
<a name="l00189"></a>00189 <span class="comment">/* With the way we allocate the list, we ensure that we always</span>
|
||||
<a name="l00190"></a>00190 <span class="comment"> * have at least one element past the end of the list.</span>
|
||||
<a name="l00191"></a>00191 <span class="comment"> * Also, deconstruct the list as we go. */</span>
|
||||
<a name="l00192"></a>00192 list_prev = list_curr;
|
||||
<a name="l00193"></a>00193 list_curr = list_curr->next;
|
||||
<a name="l00194"></a>00194 free(list_prev);
|
||||
<a name="l00195"></a>00195
|
||||
<a name="l00196"></a>00196 } <span class="keywordflow">while</span> ( list_curr->fileName != NULL );
|
||||
<a name="l00197"></a>00197
|
||||
<a name="l00198"></a>00198 <span class="comment">/* And free the final element */</span>
|
||||
<a name="l00199"></a>00199 free(list_curr);
|
||||
<a name="l00200"></a>00200
|
||||
<a name="l00201"></a>00201 <span class="comment">/* Clean up X */</span>
|
||||
<a name="l00202"></a>00202 <span class="keywordflow">if</span> (useX)
|
||||
<a name="l00203"></a>00203 XCloseDisplay(display);
|
||||
<a name="l00204"></a>00204
|
||||
<a name="l00205"></a>00205 <span class="keywordflow">return</span> 0;
|
||||
<a name="l00206"></a>00206 }
|
||||
<a name="l00207"></a>00207
|
||||
<a name="l00208"></a>00208 <span class="comment">/* </span>
|
||||
<a name="l00209"></a>00209 <span class="comment"> * === FUNCTION ======================================================================</span>
|
||||
<a name="l00210"></a>00210 <span class="comment"> * Name: usage</span>
|
||||
<a name="l00211"></a>00211 <span class="comment"> * Description: I really shouldn't need to write this</span>
|
||||
<a name="l00212"></a>00212 <span class="comment"> * =====================================================================================</span>
|
||||
<a name="l00213"></a>00213 <span class="comment"> */</span>
|
||||
<a name="l00214"></a>00214 <span class="keywordtype">void</span> <a class="code" href="cva-input_8c.html#76233dfb0e07a4db25a86e8688302693">usage</a> ( )
|
||||
<a name="l00215"></a>00215 {
|
||||
<a name="l00216"></a>00216 fprintf( stderr, <span class="stringliteral">"\</span>
|
||||
<a name="l00217"></a>00217 <span class="stringliteral">Libcvautomation version: %s\n\</span>
|
||||
<a name="l00218"></a>00218 <span class="stringliteral">cva-match -r <root_image> -s <sub_image> \n\</span>
|
||||
<a name="l00219"></a>00219 <span class="stringliteral">cva-match -s <sub_image> -x \n\</span>
|
||||
<a name="l00220"></a>00220 <span class="stringliteral">\n\</span>
|
||||
<a name="l00221"></a>00221 <span class="stringliteral">This program uses OpenCV in order to recognize an image within an image.\n\</span>
|
||||
<a name="l00222"></a>00222 <span class="stringliteral">The return code is how many matches were found - return 0 for no matches,\n\</span>
|
||||
<a name="l00223"></a>00223 <span class="stringliteral">1 for one match, etc.\n\</span>
|
||||
<a name="l00224"></a>00224 <span class="stringliteral">\n\</span>
|
||||
<a name="l00225"></a>00225 <span class="stringliteral">Usage: \n\</span>
|
||||
<a name="l00226"></a>00226 <span class="stringliteral">\n\</span>
|
||||
<a name="l00227"></a>00227 <span class="stringliteral">\t-h, --help:\t\tDisplay this usage message.\n\</span>
|
||||
<a name="l00228"></a>00228 <span class="stringliteral">\t-u, --usage:\t\tDisplay this usage message.\n\</span>
|
||||
<a name="l00229"></a>00229 <span class="stringliteral">\t-r, --root-image:\tLocation of the root image to compare against.\n\</span>
|
||||
<a name="l00230"></a>00230 <span class="stringliteral">\t-s, --sub-image:\tLocation of the sub-image to find in root.\n\</span>
|
||||
<a name="l00231"></a>00231 <span class="stringliteral">\t-p, --separator:\tSeparator of the X and Y coordinates.\n\</span>
|
||||
<a name="l00232"></a>00232 <span class="stringliteral">\t-t, --tolerance:\tSet how strict the match is - 100 is recommended lowest value.\n\</span>
|
||||
<a name="l00233"></a>00233 <span class="stringliteral">\t\t\t\tNote: When using CCORR or CCOEFF tolerance works in opposite direction,\n\</span>
|
||||
<a name="l00234"></a>00234 <span class="stringliteral">\t\t\t\tso -50 is recommended highest value.\n\</span>
|
||||
<a name="l00235"></a>00235 <span class="stringliteral">\t-m, --search-method:\tSet which method is used to search for sub-images.\n\</span>
|
||||
<a name="l00236"></a>00236 <span class="stringliteral">\t\t\t\tMethods:\n\</span>
|
||||
<a name="l00237"></a>00237 <span class="stringliteral">\t\t\t\t\tCV_TM_SQDIFF = 0\n\</span>
|
||||
<a name="l00238"></a>00238 <span class="stringliteral">\t\t\t\t\tCV_TM_SQDIFF_NORMED = 1\n\</span>
|
||||
<a name="l00239"></a>00239 <span class="stringliteral">\t\t\t\t\tCV_TM_CCORR = 2\n\</span>
|
||||
<a name="l00240"></a>00240 <span class="stringliteral">\t\t\t\t\tCV_TM_CCORR_NORMED = 3\n\</span>
|
||||
<a name="l00241"></a>00241 <span class="stringliteral">\t\t\t\t\tCV_TM_CCOEFF = 4\n\</span>
|
||||
<a name="l00242"></a>00242 <span class="stringliteral">\t\t\t\t\tCV_TM_COEFF_NORMED = 5\n\</span>
|
||||
<a name="l00243"></a>00243 <span class="stringliteral">\t-x, --x-root[=DISPLAY]:\tSet the root image to come from X11\n\</span>
|
||||
<a name="l00244"></a>00244 <span class="stringliteral">\t\t\t\tThe DISPLAY variable is optional, not specifying it will cause X\n\</span>
|
||||
<a name="l00245"></a>00245 <span class="stringliteral">\t\t\t\tto use the default display (not specifically :0.0)\n\</span>
|
||||
<a name="l00246"></a>00246 <span class="stringliteral">\t\t\t\tPlease note also that the '-x' must come at the end\n\</span>
|
||||
<a name="l00247"></a>00247 <span class="stringliteral">\t\t\t\tsince it is an optional argument.\n\</span>
|
||||
<a name="l00248"></a>00248 <span class="stringliteral">\t-c, --center:\t\tThe output points should be centered on the sub-image, rather\n\</span>
|
||||
<a name="l00249"></a>00249 <span class="stringliteral">\t\t\t\tthan the top-left corner.\n\</span>
|
||||
<a name="l00250"></a>00250 <span class="stringliteral">\t-o, --sane-tolerance:\tSet the tolerance using a scale of 1-100,\n\</span>
|
||||
<a name="l00251"></a>00251 <span class="stringliteral">\t\t\t\trather than INT_MIN to INT_MAX (100 ~= INT_MAX)\n\</span>
|
||||
<a name="l00252"></a>00252 <span class="stringliteral">\n\</span>
|
||||
<a name="l00253"></a>00253 <span class="stringliteral">If you have any questions, comments, concerns, email <%s>\n"</span>, <a class="code" href="libcvautomation_8h.html#6b6ab32b9a55421b91988946b2180bd0">LIBCVAUTOMATION_VERSION</a>, <a class="code" href="libcvautomation_8h.html#064f2ecb9f4013fd636368d0dd59e453">LIBCVAUTOMATION_BUGREPORT</a> );
|
||||
<a name="l00254"></a>00254
|
||||
<a name="l00255"></a>00255 exit (0);
|
||||
<a name="l00256"></a>00256
|
||||
<a name="l00257"></a>00257 } <span class="comment">/* ----- end of function usage ----- */</span>
|
||||
<a name="l00258"></a>00258
|
||||
<a name="l00259"></a>00259 <span class="comment">/* Doxygen Information */</span>
|
||||
<a name="l00266"></a>00266 <span class="comment">/* The biggest purpose of documenting this code is to trick doxygen into making a man page for it. */</span>
|
||||
</pre></div><hr size="1"><address style="align: right;"><small>Generated on Tue Jul 17 12:19:00 2012 for libcvautomation by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
68
cva-match_8c.html
Normal file
@ -0,0 +1,68 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>libcvautomation: cva-match.c File Reference</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li id="current"><a href="files.html"><span>Files</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="files.html"><span>File List</span></a></li>
|
||||
<li><a href="globals.html"><span>File Members</span></a></li>
|
||||
</ul></div>
|
||||
<h1>cva-match.c File Reference</h1>The cva-input program to demonstrate Libcvautomation's XTest functionality. <a href="#_details">More...</a>
|
||||
<p>
|
||||
<code>#include <stdlib.h></code><br>
|
||||
<code>#include <stdio.h></code><br>
|
||||
<code>#include <unistd.h></code><br>
|
||||
<code>#include <getopt.h></code><br>
|
||||
<code>#include <limits.h></code><br>
|
||||
<code>#include <<a class="el" href="libcvautomation_8h-source.html">libcvautomation/libcvautomation.h</a>></code><br>
|
||||
|
||||
<p>
|
||||
<a href="cva-match_8c-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
|
||||
<tr><td></td></tr>
|
||||
<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structlist.html">list</a></td></tr>
|
||||
|
||||
<tr><td colspan="2"><br><h2>Typedefs</h2></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="13f238c775b8e32baf4b94d638a11d6f"></a><!-- doxytag: member="cva-match.c::basic_list" ref="13f238c775b8e32baf4b94d638a11d6f" args="" -->
|
||||
typedef <a class="el" href="structlist.html">list</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="cva-match_8c.html#13f238c775b8e32baf4b94d638a11d6f">basic_list</a></td></tr>
|
||||
|
||||
<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="76233dfb0e07a4db25a86e8688302693"></a><!-- doxytag: member="cva-match.c::usage" ref="76233dfb0e07a4db25a86e8688302693" args="()" -->
|
||||
void </td><td class="memItemRight" valign="bottom"><b>usage</b> ()</td></tr>
|
||||
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="24e6ce6d053864cf5fb7af941457bb0e"></a><!-- doxytag: member="cva-match.c::main" ref="24e6ce6d053864cf5fb7af941457bb0e" args="(int argc, char **argv)" -->
|
||||
int </td><td class="memItemRight" valign="bottom"><a class="el" href="cva-match_8c.html#24e6ce6d053864cf5fb7af941457bb0e">main</a> (int argc, char **argv)</td></tr>
|
||||
|
||||
</table>
|
||||
<hr><a name="_details"></a><h2>Detailed Description</h2>
|
||||
The cva-input program to demonstrate Libcvautomation's XTest functionality.
|
||||
<p>
|
||||
<dl compact><dt><b>Author:</b></dt><dd>Bradlee Speice <<a href="mailto:bspeice@uncc.edu">bspeice@uncc.edu</a>> </dd></dl>
|
||||
<dl compact><dt><b>Date:</b></dt><dd>7/11/2012 </dd></dl>
|
||||
|
||||
<p>
|
||||
Definition in file <a class="el" href="cva-match_8c-source.html">cva-match.c</a>.<hr size="1"><address style="align: right;"><small>Generated on Tue Jul 17 12:19:00 2012 for libcvautomation by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
358
doxygen.css
Normal file
@ -0,0 +1,358 @@
|
||||
BODY,H1,H2,H3,H4,H5,H6,P,CENTER,TD,TH,UL,DL,DIV {
|
||||
font-family: Geneva, Arial, Helvetica, sans-serif;
|
||||
}
|
||||
BODY,TD {
|
||||
font-size: 90%;
|
||||
}
|
||||
H1 {
|
||||
text-align: center;
|
||||
font-size: 160%;
|
||||
}
|
||||
H2 {
|
||||
font-size: 120%;
|
||||
}
|
||||
H3 {
|
||||
font-size: 100%;
|
||||
}
|
||||
CAPTION { font-weight: bold }
|
||||
DIV.qindex {
|
||||
width: 100%;
|
||||
background-color: #e8eef2;
|
||||
border: 1px solid #84b0c7;
|
||||
text-align: center;
|
||||
margin: 2px;
|
||||
padding: 2px;
|
||||
line-height: 140%;
|
||||
}
|
||||
DIV.nav {
|
||||
width: 100%;
|
||||
background-color: #e8eef2;
|
||||
border: 1px solid #84b0c7;
|
||||
text-align: center;
|
||||
margin: 2px;
|
||||
padding: 2px;
|
||||
line-height: 140%;
|
||||
}
|
||||
DIV.navtab {
|
||||
background-color: #e8eef2;
|
||||
border: 1px solid #84b0c7;
|
||||
text-align: center;
|
||||
margin: 2px;
|
||||
margin-right: 15px;
|
||||
padding: 2px;
|
||||
}
|
||||
TD.navtab {
|
||||
font-size: 70%;
|
||||
}
|
||||
A.qindex {
|
||||
text-decoration: none;
|
||||
font-weight: bold;
|
||||
color: #1A419D;
|
||||
}
|
||||
A.qindex:visited {
|
||||
text-decoration: none;
|
||||
font-weight: bold;
|
||||
color: #1A419D
|
||||
}
|
||||
A.qindex:hover {
|
||||
text-decoration: none;
|
||||
background-color: #ddddff;
|
||||
}
|
||||
A.qindexHL {
|
||||
text-decoration: none;
|
||||
font-weight: bold;
|
||||
background-color: #6666cc;
|
||||
color: #ffffff;
|
||||
border: 1px double #9295C2;
|
||||
}
|
||||
A.qindexHL:hover {
|
||||
text-decoration: none;
|
||||
background-color: #6666cc;
|
||||
color: #ffffff;
|
||||
}
|
||||
A.qindexHL:visited { text-decoration: none; background-color: #6666cc; color: #ffffff }
|
||||
A.el { text-decoration: none; font-weight: bold }
|
||||
A.elRef { font-weight: bold }
|
||||
A.code:link { text-decoration: none; font-weight: normal; color: #0000FF}
|
||||
A.code:visited { text-decoration: none; font-weight: normal; color: #0000FF}
|
||||
A.codeRef:link { font-weight: normal; color: #0000FF}
|
||||
A.codeRef:visited { font-weight: normal; color: #0000FF}
|
||||
A:hover { text-decoration: none; background-color: #f2f2ff }
|
||||
DL.el { margin-left: -1cm }
|
||||
.fragment {
|
||||
font-family: monospace, fixed;
|
||||
font-size: 95%;
|
||||
}
|
||||
PRE.fragment {
|
||||
border: 1px solid #CCCCCC;
|
||||
background-color: #f5f5f5;
|
||||
margin-top: 4px;
|
||||
margin-bottom: 4px;
|
||||
margin-left: 2px;
|
||||
margin-right: 8px;
|
||||
padding-left: 6px;
|
||||
padding-right: 6px;
|
||||
padding-top: 4px;
|
||||
padding-bottom: 4px;
|
||||
}
|
||||
DIV.ah { background-color: black; font-weight: bold; color: #ffffff; margin-bottom: 3px; margin-top: 3px }
|
||||
|
||||
DIV.groupHeader {
|
||||
margin-left: 16px;
|
||||
margin-top: 12px;
|
||||
margin-bottom: 6px;
|
||||
font-weight: bold;
|
||||
}
|
||||
DIV.groupText { margin-left: 16px; font-style: italic; font-size: 90% }
|
||||
BODY {
|
||||
background: white;
|
||||
color: black;
|
||||
margin-right: 20px;
|
||||
margin-left: 20px;
|
||||
}
|
||||
TD.indexkey {
|
||||
background-color: #e8eef2;
|
||||
font-weight: bold;
|
||||
padding-right : 10px;
|
||||
padding-top : 2px;
|
||||
padding-left : 10px;
|
||||
padding-bottom : 2px;
|
||||
margin-left : 0px;
|
||||
margin-right : 0px;
|
||||
margin-top : 2px;
|
||||
margin-bottom : 2px;
|
||||
border: 1px solid #CCCCCC;
|
||||
}
|
||||
TD.indexvalue {
|
||||
background-color: #e8eef2;
|
||||
font-style: italic;
|
||||
padding-right : 10px;
|
||||
padding-top : 2px;
|
||||
padding-left : 10px;
|
||||
padding-bottom : 2px;
|
||||
margin-left : 0px;
|
||||
margin-right : 0px;
|
||||
margin-top : 2px;
|
||||
margin-bottom : 2px;
|
||||
border: 1px solid #CCCCCC;
|
||||
}
|
||||
TR.memlist {
|
||||
background-color: #f0f0f0;
|
||||
}
|
||||
P.formulaDsp { text-align: center; }
|
||||
IMG.formulaDsp { }
|
||||
IMG.formulaInl { vertical-align: middle; }
|
||||
SPAN.keyword { color: #008000 }
|
||||
SPAN.keywordtype { color: #604020 }
|
||||
SPAN.keywordflow { color: #e08000 }
|
||||
SPAN.comment { color: #800000 }
|
||||
SPAN.preprocessor { color: #806020 }
|
||||
SPAN.stringliteral { color: #002080 }
|
||||
SPAN.charliteral { color: #008080 }
|
||||
.mdescLeft {
|
||||
padding: 0px 8px 4px 8px;
|
||||
font-size: 80%;
|
||||
font-style: italic;
|
||||
background-color: #FAFAFA;
|
||||
border-top: 1px none #E0E0E0;
|
||||
border-right: 1px none #E0E0E0;
|
||||
border-bottom: 1px none #E0E0E0;
|
||||
border-left: 1px none #E0E0E0;
|
||||
margin: 0px;
|
||||
}
|
||||
.mdescRight {
|
||||
padding: 0px 8px 4px 8px;
|
||||
font-size: 80%;
|
||||
font-style: italic;
|
||||
background-color: #FAFAFA;
|
||||
border-top: 1px none #E0E0E0;
|
||||
border-right: 1px none #E0E0E0;
|
||||
border-bottom: 1px none #E0E0E0;
|
||||
border-left: 1px none #E0E0E0;
|
||||
margin: 0px;
|
||||
}
|
||||
.memItemLeft {
|
||||
padding: 1px 0px 0px 8px;
|
||||
margin: 4px;
|
||||
border-top-width: 1px;
|
||||
border-right-width: 1px;
|
||||
border-bottom-width: 1px;
|
||||
border-left-width: 1px;
|
||||
border-top-color: #E0E0E0;
|
||||
border-right-color: #E0E0E0;
|
||||
border-bottom-color: #E0E0E0;
|
||||
border-left-color: #E0E0E0;
|
||||
border-top-style: solid;
|
||||
border-right-style: none;
|
||||
border-bottom-style: none;
|
||||
border-left-style: none;
|
||||
background-color: #FAFAFA;
|
||||
font-size: 80%;
|
||||
}
|
||||
.memItemRight {
|
||||
padding: 1px 8px 0px 8px;
|
||||
margin: 4px;
|
||||
border-top-width: 1px;
|
||||
border-right-width: 1px;
|
||||
border-bottom-width: 1px;
|
||||
border-left-width: 1px;
|
||||
border-top-color: #E0E0E0;
|
||||
border-right-color: #E0E0E0;
|
||||
border-bottom-color: #E0E0E0;
|
||||
border-left-color: #E0E0E0;
|
||||
border-top-style: solid;
|
||||
border-right-style: none;
|
||||
border-bottom-style: none;
|
||||
border-left-style: none;
|
||||
background-color: #FAFAFA;
|
||||
font-size: 80%;
|
||||
}
|
||||
.memTemplItemLeft {
|
||||
padding: 1px 0px 0px 8px;
|
||||
margin: 4px;
|
||||
border-top-width: 1px;
|
||||
border-right-width: 1px;
|
||||
border-bottom-width: 1px;
|
||||
border-left-width: 1px;
|
||||
border-top-color: #E0E0E0;
|
||||
border-right-color: #E0E0E0;
|
||||
border-bottom-color: #E0E0E0;
|
||||
border-left-color: #E0E0E0;
|
||||
border-top-style: none;
|
||||
border-right-style: none;
|
||||
border-bottom-style: none;
|
||||
border-left-style: none;
|
||||
background-color: #FAFAFA;
|
||||
font-size: 80%;
|
||||
}
|
||||
.memTemplItemRight {
|
||||
padding: 1px 8px 0px 8px;
|
||||
margin: 4px;
|
||||
border-top-width: 1px;
|
||||
border-right-width: 1px;
|
||||
border-bottom-width: 1px;
|
||||
border-left-width: 1px;
|
||||
border-top-color: #E0E0E0;
|
||||
border-right-color: #E0E0E0;
|
||||
border-bottom-color: #E0E0E0;
|
||||
border-left-color: #E0E0E0;
|
||||
border-top-style: none;
|
||||
border-right-style: none;
|
||||
border-bottom-style: none;
|
||||
border-left-style: none;
|
||||
background-color: #FAFAFA;
|
||||
font-size: 80%;
|
||||
}
|
||||
.memTemplParams {
|
||||
padding: 1px 0px 0px 8px;
|
||||
margin: 4px;
|
||||
border-top-width: 1px;
|
||||
border-right-width: 1px;
|
||||
border-bottom-width: 1px;
|
||||
border-left-width: 1px;
|
||||
border-top-color: #E0E0E0;
|
||||
border-right-color: #E0E0E0;
|
||||
border-bottom-color: #E0E0E0;
|
||||
border-left-color: #E0E0E0;
|
||||
border-top-style: solid;
|
||||
border-right-style: none;
|
||||
border-bottom-style: none;
|
||||
border-left-style: none;
|
||||
color: #606060;
|
||||
background-color: #FAFAFA;
|
||||
font-size: 80%;
|
||||
}
|
||||
.search { color: #003399;
|
||||
font-weight: bold;
|
||||
}
|
||||
FORM.search {
|
||||
margin-bottom: 0px;
|
||||
margin-top: 0px;
|
||||
}
|
||||
INPUT.search { font-size: 75%;
|
||||
color: #000080;
|
||||
font-weight: normal;
|
||||
background-color: #e8eef2;
|
||||
}
|
||||
TD.tiny { font-size: 75%;
|
||||
}
|
||||
a {
|
||||
color: #1A41A8;
|
||||
}
|
||||
a:visited {
|
||||
color: #2A3798;
|
||||
}
|
||||
.dirtab { padding: 4px;
|
||||
border-collapse: collapse;
|
||||
border: 1px solid #84b0c7;
|
||||
}
|
||||
TH.dirtab { background: #e8eef2;
|
||||
font-weight: bold;
|
||||
}
|
||||
HR { height: 1px;
|
||||
border: none;
|
||||
border-top: 1px solid black;
|
||||
}
|
||||
|
||||
/* Style for detailed member documentation */
|
||||
.memtemplate {
|
||||
font-size: 80%;
|
||||
color: #606060;
|
||||
font-weight: normal;
|
||||
}
|
||||
.memnav {
|
||||
background-color: #e8eef2;
|
||||
border: 1px solid #84b0c7;
|
||||
text-align: center;
|
||||
margin: 2px;
|
||||
margin-right: 15px;
|
||||
padding: 2px;
|
||||
}
|
||||
.memitem {
|
||||
padding: 4px;
|
||||
background-color: #eef3f5;
|
||||
border-width: 1px;
|
||||
border-style: solid;
|
||||
border-color: #dedeee;
|
||||
-moz-border-radius: 8px 8px 8px 8px;
|
||||
}
|
||||
.memname {
|
||||
white-space: nowrap;
|
||||
font-weight: bold;
|
||||
}
|
||||
.memdoc{
|
||||
padding-left: 10px;
|
||||
}
|
||||
.memproto {
|
||||
background-color: #d5e1e8;
|
||||
width: 100%;
|
||||
border-width: 1px;
|
||||
border-style: solid;
|
||||
border-color: #84b0c7;
|
||||
font-weight: bold;
|
||||
-moz-border-radius: 8px 8px 8px 8px;
|
||||
}
|
||||
.paramkey {
|
||||
text-align: right;
|
||||
}
|
||||
.paramtype {
|
||||
white-space: nowrap;
|
||||
}
|
||||
.paramname {
|
||||
color: #602020;
|
||||
font-style: italic;
|
||||
}
|
||||
/* End Styling for detailed member documentation */
|
||||
|
||||
/* for the tree view */
|
||||
.ftvtree {
|
||||
font-family: sans-serif;
|
||||
margin:0.5em;
|
||||
}
|
||||
.directory { font-size: 9pt; font-weight: bold; }
|
||||
.directory h3 { margin: 0px; margin-top: 1em; font-size: 11pt; }
|
||||
.directory > h3 { margin-top: 0; }
|
||||
.directory p { margin: 0px; white-space: nowrap; }
|
||||
.directory div { display: none; margin: 0px; }
|
||||
.directory img { vertical-align: -30%; }
|
||||
|
BIN
doxygen.png
Normal file
After Width: | Height: | Size: 1.3 KiB |
45
files.html
Normal file
@ -0,0 +1,45 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>libcvautomation: File Index</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li id="current"><a href="files.html"><span>Files</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li id="current"><a href="files.html"><span>File List</span></a></li>
|
||||
<li><a href="globals.html"><span>File Members</span></a></li>
|
||||
</ul></div>
|
||||
<h1>libcvautomation File List</h1>Here is a list of all documented files with brief descriptions:<table>
|
||||
<tr><td class="indexkey"><a class="el" href="cva-input_8c.html">cva-input.c</a> <a href="cva-input_8c-source.html">[code]</a></td><td class="indexvalue">The cva-input program to demonstrate Libcvautomation's XTest functionality </td></tr>
|
||||
<tr><td class="indexkey"><a class="el" href="cva-match_8c.html">cva-match.c</a> <a href="cva-match_8c-source.html">[code]</a></td><td class="indexvalue">The cva-input program to demonstrate Libcvautomation's XTest functionality </td></tr>
|
||||
<tr><td class="indexkey"><a class="el" href="libcvautomation-opencv_8h.html">libcvautomation-opencv.h</a> <a href="libcvautomation-opencv_8h-source.html">[code]</a></td><td class="indexvalue">The source code to access libcv from inside libcvautomation </td></tr>
|
||||
<tr><td class="indexkey"><a class="el" href="libcvautomation-xlib_8h.html">libcvautomation-xlib.h</a> <a href="libcvautomation-xlib_8h-source.html">[code]</a></td><td class="indexvalue">The source code to access Xlib from inside libcvautomation </td></tr>
|
||||
<tr><td class="indexkey"><a class="el" href="libcvautomation-xtest_8h.html">libcvautomation-xtest.h</a> <a href="libcvautomation-xtest_8h-source.html">[code]</a></td><td class="indexvalue">The source code to access the XTest extension inside libcvautomation </td></tr>
|
||||
<tr><td class="indexkey"><a class="el" href="libcvautomation_8h.html">libcvautomation.h</a> <a href="libcvautomation_8h-source.html">[code]</a></td><td class="indexvalue">The top-level include for all projects involving libcvautomation </td></tr>
|
||||
<tr><td class="indexkey"><b>xautomation_kbd.h</b> <a href="xautomation__kbd_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
|
||||
<tr><td class="indexkey"><b>xautomation_keysym_map.h</b> <a href="xautomation__keysym__map_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
|
||||
<tr><td class="indexkey"><b>xautomation_multikey_map.h</b> <a href="xautomation__multikey__map_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
|
||||
</table>
|
||||
<hr size="1"><address style="align: right;"><small>Generated on Tue Jul 17 12:19:00 2012 for libcvautomation by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
BIN
form_0.png
Normal file
After Width: | Height: | Size: 650 B |
BIN
form_1.png
Normal file
After Width: | Height: | Size: 179 B |
BIN
form_10.png
Normal file
After Width: | Height: | Size: 519 B |
BIN
form_2.png
Normal file
After Width: | Height: | Size: 1.0 KiB |
BIN
form_3.png
Normal file
After Width: | Height: | Size: 1.5 KiB |
BIN
form_4.png
Normal file
After Width: | Height: | Size: 1.0 KiB |
BIN
form_5.png
Normal file
After Width: | Height: | Size: 1.5 KiB |
BIN
form_6.png
Normal file
After Width: | Height: | Size: 1.0 KiB |
BIN
form_7.png
Normal file
After Width: | Height: | Size: 2.2 KiB |
BIN
form_8.png
Normal file
After Width: | Height: | Size: 1.6 KiB |
BIN
form_9.png
Normal file
After Width: | Height: | Size: 238 B |
11
formula.repository
Normal file
@ -0,0 +1,11 @@
|
||||
\form#0:$ T(x) = (10^{\frac{\log{INT\_MAX}}{\lambda}})^x $
|
||||
\form#1:$ \lambda $
|
||||
\form#2:$R(x,y) = \sum_{x',y'} (T(x',y') - I(x + x', y+y'))^2 $
|
||||
\form#3:$ R(x,y) = \frac{\sum_{x',y'}(T(x',y') - I(x + x', y + y'))^2}{ \sqrt{\sum_{x',y'}T(x',y')^2 \cdot \sum_{x',y'}I(x + x', y + y')^2}} $
|
||||
\form#4:$ R(x,y)= \sum _{x',y'} (T(x',y') \cdot I(x+x',y+y')) $
|
||||
\form#5:$ R(x,y)= \frac{\sum_{x',y'} (T(x',y') \cdot I'(x+x',y+y'))}{\sqrt{\sum_{x',y'}T(x',y')^2 \cdot \sum_{x',y'} I(x+x',y+y')^2}} $
|
||||
\form#6:$ R(x,y)= \sum _{x',y'} (T'(x',y') \cdot I(x+x',y+y')) $
|
||||
\form#7:$ \begin{array}{l} T'(x',y')=T(x',y') - 1/(w \cdot h) \cdot \sum _{x'',y''} T(x'',y'') \\ I'(x+x',y+y')=I(x+x',y+y') - 1/(w \cdot h) \cdot \sum _{x'',y''} I(x+x'',y+y'') \end{array} $
|
||||
\form#8:$ R(x,y)= \frac{ \sum_{x',y'} (T'(x',y') \cdot I'(x+x',y+y')) }{ \sqrt{\sum_{x',y'}T'(x',y')^2 \cdot \sum_{x',y'} I'(x+x',y+y')^2} } $
|
||||
\form#9:$ 1 \approx 0 $
|
||||
\form#10:$ 100 \approx \c INT_MAX $
|
52
functions.html
Normal file
@ -0,0 +1,52 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>libcvautomation: Class Members</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li id="current"><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="annotated.html"><span>Class List</span></a></li>
|
||||
<li id="current"><a href="functions.html"><span>Class Members</span></a></li>
|
||||
</ul></div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li id="current"><a href="functions.html"><span>All</span></a></li>
|
||||
<li><a href="functions_vars.html"><span>Variables</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
Here is a list of all documented class members with links to the class documentation for each member:
|
||||
<p>
|
||||
<ul>
|
||||
<li>cvaImage
|
||||
: <a class="el" href="structcvautomationList.html#7608e8c8e792f6d7432841c94016bd50">cvautomationList</a><li>fileName
|
||||
: <a class="el" href="structlist.html#ed82c7e1f3c98f1c527884c60e88ac06">list</a>, <a class="el" href="structcvautomationList.html#81c1bcaa3616b80a839eead6cde7a652">cvautomationList</a><li>next
|
||||
: <a class="el" href="structlist.html#17ba8e20337279fa9dfa74ac99c21bc1">list</a><li>resultPoint
|
||||
: <a class="el" href="structcvautomationList.html#44326574b58698c640110e846c9131fc">cvautomationList</a><li>searchMethod
|
||||
: <a class="el" href="structcvautomationList.html#c29f1b89cd1e02ef1ece7f9aacfdf831">cvautomationList</a><li>tolerance
|
||||
: <a class="el" href="structcvautomationList.html#d2ad67f51290f2291e8aec5bde3f049c">cvautomationList</a><li>x
|
||||
: <a class="el" href="structcvaPoint.html#4b281115ba26b80bfc9ab6250b37d01d">cvaPoint</a><li>y
|
||||
: <a class="el" href="structcvaPoint.html#3e7df78670c23fb2114a386750edbf1e">cvaPoint</a></ul>
|
||||
<hr size="1"><address style="align: right;"><small>Generated on Tue Jul 17 12:19:00 2012 for libcvautomation by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
52
functions_vars.html
Normal file
@ -0,0 +1,52 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>libcvautomation: Class Members - Variables</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li id="current"><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="annotated.html"><span>Class List</span></a></li>
|
||||
<li id="current"><a href="functions.html"><span>Class Members</span></a></li>
|
||||
</ul></div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="functions.html"><span>All</span></a></li>
|
||||
<li id="current"><a href="functions_vars.html"><span>Variables</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<p>
|
||||
<ul>
|
||||
<li>cvaImage
|
||||
: <a class="el" href="structcvautomationList.html#7608e8c8e792f6d7432841c94016bd50">cvautomationList</a><li>fileName
|
||||
: <a class="el" href="structlist.html#ed82c7e1f3c98f1c527884c60e88ac06">list</a>, <a class="el" href="structcvautomationList.html#81c1bcaa3616b80a839eead6cde7a652">cvautomationList</a><li>next
|
||||
: <a class="el" href="structlist.html#17ba8e20337279fa9dfa74ac99c21bc1">list</a><li>resultPoint
|
||||
: <a class="el" href="structcvautomationList.html#44326574b58698c640110e846c9131fc">cvautomationList</a><li>searchMethod
|
||||
: <a class="el" href="structcvautomationList.html#c29f1b89cd1e02ef1ece7f9aacfdf831">cvautomationList</a><li>tolerance
|
||||
: <a class="el" href="structcvautomationList.html#d2ad67f51290f2291e8aec5bde3f049c">cvautomationList</a><li>x
|
||||
: <a class="el" href="structcvaPoint.html#4b281115ba26b80bfc9ab6250b37d01d">cvaPoint</a><li>y
|
||||
: <a class="el" href="structcvaPoint.html#3e7df78670c23fb2114a386750edbf1e">cvaPoint</a></ul>
|
||||
<hr size="1"><address style="align: right;"><small>Generated on Tue Jul 17 12:19:00 2012 for libcvautomation by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
116
globals.html
Normal file
@ -0,0 +1,116 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>libcvautomation: Class Members</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li id="current"><a href="files.html"><span>Files</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="files.html"><span>File List</span></a></li>
|
||||
<li id="current"><a href="globals.html"><span>File Members</span></a></li>
|
||||
</ul></div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li id="current"><a href="globals.html"><span>All</span></a></li>
|
||||
<li><a href="globals_func.html"><span>Functions</span></a></li>
|
||||
<li><a href="globals_type.html"><span>Typedefs</span></a></li>
|
||||
<li><a href="globals_defs.html"><span>Defines</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="#index_b"><span>b</span></a></li>
|
||||
<li><a href="#index_c"><span>c</span></a></li>
|
||||
<li><a href="#index_i"><span>i</span></a></li>
|
||||
<li><a href="#index_l"><span>l</span></a></li>
|
||||
<li><a href="#index_m"><span>m</span></a></li>
|
||||
<li><a href="#index_u"><span>u</span></a></li>
|
||||
<li><a href="#index_x"><span>x</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<p>
|
||||
Here is a list of all documented file members with links to the documentation:
|
||||
<p>
|
||||
<h3><a class="anchor" name="index_b">- b -</a></h3><ul>
|
||||
<li>basic_list
|
||||
: <a class="el" href="cva-match_8c.html#13f238c775b8e32baf4b94d638a11d6f">cva-match.c</a></ul>
|
||||
<h3><a class="anchor" name="index_c">- c -</a></h3><ul>
|
||||
<li>checkXTEEnabled()
|
||||
: <a class="el" href="cva-input_8c.html#21a0cec68b592a986793eb77804e776f">cva-input.c</a><li>COMMAND_STR_LEN
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#066e8fa570bba320a3c0a0d44f7e5c4d">libcvautomation-xtest.h</a><li>cvaCloseDisplay()
|
||||
: <a class="el" href="libcvautomation-xlib_8h.html#1c8a205c0b2f4f7a28d1ce51d5225871">libcvautomation-xlib.h</a><li>cvaOpenDisplay()
|
||||
: <a class="el" href="libcvautomation-xlib_8h.html#a6e348c2e829e1addb446160f54723a0">libcvautomation-xlib.h</a></ul>
|
||||
<h3><a class="anchor" name="index_i">- i -</a></h3><ul>
|
||||
<li>IS_CMD
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#3409a0d4da000192a6561485e1288dfc">libcvautomation-xtest.h</a></ul>
|
||||
<h3><a class="anchor" name="index_l">- l -</a></h3><ul>
|
||||
<li>LIBCVAUTOMATION_BUGREPORT
|
||||
: <a class="el" href="libcvautomation_8h.html#064f2ecb9f4013fd636368d0dd59e453">libcvautomation.h</a><li>LIBCVAUTOMATION_VERSION
|
||||
: <a class="el" href="libcvautomation_8h.html#6b6ab32b9a55421b91988946b2180bd0">libcvautomation.h</a></ul>
|
||||
<h3><a class="anchor" name="index_m">- m -</a></h3><ul>
|
||||
<li>main()
|
||||
: <a class="el" href="cva-match_8c.html#24e6ce6d053864cf5fb7af941457bb0e">cva-match.c</a>, <a class="el" href="cva-input_8c.html#24e6ce6d053864cf5fb7af941457bb0e">cva-input.c</a><li>matchSubImage()
|
||||
: <a class="el" href="libcvautomation-opencv_8h.html#297b9b5b22f77b65308d4057cff845f7">libcvautomation-opencv.h</a><li>matchSubImage_a()
|
||||
: <a class="el" href="libcvautomation-opencv_8h.html#994981e2d31d5fb62fc3b227e36ebf87">libcvautomation-opencv.h</a><li>matchSubImage_a_center()
|
||||
: <a class="el" href="libcvautomation-opencv_8h.html#08ee04814a6cf9abde0bfa6e8baf71de">libcvautomation-opencv.h</a><li>matchSubImage_a_location()
|
||||
: <a class="el" href="libcvautomation-opencv_8h.html#22a093abc57d2a5123cb50c2dc6e7dd2">libcvautomation-opencv.h</a><li>matchSubImage_a_location_center()
|
||||
: <a class="el" href="libcvautomation-opencv_8h.html#4b591c5b0a520f3d2c41345f9cd92fa5">libcvautomation-opencv.h</a><li>matchSubImage_center()
|
||||
: <a class="el" href="libcvautomation-opencv_8h.html#5bf9db7dfc5674e40180937b0c7787f3">libcvautomation-opencv.h</a><li>matchSubImage_location()
|
||||
: <a class="el" href="libcvautomation-opencv_8h.html#c0d3066da6b2d42251c876d12a7158c7">libcvautomation-opencv.h</a><li>matchSubImage_location_center()
|
||||
: <a class="el" href="libcvautomation-opencv_8h.html#bed7c891adb272993912d973c0e08c27">libcvautomation-opencv.h</a><li>matchSubImage_X11()
|
||||
: <a class="el" href="libcvautomation-xlib_8h.html#8fbf1f5f968670a03c4c8e31f5afdaed">libcvautomation-xlib.h</a><li>matchSubImage_X11_center()
|
||||
: <a class="el" href="libcvautomation-xlib_8h.html#fb70c8eec779a6696b3df5af5bca1a6d">libcvautomation-xlib.h</a><li>matchSubImage_X11_location()
|
||||
: <a class="el" href="libcvautomation-xlib_8h.html#d238842448af81c09f56d1d54253c1b5">libcvautomation-xlib.h</a><li>matchSubImage_X11_location_center()
|
||||
: <a class="el" href="libcvautomation-xlib_8h.html#b441627acd22889f404d89c9cc4809f5">libcvautomation-xlib.h</a></ul>
|
||||
<h3><a class="anchor" name="index_u">- u -</a></h3><ul>
|
||||
<li>usage()
|
||||
: <a class="el" href="cva-input_8c.html#76233dfb0e07a4db25a86e8688302693">cva-input.c</a></ul>
|
||||
<h3><a class="anchor" name="index_x">- x -</a></h3><ul>
|
||||
<li>xte_clickKey()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#5ce1dbeb65bba1613e4e6619857b1746">libcvautomation-xtest.h</a><li>xte_clickKeyStr()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#b327a24f45f673a4aeab6dfb7b9e411a">libcvautomation-xtest.h</a><li>xte_clickMouse()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#e795b36e13508632ae69e9141dbd9b71">libcvautomation-xtest.h</a><li>xte_clickMouseImage()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#42e82ace64c71fb6cf247ac16ee95da1">libcvautomation-xtest.h</a><li>xte_clickMouseImage_center()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#a8f71206992c631e8e2827424b3d6090">libcvautomation-xtest.h</a><li>xte_clickMouseImage_location()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#db6d976b6b4849a295e02aac2567fa86">libcvautomation-xtest.h</a><li>xte_clickMouseImage_location_center()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#25b98d2e0780ae8f8afc152e620ceaaf">libcvautomation-xtest.h</a><li>xte_clickMouseRXY()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#94f3c779c24b95d5fb743787a507d49e">libcvautomation-xtest.h</a><li>xte_clickMouseXY()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#88f51bec45b626f4bf2f1eaf0eb2b570">libcvautomation-xtest.h</a><li>xte_commandString()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#382af05e5669ea2cbb22608e41cbc49a">libcvautomation-xtest.h</a><li>xte_hoverMouseImage()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#8827d93f5299e4aa99acc7c2c1d398c4">libcvautomation-xtest.h</a><li>xte_hoverMouseImage_center()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#9e8b30c7b59467dba853e467153123db">libcvautomation-xtest.h</a><li>xte_hoverMouseImage_location()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#217328d995073752cd182098f18b3397">libcvautomation-xtest.h</a><li>xte_hoverMouseImage_location_center()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#2b16677d20493c1c4f96c6e43b3fc0b7">libcvautomation-xtest.h</a><li>xte_hoverMouseRXY()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#8bb400fb20f4416f6f93465935a76be2">libcvautomation-xtest.h</a><li>xte_hoverMouseXY()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#dcc93e8aa9a0fd445c3c1971e35e194b">libcvautomation-xtest.h</a><li>xte_keyDown()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#04ded64c2bd31804cc109502530890c0">libcvautomation-xtest.h</a><li>xte_keyUp()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#574402ddf94858b340254a4e444fa404">libcvautomation-xtest.h</a><li>xte_mouseDown()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#09ef864a45f24c7f682c96368a62be4d">libcvautomation-xtest.h</a><li>xte_mouseJiggle()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#2431de2ae4b296a9a91da6e20250a67b">libcvautomation-xtest.h</a><li>xte_mouseUp()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#68a7da112f124b61799162923657116a">libcvautomation-xtest.h</a><li>xte_pointerLocation()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#6b2aaf7275e7671691ff9e09d3365bdb">libcvautomation-xtest.h</a><li>xte_XTestSupported()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#d054a30613fdebf388218ce7c7ba8eaa">libcvautomation-xtest.h</a></ul>
|
||||
<hr size="1"><address style="align: right;"><small>Generated on Tue Jul 17 12:19:00 2012 for libcvautomation by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
50
globals_defs.html
Normal file
@ -0,0 +1,50 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>libcvautomation: Class Members</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li id="current"><a href="files.html"><span>Files</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="files.html"><span>File List</span></a></li>
|
||||
<li id="current"><a href="globals.html"><span>File Members</span></a></li>
|
||||
</ul></div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="globals.html"><span>All</span></a></li>
|
||||
<li><a href="globals_func.html"><span>Functions</span></a></li>
|
||||
<li><a href="globals_type.html"><span>Typedefs</span></a></li>
|
||||
<li id="current"><a href="globals_defs.html"><span>Defines</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<p>
|
||||
<ul>
|
||||
<li>COMMAND_STR_LEN
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#066e8fa570bba320a3c0a0d44f7e5c4d">libcvautomation-xtest.h</a><li>IS_CMD
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#3409a0d4da000192a6561485e1288dfc">libcvautomation-xtest.h</a><li>LIBCVAUTOMATION_BUGREPORT
|
||||
: <a class="el" href="libcvautomation_8h.html#064f2ecb9f4013fd636368d0dd59e453">libcvautomation.h</a><li>LIBCVAUTOMATION_VERSION
|
||||
: <a class="el" href="libcvautomation_8h.html#6b6ab32b9a55421b91988946b2180bd0">libcvautomation.h</a></ul>
|
||||
<hr size="1"><address style="align: right;"><small>Generated on Tue Jul 17 12:19:00 2012 for libcvautomation by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
102
globals_func.html
Normal file
@ -0,0 +1,102 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>libcvautomation: Class Members</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li id="current"><a href="files.html"><span>Files</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="files.html"><span>File List</span></a></li>
|
||||
<li id="current"><a href="globals.html"><span>File Members</span></a></li>
|
||||
</ul></div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="globals.html"><span>All</span></a></li>
|
||||
<li id="current"><a href="globals_func.html"><span>Functions</span></a></li>
|
||||
<li><a href="globals_type.html"><span>Typedefs</span></a></li>
|
||||
<li><a href="globals_defs.html"><span>Defines</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="#index_c"><span>c</span></a></li>
|
||||
<li><a href="#index_m"><span>m</span></a></li>
|
||||
<li><a href="#index_u"><span>u</span></a></li>
|
||||
<li><a href="#index_x"><span>x</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<p>
|
||||
|
||||
<p>
|
||||
<h3><a class="anchor" name="index_c">- c -</a></h3><ul>
|
||||
<li>checkXTEEnabled()
|
||||
: <a class="el" href="cva-input_8c.html#21a0cec68b592a986793eb77804e776f">cva-input.c</a><li>cvaCloseDisplay()
|
||||
: <a class="el" href="libcvautomation-xlib_8h.html#1c8a205c0b2f4f7a28d1ce51d5225871">libcvautomation-xlib.h</a><li>cvaOpenDisplay()
|
||||
: <a class="el" href="libcvautomation-xlib_8h.html#a6e348c2e829e1addb446160f54723a0">libcvautomation-xlib.h</a></ul>
|
||||
<h3><a class="anchor" name="index_m">- m -</a></h3><ul>
|
||||
<li>main()
|
||||
: <a class="el" href="cva-match_8c.html#24e6ce6d053864cf5fb7af941457bb0e">cva-match.c</a>, <a class="el" href="cva-input_8c.html#24e6ce6d053864cf5fb7af941457bb0e">cva-input.c</a><li>matchSubImage()
|
||||
: <a class="el" href="libcvautomation-opencv_8h.html#297b9b5b22f77b65308d4057cff845f7">libcvautomation-opencv.h</a><li>matchSubImage_a()
|
||||
: <a class="el" href="libcvautomation-opencv_8h.html#994981e2d31d5fb62fc3b227e36ebf87">libcvautomation-opencv.h</a><li>matchSubImage_a_center()
|
||||
: <a class="el" href="libcvautomation-opencv_8h.html#08ee04814a6cf9abde0bfa6e8baf71de">libcvautomation-opencv.h</a><li>matchSubImage_a_location()
|
||||
: <a class="el" href="libcvautomation-opencv_8h.html#22a093abc57d2a5123cb50c2dc6e7dd2">libcvautomation-opencv.h</a><li>matchSubImage_a_location_center()
|
||||
: <a class="el" href="libcvautomation-opencv_8h.html#4b591c5b0a520f3d2c41345f9cd92fa5">libcvautomation-opencv.h</a><li>matchSubImage_center()
|
||||
: <a class="el" href="libcvautomation-opencv_8h.html#5bf9db7dfc5674e40180937b0c7787f3">libcvautomation-opencv.h</a><li>matchSubImage_location()
|
||||
: <a class="el" href="libcvautomation-opencv_8h.html#c0d3066da6b2d42251c876d12a7158c7">libcvautomation-opencv.h</a><li>matchSubImage_location_center()
|
||||
: <a class="el" href="libcvautomation-opencv_8h.html#bed7c891adb272993912d973c0e08c27">libcvautomation-opencv.h</a><li>matchSubImage_X11()
|
||||
: <a class="el" href="libcvautomation-xlib_8h.html#8fbf1f5f968670a03c4c8e31f5afdaed">libcvautomation-xlib.h</a><li>matchSubImage_X11_center()
|
||||
: <a class="el" href="libcvautomation-xlib_8h.html#fb70c8eec779a6696b3df5af5bca1a6d">libcvautomation-xlib.h</a><li>matchSubImage_X11_location()
|
||||
: <a class="el" href="libcvautomation-xlib_8h.html#d238842448af81c09f56d1d54253c1b5">libcvautomation-xlib.h</a><li>matchSubImage_X11_location_center()
|
||||
: <a class="el" href="libcvautomation-xlib_8h.html#b441627acd22889f404d89c9cc4809f5">libcvautomation-xlib.h</a></ul>
|
||||
<h3><a class="anchor" name="index_u">- u -</a></h3><ul>
|
||||
<li>usage()
|
||||
: <a class="el" href="cva-input_8c.html#76233dfb0e07a4db25a86e8688302693">cva-input.c</a></ul>
|
||||
<h3><a class="anchor" name="index_x">- x -</a></h3><ul>
|
||||
<li>xte_clickKey()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#5ce1dbeb65bba1613e4e6619857b1746">libcvautomation-xtest.h</a><li>xte_clickKeyStr()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#b327a24f45f673a4aeab6dfb7b9e411a">libcvautomation-xtest.h</a><li>xte_clickMouse()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#e795b36e13508632ae69e9141dbd9b71">libcvautomation-xtest.h</a><li>xte_clickMouseImage()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#42e82ace64c71fb6cf247ac16ee95da1">libcvautomation-xtest.h</a><li>xte_clickMouseImage_center()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#a8f71206992c631e8e2827424b3d6090">libcvautomation-xtest.h</a><li>xte_clickMouseImage_location()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#db6d976b6b4849a295e02aac2567fa86">libcvautomation-xtest.h</a><li>xte_clickMouseImage_location_center()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#25b98d2e0780ae8f8afc152e620ceaaf">libcvautomation-xtest.h</a><li>xte_clickMouseRXY()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#94f3c779c24b95d5fb743787a507d49e">libcvautomation-xtest.h</a><li>xte_clickMouseXY()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#88f51bec45b626f4bf2f1eaf0eb2b570">libcvautomation-xtest.h</a><li>xte_commandString()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#382af05e5669ea2cbb22608e41cbc49a">libcvautomation-xtest.h</a><li>xte_hoverMouseImage()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#8827d93f5299e4aa99acc7c2c1d398c4">libcvautomation-xtest.h</a><li>xte_hoverMouseImage_center()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#9e8b30c7b59467dba853e467153123db">libcvautomation-xtest.h</a><li>xte_hoverMouseImage_location()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#217328d995073752cd182098f18b3397">libcvautomation-xtest.h</a><li>xte_hoverMouseImage_location_center()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#2b16677d20493c1c4f96c6e43b3fc0b7">libcvautomation-xtest.h</a><li>xte_hoverMouseRXY()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#8bb400fb20f4416f6f93465935a76be2">libcvautomation-xtest.h</a><li>xte_hoverMouseXY()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#dcc93e8aa9a0fd445c3c1971e35e194b">libcvautomation-xtest.h</a><li>xte_keyDown()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#04ded64c2bd31804cc109502530890c0">libcvautomation-xtest.h</a><li>xte_keyUp()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#574402ddf94858b340254a4e444fa404">libcvautomation-xtest.h</a><li>xte_mouseDown()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#09ef864a45f24c7f682c96368a62be4d">libcvautomation-xtest.h</a><li>xte_mouseJiggle()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#2431de2ae4b296a9a91da6e20250a67b">libcvautomation-xtest.h</a><li>xte_mouseUp()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#68a7da112f124b61799162923657116a">libcvautomation-xtest.h</a><li>xte_pointerLocation()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#6b2aaf7275e7671691ff9e09d3365bdb">libcvautomation-xtest.h</a><li>xte_XTestSupported()
|
||||
: <a class="el" href="libcvautomation-xtest_8h.html#d054a30613fdebf388218ce7c7ba8eaa">libcvautomation-xtest.h</a></ul>
|
||||
<hr size="1"><address style="align: right;"><small>Generated on Tue Jul 17 12:19:00 2012 for libcvautomation by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
47
globals_type.html
Normal file
@ -0,0 +1,47 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>libcvautomation: Class Members</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li id="current"><a href="files.html"><span>Files</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="files.html"><span>File List</span></a></li>
|
||||
<li id="current"><a href="globals.html"><span>File Members</span></a></li>
|
||||
</ul></div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="globals.html"><span>All</span></a></li>
|
||||
<li><a href="globals_func.html"><span>Functions</span></a></li>
|
||||
<li id="current"><a href="globals_type.html"><span>Typedefs</span></a></li>
|
||||
<li><a href="globals_defs.html"><span>Defines</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<p>
|
||||
<ul>
|
||||
<li>basic_list
|
||||
: <a class="el" href="cva-match_8c.html#13f238c775b8e32baf4b94d638a11d6f">cva-match.c</a></ul>
|
||||
<hr size="1"><address style="align: right;"><small>Generated on Tue Jul 17 12:19:00 2012 for libcvautomation by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
44
index.html
Normal file
@ -0,0 +1,44 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>libcvautomation: Libcvautomation</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li id="current"><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<h1>Libcvautomation</h1>
|
||||
<p>
|
||||
<h3 align="center">1.2 </h3><dl compact><dt><b>Author:</b></dt><dd>Bradlee Speice <<a href="mailto:bspeice@uncc.edu">bspeice@uncc.edu</a>> </dd></dl>
|
||||
<dl compact><dt><b>Date:</b></dt><dd>7/11/2012 </dd></dl>
|
||||
<h2><a class="anchor" name="intro">
|
||||
Introduction</a></h2>
|
||||
Welcome to Libcvautomation! Libcvautomation is a GUI automation and testing tool based on image recognition and response. This program was designed as a direct replacement for <a href="http://sikuli.org">Sikuli</a> and <a href="https://wiki.ubuntu.com/Xpresser">Xpresser</a>. I was having incredible difficulty getting either of these solutions to work - Sikuli would crash whenever I tried to take a screenshot, and Xpresser was both too new for our RHEL 5 systems, but also died, or didn't work, or something else. I really liked the way each of these programs approached GUI automation, but they simply didn't work. Additionally, I wanted to create a simple solution - it does what you want it to, and that's it. <h2><a class="anchor" name="how_it_works">
|
||||
How Libcvautomation Works</a></h2>
|
||||
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 <a class="el" href="libcvautomation-xtest_8h.html">libcvautomation-xtest.h</a> 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 <a class="el" href="libcvautomation-xlib_8h.html#8fbf1f5f968670a03c4c8e31f5afdaed">matchSubImage_X11()</a> that allow you to match an image against the X11 root window in place. This means no more <code>'xwd | convert "<out_name>"'</code>. <h2><a class="anchor" name="using">
|
||||
Using Libcvautomation</a></h2>
|
||||
So how does one go about using libcvautomation? <br>
|
||||
I'm so glad you asked! I've provided a few reference programs - <code>cva-match</code> and <code>cva-input</code> - 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 <a class="el" href="writing_app_tests.html">Writing Application Tests</a> for more information on that. <h2><a class="anchor" name="questions">
|
||||
Questions? Comments? Concerns?</a></h2>
|
||||
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>. <hr size="1"><address style="align: right;"><small>Generated on Tue Jul 17 12:19:00 2012 for libcvautomation by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
117
installdox
Executable file
@ -0,0 +1,117 @@
|
||||
#!/usr/bin/perl
|
||||
|
||||
%subst = ( );
|
||||
$quiet = 0;
|
||||
|
||||
if (open(F,"search.cfg"))
|
||||
{
|
||||
$_=<F> ; s/[ \t\n]*$//g ; $subst{"_doc"} = $_;
|
||||
$_=<F> ; s/[ \t\n]*$//g ; $subst{"_cgi"} = $_;
|
||||
}
|
||||
|
||||
while ( @ARGV ) {
|
||||
$_ = shift @ARGV;
|
||||
if ( s/^-// ) {
|
||||
if ( /^l(.*)/ ) {
|
||||
$v = ($1 eq "") ? shift @ARGV : $1;
|
||||
($v =~ /\/$/) || ($v .= "/");
|
||||
$_ = $v;
|
||||
if ( /(.+)\@(.+)/ ) {
|
||||
if ( exists $subst{$1} ) {
|
||||
$subst{$1} = $2;
|
||||
} else {
|
||||
print STDERR "Unknown tag file $1 given with option -l\n";
|
||||
&usage();
|
||||
}
|
||||
} else {
|
||||
print STDERR "Argument $_ is invalid for option -l\n";
|
||||
&usage();
|
||||
}
|
||||
}
|
||||
elsif ( /^q/ ) {
|
||||
$quiet = 1;
|
||||
}
|
||||
elsif ( /^\?|^h/ ) {
|
||||
&usage();
|
||||
}
|
||||
else {
|
||||
print STDERR "Illegal option -$_\n";
|
||||
&usage();
|
||||
}
|
||||
}
|
||||
else {
|
||||
push (@files, $_ );
|
||||
}
|
||||
}
|
||||
|
||||
foreach $sub (keys %subst)
|
||||
{
|
||||
if ( $subst{$sub} eq "" )
|
||||
{
|
||||
print STDERR "No substitute given for tag file `$sub'\n";
|
||||
&usage();
|
||||
}
|
||||
elsif ( ! $quiet && $sub ne "_doc" && $sub ne "_cgi" )
|
||||
{
|
||||
print "Substituting $subst{$sub} for each occurence of tag file $sub\n";
|
||||
}
|
||||
}
|
||||
|
||||
if ( ! @files ) {
|
||||
if (opendir(D,".")) {
|
||||
foreach $file ( readdir(D) ) {
|
||||
$match = ".html";
|
||||
next if ( $file =~ /^\.\.?$/ );
|
||||
($file =~ /$match/) && (push @files, $file);
|
||||
($file =~ "tree.js") && (push @files, $file);
|
||||
}
|
||||
closedir(D);
|
||||
}
|
||||
}
|
||||
|
||||
if ( ! @files ) {
|
||||
print STDERR "Warning: No input files given and none found!\n";
|
||||
}
|
||||
|
||||
foreach $f (@files)
|
||||
{
|
||||
if ( ! $quiet ) {
|
||||
print "Editing: $f...\n";
|
||||
}
|
||||
$oldf = $f;
|
||||
$f .= ".bak";
|
||||
unless (rename $oldf,$f) {
|
||||
print STDERR "Error: cannot rename file $oldf\n";
|
||||
exit 1;
|
||||
}
|
||||
if (open(F,"<$f")) {
|
||||
unless (open(G,">$oldf")) {
|
||||
print STDERR "Error: opening file $oldf for writing\n";
|
||||
exit 1;
|
||||
}
|
||||
if ($oldf ne "tree.js") {
|
||||
while (<F>) {
|
||||
s/doxygen\=\"([^ \"\:\t\>\<]*)\:([^ \"\t\>\<]*)\" (href|src)=\"\2/doxygen\=\"$1:$subst{$1}\" \3=\"$subst{$1}/g;
|
||||
print G "$_";
|
||||
}
|
||||
}
|
||||
else {
|
||||
while (<F>) {
|
||||
s/\"([^ \"\:\t\>\<]*)\:([^ \"\t\>\<]*)\", \"\2/\"$1:$subst{$1}\" ,\"$subst{$1}/g;
|
||||
print G "$_";
|
||||
}
|
||||
}
|
||||
}
|
||||
else {
|
||||
print STDERR "Warning file $f does not exist\n";
|
||||
}
|
||||
unlink $f;
|
||||
}
|
||||
|
||||
sub usage {
|
||||
print STDERR "Usage: installdox [options] [html-file [html-file ...]]\n";
|
||||
print STDERR "Options:\n";
|
||||
print STDERR " -l tagfile\@linkName tag file + URL or directory \n";
|
||||
print STDERR " -q Quiet mode\n\n";
|
||||
exit 1;
|
||||
}
|
58
libcv_search_methods.html
Normal file
@ -0,0 +1,58 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>libcvautomation: Libcv Search Methods</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<h1><a class="anchor" name="libcv_search_methods">Libcv Search Methods</a></h1>This page describes the methods libcv uses to search for a sub image in a root image. <h2><a class="anchor" name="tolerance">
|
||||
Tolerance Values</a></h2>
|
||||
Tolerance values are used to control how strict each of the following search methods are. Acceptable values are from <code>INT_MIN</code> to <code>INT_MAX</code>.<p>
|
||||
Additionally, each of the reference programs - <code>cva-input</code> and <code>cva-match</code> - have a "sane tolerance" built in. This is accessed by the "-o" switch, and allows you to specify a tolerance on scale of 1-100, where 1 is incredibly strict, and 100 is incredibly loose. <dl compact><dt><b>Note:</b></dt><dd>The formula for calculating the sane tolerance is: <img class="formulaInl" alt="$ T(x) = (10^{\frac{\log{INT\_MAX}}{\lambda}})^x $" src="form_0.png"> where <img class="formulaInl" alt="$ \lambda $" src="form_1.png"> is the highest tolerance value (in our case, 100). Finally, we have to round down a little bit to ensure that we don't accidentally generate a value higher than <code>INT_MAX</code>. The formula used does mean that we will never be able to generate values lower than 0. </dd></dl>
|
||||
<dl compact><dt><b>Warning:</b></dt><dd>The "sane-tolerance" option doesn't know which search method you are using - Thus while 1 is an incredibly strict search for <a class="el" href="libcv_search_methods.html#SQDIFF">Squared Difference</a> and <a class="el" href="libcv_search_methods.html#SQDIFF_NORMED">Squared Difference (Normalized)</a>, it is fairly loose search for <a class="el" href="libcv_search_methods.html#CCORR">Cross Correlation</a>, <a class="el" href="libcv_search_methods.html#CCORR_NORMED">Cross Correlation (Normalized)</a>, <a class="el" href="libcv_search_methods.html#CCOEFF">Correlation Coefficient</a>, and <a class="el" href="libcv_search_methods.html#CCOEFF_NORMED">Correlation Coefficient (Normalized)</a></dd></dl>
|
||||
<h2><a class="anchor" name="SQDIFF">
|
||||
Squared Difference</a></h2>
|
||||
<div class="fragment"><pre class="fragment"><span class="preprocessor"> #define CV_TM_SQDIFF 0 </span>
|
||||
</pre></div> Squared Difference is the default search method used by <code>libcvautomation</code>, as well as <code>cva-match</code> and <code>cva-input</code>. <dl compact><dt><b>For this method, setting a low tolerance value results in a more strict match.</b></dt><dd></dd></dl>
|
||||
Formula: <img class="formulaInl" alt="$R(x,y) = \sum_{x',y'} (T(x',y') - I(x + x', y+y'))^2 $" src="form_2.png"><h2><a class="anchor" name="SQDIFF_NORMED">
|
||||
Squared Difference (Normalized)</a></h2>
|
||||
<div class="fragment"><pre class="fragment"><span class="preprocessor"> #define CV_TM_SQDIFF_NORMED 1 </span>
|
||||
</pre></div> This is a normalized version of the <a class="el" href="libcv_search_methods.html#SQDIFF">Squared Difference</a> search method. <dl compact><dt><b>For this method, setting a low tolerance value results in a more strict match.</b></dt><dd></dd></dl>
|
||||
Formula: <img class="formulaInl" alt="$ R(x,y) = \frac{\sum_{x',y'}(T(x',y') - I(x + x', y + y'))^2}{ \sqrt{\sum_{x',y'}T(x',y')^2 \cdot \sum_{x',y'}I(x + x', y + y')^2}} $" src="form_3.png"><h2><a class="anchor" name="CCORR">
|
||||
Cross Correlation</a></h2>
|
||||
<div class="fragment"><pre class="fragment"><span class="preprocessor"> #define CV_TM_CCORR 2 </span>
|
||||
</pre></div> This is the Cross Correlation search method. <dl compact><dt><b>For this method, setting a high tolerance value results in a more strict match.</b></dt><dd></dd></dl>
|
||||
Formula: <img class="formulaInl" alt="$ R(x,y)= \sum _{x',y'} (T(x',y') \cdot I(x+x',y+y')) $" src="form_4.png"><h2><a class="anchor" name="CCORR_NORMED">
|
||||
Cross Correlation (Normalized)</a></h2>
|
||||
<div class="fragment"><pre class="fragment"><span class="preprocessor"> #define CV_TM_CCORR_NORMED 3 </span>
|
||||
</pre></div> This is the normalized version of the <a class="el" href="libcv_search_methods.html#CCORR">Cross Correlation</a> search method. <dl compact><dt><b>For this method, setting a high tolerance value results in a more strict match.</b></dt><dd></dd></dl>
|
||||
Formula: <img class="formulaInl" alt="$ R(x,y)= \frac{\sum_{x',y'} (T(x',y') \cdot I'(x+x',y+y'))}{\sqrt{\sum_{x',y'}T(x',y')^2 \cdot \sum_{x',y'} I(x+x',y+y')^2}} $" src="form_5.png"><h2><a class="anchor" name="CCOEFF">
|
||||
Correlation Coefficient</a></h2>
|
||||
<div class="fragment"><pre class="fragment"><span class="preprocessor"> #define CV_TM_CCOEFF 4 </span>
|
||||
</pre></div> This is the Correlation Coefficient search method. <dl compact><dt><b>For this method, setting a high tolerance value results in a more strict match.</b></dt><dd></dd></dl>
|
||||
Formula: <img class="formulaInl" alt="$ R(x,y)= \sum _{x',y'} (T'(x',y') \cdot I(x+x',y+y')) $" src="form_6.png"> where: <img class="formulaInl" alt="$ \begin{array}{l} T'(x',y')=T(x',y') - 1/(w \cdot h) \cdot \sum _{x'',y''} T(x'',y'') \\ I'(x+x',y+y')=I(x+x',y+y') - 1/(w \cdot h) \cdot \sum _{x'',y''} I(x+x'',y+y'') \end{array} $" src="form_7.png"><h2><a class="anchor" name="CCOEFF_NORMED">
|
||||
Correlation Coefficient (Normalized)</a></h2>
|
||||
<div class="fragment"><pre class="fragment"><span class="preprocessor"> #define CV_TM_CCOEFF_NORMED 5 </span>
|
||||
</pre></div> This is the normalized version of the <a class="el" href="libcv_search_methods.html#CCOEFF">Correlation Coefficient</a> search method. <dl compact><dt><b>For this method, setting a high tolerance value results in a more strict match.</b></dt><dd></dd></dl>
|
||||
Formula: <img class="formulaInl" alt="$ R(x,y)= \frac{ \sum_{x',y'} (T'(x',y') \cdot I'(x+x',y+y')) }{ \sqrt{\sum_{x',y'}T'(x',y')^2 \cdot \sum_{x',y'} I'(x+x',y+y')^2} } $" src="form_8.png"> <hr size="1"><address style="align: right;"><small>Generated on Tue Jul 17 12:19:00 2012 for libcvautomation by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
91
libcvautomation-opencv_8h-source.html
Normal file
@ -0,0 +1,91 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>libcvautomation: libcvautomation-opencv.h Source File</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li id="current"><a href="files.html"><span>Files</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="files.html"><span>File List</span></a></li>
|
||||
<li><a href="globals.html"><span>File Members</span></a></li>
|
||||
</ul></div>
|
||||
<h1>libcvautomation-opencv.h</h1><a href="libcvautomation-opencv_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/*</span>
|
||||
<a name="l00002"></a>00002 <span class="comment"> * =====================================================================================</span>
|
||||
<a name="l00003"></a>00003 <span class="comment"> *</span>
|
||||
<a name="l00004"></a>00004 <span class="comment"> * Filename: libcvautomation-opencv.h</span>
|
||||
<a name="l00005"></a>00005 <span class="comment"> *</span>
|
||||
<a name="l00006"></a>00006 <span class="comment"> * Description: Function definitions for opencv functionality</span>
|
||||
<a name="l00007"></a>00007 <span class="comment"> *</span>
|
||||
<a name="l00008"></a>00008 <span class="comment"> * Created: 06/21/2012 08:34:21 AM</span>
|
||||
<a name="l00009"></a>00009 <span class="comment"> * Revision: none</span>
|
||||
<a name="l00010"></a>00010 <span class="comment"> * Compiler: gcc</span>
|
||||
<a name="l00011"></a>00011 <span class="comment"> *</span>
|
||||
<a name="l00012"></a>00012 <span class="comment"> * Author: Bradlee Speice, bspeice@uncc.edu</span>
|
||||
<a name="l00013"></a>00013 <span class="comment"> * Organization: MOSAIC at University of North Carolina at Charlotte</span>
|
||||
<a name="l00014"></a>00014 <span class="comment"> *</span>
|
||||
<a name="l00015"></a>00015 <span class="comment"> * =====================================================================================</span>
|
||||
<a name="l00016"></a>00016 <span class="comment"> */</span>
|
||||
<a name="l00017"></a>00017 <span class="preprocessor">#ifndef LIBCVAUTOMATION_OPENCV_H</span>
|
||||
<a name="l00018"></a>00018 <span class="preprocessor"></span><span class="preprocessor">#define LIBCVAUTOMATION_OPENCV_H</span>
|
||||
<a name="l00019"></a>00019 <span class="preprocessor"></span>
|
||||
<a name="l00020"></a>00020 <span class="preprocessor">#include <<a class="code" href="libcvautomation_8h.html">libcvautomation/libcvautomation.h</a>></span>
|
||||
<a name="l00021"></a>00021
|
||||
<a name="l00022"></a>00022 <span class="comment">/* It should be noted that the following are the macros for template matching:</span>
|
||||
<a name="l00023"></a>00023 <span class="comment"> * CV_TM_SQDIFF (default)</span>
|
||||
<a name="l00024"></a>00024 <span class="comment"> * CV_TM_SQDIFF_NORMED</span>
|
||||
<a name="l00025"></a>00025 <span class="comment"> * CV_TM_CCORR</span>
|
||||
<a name="l00026"></a>00026 <span class="comment"> * CV_TM_CCORR_NORMED</span>
|
||||
<a name="l00027"></a>00027 <span class="comment"> * CV_TM_CCOEFF</span>
|
||||
<a name="l00028"></a>00028 <span class="comment"> * CV_TM_CCOEFF_NORMED</span>
|
||||
<a name="l00029"></a>00029 <span class="comment"> */</span>
|
||||
<a name="l00030"></a>00030
|
||||
<a name="l00031"></a>00031 <span class="comment">/* Match a root image and sub image */</span>
|
||||
<a name="l00032"></a>00032 CvPoint <a class="code" href="libcvautomation-opencv_8h.html#297b9b5b22f77b65308d4057cff845f7">matchSubImage</a> ( IplImage *rootImage, IplImage *subImage, <span class="keywordtype">int</span> searchMethod, <span class="keywordtype">double</span> tolerance );
|
||||
<a name="l00033"></a>00033
|
||||
<a name="l00034"></a>00034 <span class="comment">/* Match a root image and sub image, return the center */</span>
|
||||
<a name="l00035"></a>00035 CvPoint <a class="code" href="libcvautomation-opencv_8h.html#5bf9db7dfc5674e40180937b0c7787f3">matchSubImage_center</a> ( IplImage *rootImage, IplImage *subImage, <span class="keywordtype">int</span> searchMethod, <span class="keywordtype">double</span> tolerance );
|
||||
<a name="l00036"></a>00036
|
||||
<a name="l00037"></a>00037 <span class="comment">/* Match a root image and sub image from filename */</span>
|
||||
<a name="l00038"></a>00038 CvPoint <a class="code" href="libcvautomation-opencv_8h.html#c0d3066da6b2d42251c876d12a7158c7">matchSubImage_location</a> ( <span class="keyword">const</span> <span class="keywordtype">char</span> *rootImage_location, <span class="keyword">const</span> <span class="keywordtype">char</span> *subImage_location, <span class="keywordtype">int</span> searchMethod, <span class="keywordtype">double</span> tolerance );
|
||||
<a name="l00039"></a>00039
|
||||
<a name="l00040"></a>00040 <span class="comment">/* Match a root image and sub image from filename, return the center */</span>
|
||||
<a name="l00041"></a>00041 CvPoint <a class="code" href="libcvautomation-opencv_8h.html#bed7c891adb272993912d973c0e08c27">matchSubImage_location_center</a> ( <span class="keyword">const</span> <span class="keywordtype">char</span> *rootImage_location, <span class="keyword">const</span> <span class="keywordtype">char</span> *subImage_location, <span class="keywordtype">int</span> searchMethod, <span class="keywordtype">double</span> tolerance );
|
||||
<a name="l00042"></a>00042
|
||||
<a name="l00043"></a>00043 <span class="comment">/* Match a root image and sub images from an array of images */</span>
|
||||
<a name="l00044"></a>00044 <span class="keywordtype">void</span> <a class="code" href="libcvautomation-opencv_8h.html#994981e2d31d5fb62fc3b227e36ebf87">matchSubImage_a</a> ( IplImage *rootImage, <a class="code" href="structcvautomationList.html">cvautomationList</a> *subImageArray, <span class="keywordtype">int</span> listSize );
|
||||
<a name="l00045"></a>00045
|
||||
<a name="l00046"></a>00046 <span class="comment">/* Match a root image and sub images from an array of images, return the center */</span>
|
||||
<a name="l00047"></a>00047 <span class="keywordtype">void</span> <a class="code" href="libcvautomation-opencv_8h.html#08ee04814a6cf9abde0bfa6e8baf71de">matchSubImage_a_center</a> ( IplImage *rootImage, <a class="code" href="structcvautomationList.html">cvautomationList</a> *subImageArray, <span class="keywordtype">int</span> listSize );
|
||||
<a name="l00048"></a>00048
|
||||
<a name="l00049"></a>00049 <span class="comment">/* Match a root image and sub images from an array of images */</span>
|
||||
<a name="l00050"></a>00050 <span class="keywordtype">void</span> <a class="code" href="libcvautomation-opencv_8h.html#22a093abc57d2a5123cb50c2dc6e7dd2">matchSubImage_a_location</a> ( <span class="keyword">const</span> <span class="keywordtype">char</span> *rootImageFileName, <a class="code" href="structcvautomationList.html">cvautomationList</a> *subImageArray, <span class="keywordtype">int</span> listSize );
|
||||
<a name="l00051"></a>00051
|
||||
<a name="l00052"></a>00052 <span class="comment">/* Match a root image and sub images from an array of images, return the center */</span>
|
||||
<a name="l00053"></a>00053 <span class="keywordtype">void</span> <a class="code" href="libcvautomation-opencv_8h.html#4b591c5b0a520f3d2c41345f9cd92fa5">matchSubImage_a_location_center</a> ( <span class="keyword">const</span> <span class="keywordtype">char</span> *rootImageFileName, <a class="code" href="structcvautomationList.html">cvautomationList</a> *subImageArray, <span class="keywordtype">int</span> listSize );
|
||||
<a name="l00054"></a>00054
|
||||
<a name="l00055"></a>00055 <span class="preprocessor">#endif </span><span class="comment">/* LIBCVAUTOMATION_OPENCV_H */</span>
|
||||
<a name="l00056"></a>00056
|
||||
<a name="l00057"></a>00057 <span class="comment">/* Doxygen information */</span>
|
||||
</pre></div><hr size="1"><address style="align: right;"><small>Generated on Tue Jul 17 12:19:00 2012 for libcvautomation by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
475
libcvautomation-opencv_8h.html
Normal file
@ -0,0 +1,475 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>libcvautomation: libcvautomation-opencv.h File Reference</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li id="current"><a href="files.html"><span>Files</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="files.html"><span>File List</span></a></li>
|
||||
<li><a href="globals.html"><span>File Members</span></a></li>
|
||||
</ul></div>
|
||||
<h1>libcvautomation-opencv.h File Reference</h1>The source code to access libcv from inside libcvautomation. <a href="#_details">More...</a>
|
||||
<p>
|
||||
<code>#include <<a class="el" href="libcvautomation_8h-source.html">libcvautomation/libcvautomation.h</a>></code><br>
|
||||
|
||||
<p>
|
||||
<a href="libcvautomation-opencv_8h-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
|
||||
<tr><td></td></tr>
|
||||
<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top">CvPoint </td><td class="memItemRight" valign="bottom"><a class="el" href="libcvautomation-opencv_8h.html#297b9b5b22f77b65308d4057cff845f7">matchSubImage</a> (IplImage *rootImage, IplImage *subImage, int searchMethod, double tolerance)</td></tr>
|
||||
|
||||
<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the location of a sub image in its root image. <a href="#297b9b5b22f77b65308d4057cff845f7"></a><br></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top">CvPoint </td><td class="memItemRight" valign="bottom"><a class="el" href="libcvautomation-opencv_8h.html#5bf9db7dfc5674e40180937b0c7787f3">matchSubImage_center</a> (IplImage *rootImage, IplImage *subImage, int searchMethod, double tolerance)</td></tr>
|
||||
|
||||
<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the center of a sub image in its root image, rather than the top-left corner. <a href="#5bf9db7dfc5674e40180937b0c7787f3"></a><br></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top">CvPoint </td><td class="memItemRight" valign="bottom"><a class="el" href="libcvautomation-opencv_8h.html#c0d3066da6b2d42251c876d12a7158c7">matchSubImage_location</a> (const char *rootImage_location, const char *subImage_location, int searchMethod, double tolerance)</td></tr>
|
||||
|
||||
<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the location of a sub image in its root image. <a href="#c0d3066da6b2d42251c876d12a7158c7"></a><br></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top">CvPoint </td><td class="memItemRight" valign="bottom"><a class="el" href="libcvautomation-opencv_8h.html#bed7c891adb272993912d973c0e08c27">matchSubImage_location_center</a> (const char *rootImage_location, const char *subImage_location, int searchMethod, double tolerance)</td></tr>
|
||||
|
||||
<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the center of a sub image in its root image, rather than the top-left corner. <a href="#bed7c891adb272993912d973c0e08c27"></a><br></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="libcvautomation-opencv_8h.html#994981e2d31d5fb62fc3b227e36ebf87">matchSubImage_a</a> (IplImage *rootImage, <a class="el" href="structcvautomationList.html">cvautomationList</a> *subImageArray, int listSize)</td></tr>
|
||||
|
||||
<tr><td class="mdescLeft"> </td><td class="mdescRight">Parse an array of sub images and send them to <a class="el" href="libcvautomation-opencv_8h.html#297b9b5b22f77b65308d4057cff845f7">matchSubImage()</a>. <a href="#994981e2d31d5fb62fc3b227e36ebf87"></a><br></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="libcvautomation-opencv_8h.html#08ee04814a6cf9abde0bfa6e8baf71de">matchSubImage_a_center</a> (IplImage *rootImage, <a class="el" href="structcvautomationList.html">cvautomationList</a> *subImageArray, int listSize)</td></tr>
|
||||
|
||||
<tr><td class="mdescLeft"> </td><td class="mdescRight">Parse an array of sub images and send them to <a class="el" href="libcvautomation-opencv_8h.html#5bf9db7dfc5674e40180937b0c7787f3">matchSubImage_center()</a>. <a href="#08ee04814a6cf9abde0bfa6e8baf71de"></a><br></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="libcvautomation-opencv_8h.html#22a093abc57d2a5123cb50c2dc6e7dd2">matchSubImage_a_location</a> (const char *rootImageFileName, <a class="el" href="structcvautomationList.html">cvautomationList</a> *subImageArray, int listSize)</td></tr>
|
||||
|
||||
<tr><td class="mdescLeft"> </td><td class="mdescRight">Parse an array of sub images and send them to <a class="el" href="libcvautomation-opencv_8h.html#297b9b5b22f77b65308d4057cff845f7">matchSubImage()</a>. <a href="#22a093abc57d2a5123cb50c2dc6e7dd2"></a><br></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="libcvautomation-opencv_8h.html#4b591c5b0a520f3d2c41345f9cd92fa5">matchSubImage_a_location_center</a> (const char *rootImageFileName, <a class="el" href="structcvautomationList.html">cvautomationList</a> *subImageArray, int listSize)</td></tr>
|
||||
|
||||
<tr><td class="mdescLeft"> </td><td class="mdescRight">Parse an array of sub images and send them to <a class="el" href="libcvautomation-opencv_8h.html#5bf9db7dfc5674e40180937b0c7787f3">matchSubImage_center()</a>. <a href="#4b591c5b0a520f3d2c41345f9cd92fa5"></a><br></td></tr>
|
||||
</table>
|
||||
<hr><a name="_details"></a><h2>Detailed Description</h2>
|
||||
The source code to access libcv from inside libcvautomation.
|
||||
<p>
|
||||
This source file builds in the necessary functionality to use libcv functions inside libcvautomation. <dl compact><dt><b>Author:</b></dt><dd>Bradlee Speice </dd></dl>
|
||||
<dl compact><dt><b>Date:</b></dt><dd>6/21/2012 </dd></dl>
|
||||
|
||||
<p>
|
||||
Definition in file <a class="el" href="libcvautomation-opencv_8h-source.html">libcvautomation-opencv.h</a>.<hr><h2>Function Documentation</h2>
|
||||
<a class="anchor" name="297b9b5b22f77b65308d4057cff845f7"></a><!-- doxytag: member="libcvautomation-opencv.h::matchSubImage" ref="297b9b5b22f77b65308d4057cff845f7" args="(IplImage *rootImage, IplImage *subImage, int searchMethod, double tolerance)" -->
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">CvPoint matchSubImage </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">IplImage * </td>
|
||||
<td class="paramname"> <em>rootImage</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">IplImage * </td>
|
||||
<td class="paramname"> <em>subImage</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">int </td>
|
||||
<td class="paramname"> <em>searchMethod</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">double </td>
|
||||
<td class="paramname"> <em>tolerance</em></td><td> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td>)</td>
|
||||
<td></td><td></td><td width="100%"></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div class="memdoc">
|
||||
|
||||
<p>
|
||||
Return the location of a sub image in its root image.
|
||||
<p>
|
||||
<dl compact><dt><b>Parameters:</b></dt><dd>
|
||||
<table border="0" cellspacing="2" cellpadding="0">
|
||||
<tr><td valign="top"></td><td valign="top"><em>rootImage</em> </td><td>The root image (in IplImage format) to search in </td></tr>
|
||||
<tr><td valign="top"></td><td valign="top"><em>subImage</em> </td><td>The sub image (in IplImage format) to search for in <code>rootImage</code> </td></tr>
|
||||
<tr><td valign="top"></td><td valign="top"><em>searchMethod</em> </td><td>The search method to use when searching for <code>subImage</code> in <code>rootImage</code>. </td></tr>
|
||||
<tr><td valign="top"></td><td valign="top"><em>tolerance</em> </td><td>The tolerance to use when searching for <code>subImage</code> in <code>rootImage</code>. </td></tr>
|
||||
</table>
|
||||
</dl>
|
||||
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="libcv_search_methods.html">Libcv Search Methods</a> </dd></dl>
|
||||
<dl compact><dt><b>Returns:</b></dt><dd>The location of the sub image in root image </dd></dl>
|
||||
|
||||
</div>
|
||||
</div><p>
|
||||
<a class="anchor" name="5bf9db7dfc5674e40180937b0c7787f3"></a><!-- doxytag: member="libcvautomation-opencv.h::matchSubImage_center" ref="5bf9db7dfc5674e40180937b0c7787f3" args="(IplImage *rootImage, IplImage *subImage, int searchMethod, double tolerance)" -->
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">CvPoint matchSubImage_center </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">IplImage * </td>
|
||||
<td class="paramname"> <em>rootImage</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">IplImage * </td>
|
||||
<td class="paramname"> <em>subImage</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">int </td>
|
||||
<td class="paramname"> <em>searchMethod</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">double </td>
|
||||
<td class="paramname"> <em>tolerance</em></td><td> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td>)</td>
|
||||
<td></td><td></td><td width="100%"></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div class="memdoc">
|
||||
|
||||
<p>
|
||||
Return the center of a sub image in its root image, rather than the top-left corner.
|
||||
<p>
|
||||
<dl compact><dt><b>Parameters:</b></dt><dd>
|
||||
<table border="0" cellspacing="2" cellpadding="0">
|
||||
<tr><td valign="top"></td><td valign="top"><em>rootImage</em> </td><td>The root image (in IplImage format) to search in </td></tr>
|
||||
<tr><td valign="top"></td><td valign="top"><em>subImage</em> </td><td>The sub image (in IplImage format) to search for in <code>rootImage</code> </td></tr>
|
||||
<tr><td valign="top"></td><td valign="top"><em>searchMethod</em> </td><td>The search method to use when searching for <code>subImage</code> in <code>rootImage</code>. </td></tr>
|
||||
<tr><td valign="top"></td><td valign="top"><em>tolerance</em> </td><td>The tolerance to use when searching for <code>subImage</code> in <code>rootImage</code>. </td></tr>
|
||||
</table>
|
||||
</dl>
|
||||
<dl compact><dt><b>See also:</b></dt><dd>libcv_search_methods </dd></dl>
|
||||
<dl compact><dt><b>Returns:</b></dt><dd>The center location of the sub image in root image </dd></dl>
|
||||
|
||||
</div>
|
||||
</div><p>
|
||||
<a class="anchor" name="c0d3066da6b2d42251c876d12a7158c7"></a><!-- doxytag: member="libcvautomation-opencv.h::matchSubImage_location" ref="c0d3066da6b2d42251c876d12a7158c7" args="(const char *rootImage_location, const char *subImage_location, int searchMethod, double tolerance)" -->
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">CvPoint matchSubImage_location </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">const char * </td>
|
||||
<td class="paramname"> <em>rootImage_location</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">const char * </td>
|
||||
<td class="paramname"> <em>subImage_location</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">int </td>
|
||||
<td class="paramname"> <em>searchMethod</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">double </td>
|
||||
<td class="paramname"> <em>tolerance</em></td><td> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td>)</td>
|
||||
<td></td><td></td><td width="100%"></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div class="memdoc">
|
||||
|
||||
<p>
|
||||
Return the location of a sub image in its root image.
|
||||
<p>
|
||||
The difference that this function has over <a class="el" href="libcvautomation-opencv_8h.html#297b9b5b22f77b65308d4057cff845f7">matchSubImage()</a> is that <em>rootImage_location</em> and <em>subImage_location</em> are from files, rather than an IplImage format image. <dl compact><dt><b>Parameters:</b></dt><dd>
|
||||
<table border="0" cellspacing="2" cellpadding="0">
|
||||
<tr><td valign="top"></td><td valign="top"><em>rootImage_location</em> </td><td>The location of the root image </td></tr>
|
||||
<tr><td valign="top"></td><td valign="top"><em>subImage_location</em> </td><td>The location of the sub image to search for in <code>rootImage</code> </td></tr>
|
||||
<tr><td valign="top"></td><td valign="top"><em>searchMethod</em> </td><td>The search method to use when searching for <code>subImage</code> in <code>rootImage</code>. </td></tr>
|
||||
<tr><td valign="top"></td><td valign="top"><em>tolerance</em> </td><td>The tolerance to use when searching for <code>subImage</code> in <code>rootImage</code>. </td></tr>
|
||||
</table>
|
||||
</dl>
|
||||
<dl compact><dt><b>See also:</b></dt><dd>libcv_search_methods </dd></dl>
|
||||
<dl compact><dt><b>Returns:</b></dt><dd>The location of the sub image in root image </dd></dl>
|
||||
|
||||
<p>
|
||||
Referenced by <a class="el" href="cva-match_8c-source.html#l00035">main()</a>.
|
||||
</div>
|
||||
</div><p>
|
||||
<a class="anchor" name="bed7c891adb272993912d973c0e08c27"></a><!-- doxytag: member="libcvautomation-opencv.h::matchSubImage_location_center" ref="bed7c891adb272993912d973c0e08c27" args="(const char *rootImage_location, const char *subImage_location, int searchMethod, double tolerance)" -->
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">CvPoint matchSubImage_location_center </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">const char * </td>
|
||||
<td class="paramname"> <em>rootImage_location</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">const char * </td>
|
||||
<td class="paramname"> <em>subImage_location</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">int </td>
|
||||
<td class="paramname"> <em>searchMethod</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">double </td>
|
||||
<td class="paramname"> <em>tolerance</em></td><td> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td>)</td>
|
||||
<td></td><td></td><td width="100%"></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div class="memdoc">
|
||||
|
||||
<p>
|
||||
Return the center of a sub image in its root image, rather than the top-left corner.
|
||||
<p>
|
||||
The difference that this function has over <a class="el" href="libcvautomation-opencv_8h.html#5bf9db7dfc5674e40180937b0c7787f3">matchSubImage_center()</a> is that <em>rootImage_location</em> and <em>subImage_location</em> are from files, rather than an IplImage format image. <dl compact><dt><b>Parameters:</b></dt><dd>
|
||||
<table border="0" cellspacing="2" cellpadding="0">
|
||||
<tr><td valign="top"></td><td valign="top"><em>rootImage_location</em> </td><td>The location of the root image </td></tr>
|
||||
<tr><td valign="top"></td><td valign="top"><em>subImage_location</em> </td><td>The location of the sub image to search for in <code>rootImage</code> </td></tr>
|
||||
<tr><td valign="top"></td><td valign="top"><em>searchMethod</em> </td><td>The search method to use when searching for <code>subImage</code> in <code>rootImage</code>. </td></tr>
|
||||
<tr><td valign="top"></td><td valign="top"><em>tolerance</em> </td><td>The tolerance to use when searching for <code>subImage</code> in <code>rootImage</code>. </td></tr>
|
||||
</table>
|
||||
</dl>
|
||||
<dl compact><dt><b>See also:</b></dt><dd>libcv_search_methods </dd></dl>
|
||||
<dl compact><dt><b>Returns:</b></dt><dd>The center location of the sub image in root image </dd></dl>
|
||||
|
||||
<p>
|
||||
Referenced by <a class="el" href="cva-match_8c-source.html#l00035">main()</a>.
|
||||
</div>
|
||||
</div><p>
|
||||
<a class="anchor" name="994981e2d31d5fb62fc3b227e36ebf87"></a><!-- doxytag: member="libcvautomation-opencv.h::matchSubImage_a" ref="994981e2d31d5fb62fc3b227e36ebf87" args="(IplImage *rootImage, cvautomationList *subImageArray, int listSize)" -->
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">void matchSubImage_a </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">IplImage * </td>
|
||||
<td class="paramname"> <em>rootImage</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype"><a class="el" href="structcvautomationList.html">cvautomationList</a> * </td>
|
||||
<td class="paramname"> <em>subImageArray</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">int </td>
|
||||
<td class="paramname"> <em>listSize</em></td><td> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td>)</td>
|
||||
<td></td><td></td><td width="100%"></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div class="memdoc">
|
||||
|
||||
<p>
|
||||
Parse an array of sub images and send them to <a class="el" href="libcvautomation-opencv_8h.html#297b9b5b22f77b65308d4057cff845f7">matchSubImage()</a>.
|
||||
<p>
|
||||
<dl compact><dt><b>Parameters:</b></dt><dd>
|
||||
<table border="0" cellspacing="2" cellpadding="0">
|
||||
<tr><td valign="top"></td><td valign="top"><em>rootImage</em> </td><td>The root image (in IplImage format) to search in </td></tr>
|
||||
<tr><td valign="top"></td><td valign="top"><em>subImageArray</em> </td><td>The sub image array to search for in <code>rootImage</code> - Note that the contents of <code>subImageArray</code> are modified during execution of this routine </td></tr>
|
||||
<tr><td valign="top"></td><td valign="top"><em>listSize</em> </td><td>The number of sub images to search for in subImageArray </td></tr>
|
||||
</table>
|
||||
</dl>
|
||||
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="structcvautomationList.html">cvautomationList</a> </dd></dl>
|
||||
<dl compact><dt><b>Returns:</b></dt><dd>This function returns void, and modifies the contents of subImageArray </dd></dl>
|
||||
|
||||
</div>
|
||||
</div><p>
|
||||
<a class="anchor" name="08ee04814a6cf9abde0bfa6e8baf71de"></a><!-- doxytag: member="libcvautomation-opencv.h::matchSubImage_a_center" ref="08ee04814a6cf9abde0bfa6e8baf71de" args="(IplImage *rootImage, cvautomationList *subImageArray, int listSize)" -->
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">void matchSubImage_a_center </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">IplImage * </td>
|
||||
<td class="paramname"> <em>rootImage</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype"><a class="el" href="structcvautomationList.html">cvautomationList</a> * </td>
|
||||
<td class="paramname"> <em>subImageArray</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">int </td>
|
||||
<td class="paramname"> <em>listSize</em></td><td> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td>)</td>
|
||||
<td></td><td></td><td width="100%"></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div class="memdoc">
|
||||
|
||||
<p>
|
||||
Parse an array of sub images and send them to <a class="el" href="libcvautomation-opencv_8h.html#5bf9db7dfc5674e40180937b0c7787f3">matchSubImage_center()</a>.
|
||||
<p>
|
||||
Uses the <a class="el" href="structcvautomationList.html#7608e8c8e792f6d7432841c94016bd50">cvautomationList.cvaImage</a> parameter to find a <code>subImage</code> in <code>rootImage</code> <dl compact><dt><b>Parameters:</b></dt><dd>
|
||||
<table border="0" cellspacing="2" cellpadding="0">
|
||||
<tr><td valign="top"></td><td valign="top"><em>rootImage</em> </td><td>The root image (in IplImage format) to search in </td></tr>
|
||||
<tr><td valign="top"></td><td valign="top"><em>subImageArray</em> </td><td>The sub image array to search for in <code>rootImage</code> - Note that the contents of <code>subImageArray</code> are modified during execution of this routine </td></tr>
|
||||
<tr><td valign="top"></td><td valign="top"><em>listSize</em> </td><td>The number of sub images to search for in subImageArray </td></tr>
|
||||
</table>
|
||||
</dl>
|
||||
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="structcvautomationList.html">cvautomationList</a> </dd></dl>
|
||||
<dl compact><dt><b>Returns:</b></dt><dd>This function returns void, and modifies the contents of subImageArray </dd></dl>
|
||||
|
||||
</div>
|
||||
</div><p>
|
||||
<a class="anchor" name="22a093abc57d2a5123cb50c2dc6e7dd2"></a><!-- doxytag: member="libcvautomation-opencv.h::matchSubImage_a_location" ref="22a093abc57d2a5123cb50c2dc6e7dd2" args="(const char *rootImageFileName, cvautomationList *subImageArray, int listSize)" -->
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">void matchSubImage_a_location </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">const char * </td>
|
||||
<td class="paramname"> <em>rootImage_location</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype"><a class="el" href="structcvautomationList.html">cvautomationList</a> * </td>
|
||||
<td class="paramname"> <em>subImageArray</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">int </td>
|
||||
<td class="paramname"> <em>listSize</em></td><td> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td>)</td>
|
||||
<td></td><td></td><td width="100%"></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div class="memdoc">
|
||||
|
||||
<p>
|
||||
Parse an array of sub images and send them to <a class="el" href="libcvautomation-opencv_8h.html#297b9b5b22f77b65308d4057cff845f7">matchSubImage()</a>.
|
||||
<p>
|
||||
The difference between this and <a class="el" href="libcvautomation-opencv_8h.html#994981e2d31d5fb62fc3b227e36ebf87">matchSubImage_a()</a> is that this uses a root image from filename, rather than from an IplImage format. <dl compact><dt><b>Parameters:</b></dt><dd>
|
||||
<table border="0" cellspacing="2" cellpadding="0">
|
||||
<tr><td valign="top"></td><td valign="top"><em>rootImage_location</em> </td><td>The location of the root image </td></tr>
|
||||
<tr><td valign="top"></td><td valign="top"><em>subImageArray</em> </td><td>The sub image array to search for in <code>rootImage_location</code> - Note that the contents of <code>subImageArray</code> are modified during execution of this routine </td></tr>
|
||||
<tr><td valign="top"></td><td valign="top"><em>listSize</em> </td><td>The number of sub images to search for in subImageArray </td></tr>
|
||||
</table>
|
||||
</dl>
|
||||
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="structcvautomationList.html">cvautomationList</a> </dd></dl>
|
||||
<dl compact><dt><b>Returns:</b></dt><dd>This function returns void, and modifies the contents of subImageArray </dd></dl>
|
||||
|
||||
</div>
|
||||
</div><p>
|
||||
<a class="anchor" name="4b591c5b0a520f3d2c41345f9cd92fa5"></a><!-- doxytag: member="libcvautomation-opencv.h::matchSubImage_a_location_center" ref="4b591c5b0a520f3d2c41345f9cd92fa5" args="(const char *rootImageFileName, cvautomationList *subImageArray, int listSize)" -->
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">void matchSubImage_a_location_center </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">const char * </td>
|
||||
<td class="paramname"> <em>rootImage_location</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype"><a class="el" href="structcvautomationList.html">cvautomationList</a> * </td>
|
||||
<td class="paramname"> <em>subImageArray</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">int </td>
|
||||
<td class="paramname"> <em>listSize</em></td><td> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td>)</td>
|
||||
<td></td><td></td><td width="100%"></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div class="memdoc">
|
||||
|
||||
<p>
|
||||
Parse an array of sub images and send them to <a class="el" href="libcvautomation-opencv_8h.html#5bf9db7dfc5674e40180937b0c7787f3">matchSubImage_center()</a>.
|
||||
<p>
|
||||
The difference that this function has over <a class="el" href="libcvautomation-opencv_8h.html#08ee04814a6cf9abde0bfa6e8baf71de">matchSubImage_a_center()</a> is that <code>rootImage_location</code> is from a file <dl compact><dt><b>Parameters:</b></dt><dd>
|
||||
<table border="0" cellspacing="2" cellpadding="0">
|
||||
<tr><td valign="top"></td><td valign="top"><em>rootImage_location</em> </td><td>The location of the root image </td></tr>
|
||||
<tr><td valign="top"></td><td valign="top"><em>subImageArray</em> </td><td>The sub image array to search for in <code>rootImage_location</code> - Note that the contents of <code>subImageArray</code> are modified during execution of this routine </td></tr>
|
||||
<tr><td valign="top"></td><td valign="top"><em>listSize</em> </td><td>The number of sub images to search for in subImageArray </td></tr>
|
||||
</table>
|
||||
</dl>
|
||||
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="structcvautomationList.html">cvautomationList</a> </dd></dl>
|
||||
<dl compact><dt><b>Returns:</b></dt><dd>This function returns void, and modifies the contents of subImageArray </dd></dl>
|
||||
|
||||
</div>
|
||||
</div><p>
|
||||
<hr size="1"><address style="align: right;"><small>Generated on Tue Jul 17 12:19:00 2012 for libcvautomation by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
77
libcvautomation-xlib_8h-source.html
Normal file
@ -0,0 +1,77 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>libcvautomation: libcvautomation-xlib.h Source File</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li id="current"><a href="files.html"><span>Files</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="files.html"><span>File List</span></a></li>
|
||||
<li><a href="globals.html"><span>File Members</span></a></li>
|
||||
</ul></div>
|
||||
<h1>libcvautomation-xlib.h</h1><a href="libcvautomation-xlib_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/*</span>
|
||||
<a name="l00002"></a>00002 <span class="comment"> * =====================================================================================</span>
|
||||
<a name="l00003"></a>00003 <span class="comment"> *</span>
|
||||
<a name="l00004"></a>00004 <span class="comment"> * Filename: libcvautomation-xlib.h</span>
|
||||
<a name="l00005"></a>00005 <span class="comment"> *</span>
|
||||
<a name="l00006"></a>00006 <span class="comment"> * Description: Function definitions for X11 operations</span>
|
||||
<a name="l00007"></a>00007 <span class="comment"> *</span>
|
||||
<a name="l00008"></a>00008 <span class="comment"> * Created: 06/21/2012 08:34:21 AM</span>
|
||||
<a name="l00009"></a>00009 <span class="comment"> * Revision: none</span>
|
||||
<a name="l00010"></a>00010 <span class="comment"> * Compiler: gcc</span>
|
||||
<a name="l00011"></a>00011 <span class="comment"> *</span>
|
||||
<a name="l00012"></a>00012 <span class="comment"> * Author: Bradlee Speice, bspeice@uncc.edu</span>
|
||||
<a name="l00013"></a>00013 <span class="comment"> * Organization: MOSAIC at University of North Carolina at Charlotte</span>
|
||||
<a name="l00014"></a>00014 <span class="comment"> *</span>
|
||||
<a name="l00015"></a>00015 <span class="comment"> * =====================================================================================</span>
|
||||
<a name="l00016"></a>00016 <span class="comment"> */</span>
|
||||
<a name="l00017"></a>00017
|
||||
<a name="l00018"></a>00018 <span class="preprocessor">#ifndef LIBCVAUTOMATION_XLIB_H</span>
|
||||
<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#define LIBCVAUTOMATION_XLIB_H</span>
|
||||
<a name="l00020"></a>00020 <span class="preprocessor"></span>
|
||||
<a name="l00021"></a>00021 <span class="preprocessor">#include <<a class="code" href="libcvautomation_8h.html">libcvautomation/libcvautomation.h</a>></span>
|
||||
<a name="l00022"></a>00022
|
||||
<a name="l00023"></a>00023 <span class="comment">/* Custom wrapper for XOpenDisplay function */</span>
|
||||
<a name="l00024"></a>00024 Display* <a class="code" href="libcvautomation-xlib_8h.html#a6e348c2e829e1addb446160f54723a0">cvaOpenDisplay</a> ( <span class="keywordtype">char</span> *displayName );
|
||||
<a name="l00025"></a>00025
|
||||
<a name="l00026"></a>00026 <span class="comment">/* Custom wrapper for XCloseDisplay funtion */</span>
|
||||
<a name="l00027"></a>00027 <span class="keywordtype">void</span> <a class="code" href="libcvautomation-xlib_8h.html#1c8a205c0b2f4f7a28d1ce51d5225871">cvaCloseDisplay</a> ( Display *displayLocation );
|
||||
<a name="l00028"></a>00028
|
||||
<a name="l00029"></a>00029 <span class="comment">/* Match a sub image using the X11 root window as root */</span>
|
||||
<a name="l00030"></a>00030 CvPoint <a class="code" href="libcvautomation-xlib_8h.html#8fbf1f5f968670a03c4c8e31f5afdaed">matchSubImage_X11</a>( Display *displayLocation, IplImage *subImage, <span class="keywordtype">int</span> searchMethod, <span class="keywordtype">int</span> tolerance );
|
||||
<a name="l00031"></a>00031
|
||||
<a name="l00032"></a>00032 <span class="comment">/* Match a sub image using the X11 root window as root, return the center */</span>
|
||||
<a name="l00033"></a>00033 CvPoint <a class="code" href="libcvautomation-xlib_8h.html#fb70c8eec779a6696b3df5af5bca1a6d">matchSubImage_X11_center</a>( Display *displayLocation, IplImage *subImage, <span class="keywordtype">int</span> searchMethod, <span class="keywordtype">int</span> tolerance );
|
||||
<a name="l00034"></a>00034
|
||||
<a name="l00035"></a>00035 <span class="comment">/* Match a sub image using X11 as root, from filename */</span>
|
||||
<a name="l00036"></a>00036 CvPoint <a class="code" href="libcvautomation-xlib_8h.html#d238842448af81c09f56d1d54253c1b5">matchSubImage_X11_location</a>( Display *displayLocation, <span class="keyword">const</span> <span class="keywordtype">char</span> *subImage_location, <span class="keywordtype">int</span> search_method, <span class="keywordtype">int</span> tolerance );
|
||||
<a name="l00037"></a>00037
|
||||
<a name="l00038"></a>00038 <span class="comment">/* Match a sub image using X11 as root, from filename, return the center */</span>
|
||||
<a name="l00039"></a>00039 CvPoint <a class="code" href="libcvautomation-xlib_8h.html#b441627acd22889f404d89c9cc4809f5">matchSubImage_X11_location_center</a>( Display *displayLocation, <span class="keyword">const</span> <span class="keywordtype">char</span> *subImage_location, <span class="keywordtype">int</span> search_method, <span class="keywordtype">int</span> tolerance );
|
||||
<a name="l00040"></a>00040
|
||||
<a name="l00041"></a>00041 <span class="preprocessor">#endif </span><span class="comment">/* LIBCVAUTOMATION_XLIB_H */</span>
|
||||
<a name="l00042"></a>00042
|
||||
<a name="l00043"></a>00043 <span class="comment">/* Doxygen information */</span>
|
||||
</pre></div><hr size="1"><address style="align: right;"><small>Generated on Tue Jul 17 12:19:00 2012 for libcvautomation by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
341
libcvautomation-xlib_8h.html
Normal file
@ -0,0 +1,341 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>libcvautomation: libcvautomation-xlib.h File Reference</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li id="current"><a href="files.html"><span>Files</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="files.html"><span>File List</span></a></li>
|
||||
<li><a href="globals.html"><span>File Members</span></a></li>
|
||||
</ul></div>
|
||||
<h1>libcvautomation-xlib.h File Reference</h1>The source code to access Xlib from inside libcvautomation. <a href="#_details">More...</a>
|
||||
<p>
|
||||
<code>#include <<a class="el" href="libcvautomation_8h-source.html">libcvautomation/libcvautomation.h</a>></code><br>
|
||||
|
||||
<p>
|
||||
<a href="libcvautomation-xlib_8h-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
|
||||
<tr><td></td></tr>
|
||||
<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top">Display * </td><td class="memItemRight" valign="bottom"><a class="el" href="libcvautomation-xlib_8h.html#a6e348c2e829e1addb446160f54723a0">cvaOpenDisplay</a> (char *displayName)</td></tr>
|
||||
|
||||
<tr><td class="mdescLeft"> </td><td class="mdescRight">Simple wrapper for XOpenDisplay. <a href="#a6e348c2e829e1addb446160f54723a0"></a><br></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="libcvautomation-xlib_8h.html#1c8a205c0b2f4f7a28d1ce51d5225871">cvaCloseDisplay</a> (Display *displayLocation)</td></tr>
|
||||
|
||||
<tr><td class="mdescLeft"> </td><td class="mdescRight">Simple wrapper for XCloseDisplay. <a href="#1c8a205c0b2f4f7a28d1ce51d5225871"></a><br></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top">CvPoint </td><td class="memItemRight" valign="bottom"><a class="el" href="libcvautomation-xlib_8h.html#8fbf1f5f968670a03c4c8e31f5afdaed">matchSubImage_X11</a> (Display *displayLocation, IplImage *subImage, int searchMethod, int tolerance)</td></tr>
|
||||
|
||||
<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the location of a sub image in the X11 root window. <a href="#8fbf1f5f968670a03c4c8e31f5afdaed"></a><br></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top">CvPoint </td><td class="memItemRight" valign="bottom"><a class="el" href="libcvautomation-xlib_8h.html#fb70c8eec779a6696b3df5af5bca1a6d">matchSubImage_X11_center</a> (Display *displayLocation, IplImage *subImage, int searchMethod, int tolerance)</td></tr>
|
||||
|
||||
<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the center of a sub image in root X11 window, rather than the top-left corner. <a href="#fb70c8eec779a6696b3df5af5bca1a6d"></a><br></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top">CvPoint </td><td class="memItemRight" valign="bottom"><a class="el" href="libcvautomation-xlib_8h.html#d238842448af81c09f56d1d54253c1b5">matchSubImage_X11_location</a> (Display *displayLocation, const char *subImage_location, int search_method, int tolerance)</td></tr>
|
||||
|
||||
<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the location of a sub image in the X11 root window. <a href="#d238842448af81c09f56d1d54253c1b5"></a><br></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top">CvPoint </td><td class="memItemRight" valign="bottom"><a class="el" href="libcvautomation-xlib_8h.html#b441627acd22889f404d89c9cc4809f5">matchSubImage_X11_location_center</a> (Display *displayLocation, const char *subImage_location, int search_method, int tolerance)</td></tr>
|
||||
|
||||
<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the center of a sub image in the root X11 window, rather than the top-left corner. <a href="#b441627acd22889f404d89c9cc4809f5"></a><br></td></tr>
|
||||
</table>
|
||||
<hr><a name="_details"></a><h2>Detailed Description</h2>
|
||||
The source code to access Xlib from inside libcvautomation.
|
||||
<p>
|
||||
This source file builds in the necessary functionality to use libcv functions inside libcvautomation. <dl compact><dt><b>Author:</b></dt><dd>Bradlee Speice </dd></dl>
|
||||
<dl compact><dt><b>Date:</b></dt><dd>6/21/2012 </dd></dl>
|
||||
|
||||
<p>
|
||||
Definition in file <a class="el" href="libcvautomation-xlib_8h-source.html">libcvautomation-xlib.h</a>.<hr><h2>Function Documentation</h2>
|
||||
<a class="anchor" name="a6e348c2e829e1addb446160f54723a0"></a><!-- doxytag: member="libcvautomation-xlib.h::cvaOpenDisplay" ref="a6e348c2e829e1addb446160f54723a0" args="(char *displayName)" -->
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">Display * cvaOpenDisplay </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">char * </td>
|
||||
<td class="paramname"> <em>displayName</em> </td>
|
||||
<td> ) </td>
|
||||
<td width="100%"></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div class="memdoc">
|
||||
|
||||
<p>
|
||||
Simple wrapper for XOpenDisplay.
|
||||
<p>
|
||||
Currently this function literally just passes off to XOpenDisplay, but is designed to be used in the future if extra functionality is needed. <dl compact><dt><b>Parameters:</b></dt><dd>
|
||||
<table border="0" cellspacing="2" cellpadding="0">
|
||||
<tr><td valign="top"></td><td valign="top"><em>displayName</em> </td><td>The name of the display to open - '' is a valid name </td></tr>
|
||||
</table>
|
||||
</dl>
|
||||
<dl compact><dt><b>Returns:</b></dt><dd>Pointer to the opened X11 Display </dd></dl>
|
||||
|
||||
</div>
|
||||
</div><p>
|
||||
<a class="anchor" name="1c8a205c0b2f4f7a28d1ce51d5225871"></a><!-- doxytag: member="libcvautomation-xlib.h::cvaCloseDisplay" ref="1c8a205c0b2f4f7a28d1ce51d5225871" args="(Display *displayLocation)" -->
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">void cvaCloseDisplay </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">Display * </td>
|
||||
<td class="paramname"> <em>displayLocation</em> </td>
|
||||
<td> ) </td>
|
||||
<td width="100%"></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div class="memdoc">
|
||||
|
||||
<p>
|
||||
Simple wrapper for XCloseDisplay.
|
||||
<p>
|
||||
Currently this function literally just passes off to XCloseDisplay, but is designed to be used in the future if extra functionality is needed. <dl compact><dt><b>Parameters:</b></dt><dd>
|
||||
<table border="0" cellspacing="2" cellpadding="0">
|
||||
<tr><td valign="top"></td><td valign="top"><em>displayLocation</em> </td><td>Pointer to the display to close </td></tr>
|
||||
</table>
|
||||
</dl>
|
||||
<dl compact><dt><b>Returns:</b></dt><dd>Nothing </dd></dl>
|
||||
|
||||
</div>
|
||||
</div><p>
|
||||
<a class="anchor" name="8fbf1f5f968670a03c4c8e31f5afdaed"></a><!-- doxytag: member="libcvautomation-xlib.h::matchSubImage_X11" ref="8fbf1f5f968670a03c4c8e31f5afdaed" args="(Display *displayLocation, IplImage *subImage, int searchMethod, int tolerance)" -->
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">CvPoint matchSubImage_X11 </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">Display * </td>
|
||||
<td class="paramname"> <em>displayLocation</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">IplImage * </td>
|
||||
<td class="paramname"> <em>subImage</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">int </td>
|
||||
<td class="paramname"> <em>searchMethod</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">int </td>
|
||||
<td class="paramname"> <em>tolerance</em></td><td> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td>)</td>
|
||||
<td></td><td></td><td width="100%"></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div class="memdoc">
|
||||
|
||||
<p>
|
||||
Return the location of a sub image in the X11 root window.
|
||||
<p>
|
||||
This function wraps grabbing the X11 root window, converting it to IplImage format, and then giving this to <a class="el" href="libcvautomation-opencv_8h.html#297b9b5b22f77b65308d4057cff845f7">matchSubImage()</a> <dl compact><dt><b>Parameters:</b></dt><dd>
|
||||
<table border="0" cellspacing="2" cellpadding="0">
|
||||
<tr><td valign="top"></td><td valign="top"><em>displayLocation</em> </td><td>Pointer to the currently open X11 Display </td></tr>
|
||||
<tr><td valign="top"></td><td valign="top"><em>subImage</em> </td><td>The sub image (in IplImage format) to search for in the root X11 window </td></tr>
|
||||
<tr><td valign="top"></td><td valign="top"><em>searchMethod</em> </td><td>The search method to use when searching for <code>subImage</code> in the root X11 window </td></tr>
|
||||
<tr><td valign="top"></td><td valign="top"><em>tolerance</em> </td><td>The tolerance to use when searching for <code>subImage</code> in the root X11 window </td></tr>
|
||||
</table>
|
||||
</dl>
|
||||
<dl compact><dt><b>See also:</b></dt><dd>libcv_search_methods </dd></dl>
|
||||
<dl compact><dt><b>Returns:</b></dt><dd>The location of the sub image in root X11 window </dd></dl>
|
||||
|
||||
</div>
|
||||
</div><p>
|
||||
<a class="anchor" name="fb70c8eec779a6696b3df5af5bca1a6d"></a><!-- doxytag: member="libcvautomation-xlib.h::matchSubImage_X11_center" ref="fb70c8eec779a6696b3df5af5bca1a6d" args="(Display *displayLocation, IplImage *subImage, int searchMethod, int tolerance)" -->
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">CvPoint matchSubImage_X11_center </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">Display * </td>
|
||||
<td class="paramname"> <em>displayLocation</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">IplImage * </td>
|
||||
<td class="paramname"> <em>subImage</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">int </td>
|
||||
<td class="paramname"> <em>searchMethod</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">int </td>
|
||||
<td class="paramname"> <em>tolerance</em></td><td> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td>)</td>
|
||||
<td></td><td></td><td width="100%"></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div class="memdoc">
|
||||
|
||||
<p>
|
||||
Return the center of a sub image in root X11 window, rather than the top-left corner.
|
||||
<p>
|
||||
This function wraps grabbing the X11 root window, converting it to IplImage format, and then giving this to <a class="el" href="libcvautomation-opencv_8h.html#5bf9db7dfc5674e40180937b0c7787f3">matchSubImage_center()</a> <dl compact><dt><b>Parameters:</b></dt><dd>
|
||||
<table border="0" cellspacing="2" cellpadding="0">
|
||||
<tr><td valign="top"></td><td valign="top"><em>displayLocation</em> </td><td>Pointer to the currently open X11 Display </td></tr>
|
||||
<tr><td valign="top"></td><td valign="top"><em>subImage</em> </td><td>The sub image (in IplImage format) to search for in the root X11 window </td></tr>
|
||||
<tr><td valign="top"></td><td valign="top"><em>searchMethod</em> </td><td>The search method to use when searching for <code>subImage</code> in the root X11 window </td></tr>
|
||||
<tr><td valign="top"></td><td valign="top"><em>tolerance</em> </td><td>The tolerance to use when searching for <code>subImage</code> in the root X11 window </td></tr>
|
||||
</table>
|
||||
</dl>
|
||||
<dl compact><dt><b>See also:</b></dt><dd>libcv_search_methods </dd></dl>
|
||||
<dl compact><dt><b>Returns:</b></dt><dd>The center location of the sub image in the root X11 window </dd></dl>
|
||||
|
||||
</div>
|
||||
</div><p>
|
||||
<a class="anchor" name="d238842448af81c09f56d1d54253c1b5"></a><!-- doxytag: member="libcvautomation-xlib.h::matchSubImage_X11_location" ref="d238842448af81c09f56d1d54253c1b5" args="(Display *displayLocation, const char *subImage_location, int search_method, int tolerance)" -->
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">CvPoint matchSubImage_X11_location </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">Display * </td>
|
||||
<td class="paramname"> <em>displayLocation</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">const char * </td>
|
||||
<td class="paramname"> <em>subImage_location</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">int </td>
|
||||
<td class="paramname"> <em>searchMethod</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">int </td>
|
||||
<td class="paramname"> <em>tolerance</em></td><td> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td>)</td>
|
||||
<td></td><td></td><td width="100%"></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div class="memdoc">
|
||||
|
||||
<p>
|
||||
Return the location of a sub image in the X11 root window.
|
||||
<p>
|
||||
This function wraps grabbing the X11 root window, converting it to IplImage format, and then giving this to <a class="el" href="libcvautomation-opencv_8h.html#c0d3066da6b2d42251c876d12a7158c7">matchSubImage_location()</a> <dl compact><dt><b>Parameters:</b></dt><dd>
|
||||
<table border="0" cellspacing="2" cellpadding="0">
|
||||
<tr><td valign="top"></td><td valign="top"><em>displayLocation</em> </td><td>Pointer to the currently open X11 Display </td></tr>
|
||||
<tr><td valign="top"></td><td valign="top"><em>subImage_location</em> </td><td>The location of the sub image to search for in the root X11 window </td></tr>
|
||||
<tr><td valign="top"></td><td valign="top"><em>searchMethod</em> </td><td>The search method to use when searching for <code>subImage</code> in the root X11 window </td></tr>
|
||||
<tr><td valign="top"></td><td valign="top"><em>tolerance</em> </td><td>The tolerance to use when searching for <code>subImage</code> in the root X11 window </td></tr>
|
||||
</table>
|
||||
</dl>
|
||||
<dl compact><dt><b>See also:</b></dt><dd>libcv_search_methods </dd></dl>
|
||||
<dl compact><dt><b>Returns:</b></dt><dd>The center location of the sub image in the root X11 window </dd></dl>
|
||||
|
||||
<p>
|
||||
Referenced by <a class="el" href="cva-match_8c-source.html#l00035">main()</a>.
|
||||
</div>
|
||||
</div><p>
|
||||
<a class="anchor" name="b441627acd22889f404d89c9cc4809f5"></a><!-- doxytag: member="libcvautomation-xlib.h::matchSubImage_X11_location_center" ref="b441627acd22889f404d89c9cc4809f5" args="(Display *displayLocation, const char *subImage_location, int search_method, int tolerance)" -->
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">CvPoint matchSubImage_X11_location_center </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">Display * </td>
|
||||
<td class="paramname"> <em>displayLocation</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">const char * </td>
|
||||
<td class="paramname"> <em>subImage_location</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">int </td>
|
||||
<td class="paramname"> <em>searchMethod</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">int </td>
|
||||
<td class="paramname"> <em>tolerance</em></td><td> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td>)</td>
|
||||
<td></td><td></td><td width="100%"></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div class="memdoc">
|
||||
|
||||
<p>
|
||||
Return the center of a sub image in the root X11 window, rather than the top-left corner.
|
||||
<p>
|
||||
This function wraps grabbing the X11 root window, converting it to IplImage format, and then giving this to <a class="el" href="libcvautomation-opencv_8h.html#bed7c891adb272993912d973c0e08c27">matchSubImage_location_center()</a> <dl compact><dt><b>Parameters:</b></dt><dd>
|
||||
<table border="0" cellspacing="2" cellpadding="0">
|
||||
<tr><td valign="top"></td><td valign="top"><em>displayLocation</em> </td><td>Pointer to the currently open X11 Display </td></tr>
|
||||
<tr><td valign="top"></td><td valign="top"><em>subImage_location</em> </td><td>The location of the sub image to search for in the root X11 window </td></tr>
|
||||
<tr><td valign="top"></td><td valign="top"><em>searchMethod</em> </td><td>The search method to use when searching for <code>subImage</code> in the root X11 window </td></tr>
|
||||
<tr><td valign="top"></td><td valign="top"><em>tolerance</em> </td><td>The tolerance to use when searching for <code>subImage</code> in the root X11 window </td></tr>
|
||||
</table>
|
||||
</dl>
|
||||
<dl compact><dt><b>See also:</b></dt><dd>libcv_search_methods </dd></dl>
|
||||
<dl compact><dt><b>Returns:</b></dt><dd>The center location of the sub image in the root X11 window </dd></dl>
|
||||
|
||||
<p>
|
||||
Referenced by <a class="el" href="cva-match_8c-source.html#l00035">main()</a>.
|
||||
</div>
|
||||
</div><p>
|
||||
<hr size="1"><address style="align: right;"><small>Generated on Tue Jul 17 12:19:00 2012 for libcvautomation by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
145
libcvautomation-xtest_8h-source.html
Normal file
@ -0,0 +1,145 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>libcvautomation: libcvautomation-xtest.h Source File</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li id="current"><a href="files.html"><span>Files</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="files.html"><span>File List</span></a></li>
|
||||
<li><a href="globals.html"><span>File Members</span></a></li>
|
||||
</ul></div>
|
||||
<h1>libcvautomation-xtest.h</h1><a href="libcvautomation-xtest_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/*</span>
|
||||
<a name="l00002"></a>00002 <span class="comment"> * =====================================================================================</span>
|
||||
<a name="l00003"></a>00003 <span class="comment"> *</span>
|
||||
<a name="l00004"></a>00004 <span class="comment"> * Filename: libcvautomation-xinput.h</span>
|
||||
<a name="l00005"></a>00005 <span class="comment"> *</span>
|
||||
<a name="l00006"></a>00006 <span class="comment"> * Description: </span>
|
||||
<a name="l00007"></a>00007 <span class="comment"> *</span>
|
||||
<a name="l00008"></a>00008 <span class="comment"> * Created: 06/26/2012 09:08:41 AM</span>
|
||||
<a name="l00009"></a>00009 <span class="comment"> * Revision: none</span>
|
||||
<a name="l00010"></a>00010 <span class="comment"> * Compiler: gcc</span>
|
||||
<a name="l00011"></a>00011 <span class="comment"> *</span>
|
||||
<a name="l00012"></a>00012 <span class="comment"> * Author: Bradlee Speice (), bspeice.nc@gmail.com</span>
|
||||
<a name="l00013"></a>00013 <span class="comment"> * Organization: </span>
|
||||
<a name="l00014"></a>00014 <span class="comment"> *</span>
|
||||
<a name="l00015"></a>00015 <span class="comment"> * =====================================================================================</span>
|
||||
<a name="l00016"></a>00016 <span class="comment"> */</span>
|
||||
<a name="l00017"></a>00017
|
||||
<a name="l00018"></a>00018 <span class="preprocessor">#ifndef LIBCVAUTOMATION_XTEST_H</span>
|
||||
<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#define LIBCVAUTOMATION_XTEST_H</span>
|
||||
<a name="l00020"></a>00020 <span class="preprocessor"></span>
|
||||
<a name="l00021"></a>00021 <span class="preprocessor">#include <<a class="code" href="libcvautomation_8h.html">libcvautomation/libcvautomation.h</a>></span>
|
||||
<a name="l00022"></a>00022
|
||||
<a name="l00023"></a>00023 <span class="preprocessor">#define IS_CMD( x, y ) strncmp( x, y, strlen( y ) ) == 0</span>
|
||||
<a name="l00024"></a>00024 <span class="preprocessor"></span><span class="preprocessor">#define COMMAND_STR_LEN 512</span>
|
||||
<a name="l00025"></a>00025 <span class="preprocessor"></span>
|
||||
<a name="l00026"></a>00026 <span class="comment">/* Make sure that the XTest extension is supported.</span>
|
||||
<a name="l00027"></a>00027 <span class="comment"> * If it's not, return 0 (false) */</span>
|
||||
<a name="l00028"></a>00028 Bool <a class="code" href="libcvautomation-xtest_8h.html#d054a30613fdebf388218ce7c7ba8eaa">xte_XTestSupported</a> ( Display *displayLocation );
|
||||
<a name="l00029"></a>00029
|
||||
<a name="l00030"></a>00030 <span class="comment">/* Get the current location of the pointer */</span>
|
||||
<a name="l00031"></a>00031 <a class="code" href="structcvaPoint.html">cvaPoint</a> <a class="code" href="libcvautomation-xtest_8h.html#6b2aaf7275e7671691ff9e09d3365bdb">xte_pointerLocation</a> ( Display *displayLocation );
|
||||
<a name="l00032"></a>00032
|
||||
<a name="l00033"></a>00033 <span class="comment">/* Click the mouse where it is currently at */</span>
|
||||
<a name="l00034"></a>00034 <span class="keywordtype">void</span> <a class="code" href="libcvautomation-xtest_8h.html#e795b36e13508632ae69e9141dbd9b71">xte_clickMouse</a> ( Display *displayLocation, <span class="keywordtype">int</span> mouseButton );
|
||||
<a name="l00035"></a>00035
|
||||
<a name="l00036"></a>00036 <span class="comment">/* Click the mouse on an absolute screen location */</span>
|
||||
<a name="l00037"></a>00037 <span class="keywordtype">void</span> <a class="code" href="libcvautomation-xtest_8h.html#88f51bec45b626f4bf2f1eaf0eb2b570">xte_clickMouseXY</a> ( Display *displayLocation, <span class="keywordtype">int</span> xLocation, <span class="keywordtype">int</span> yLocation, <span class="keywordtype">int</span> mouseButton );
|
||||
<a name="l00038"></a>00038
|
||||
<a name="l00039"></a>00039 <span class="comment">/* Click the mouse on a screen location relative to where it currently is */</span>
|
||||
<a name="l00040"></a>00040 <span class="keywordtype">void</span> <a class="code" href="libcvautomation-xtest_8h.html#94f3c779c24b95d5fb743787a507d49e">xte_clickMouseRXY</a> ( Display *displayLocation, <span class="keywordtype">int</span> xIncrement, <span class="keywordtype">int</span> yIncrement, <span class="keywordtype">int</span> mouseButton );
|
||||
<a name="l00041"></a>00041
|
||||
<a name="l00042"></a>00042 <span class="comment">/* Click the mouse at the top-left corner of an image on the specified display */</span>
|
||||
<a name="l00043"></a>00043 <a class="code" href="structcvaPoint.html">cvaPoint</a> <a class="code" href="libcvautomation-xtest_8h.html#42e82ace64c71fb6cf247ac16ee95da1">xte_clickMouseImage</a> ( Display *displayLocation, IplImage *subImage, <span class="keywordtype">int</span> mouseButton, <span class="keywordtype">int</span> searchMethod, <span class="keywordtype">int</span> tolerance );
|
||||
<a name="l00044"></a>00044
|
||||
<a name="l00045"></a>00045 <span class="comment">/* Click the mouse at the top-left corner of an image on the specified display</span>
|
||||
<a name="l00046"></a>00046 <span class="comment"> * where the subImage is a file location */</span>
|
||||
<a name="l00047"></a>00047 <a class="code" href="structcvaPoint.html">cvaPoint</a> <a class="code" href="libcvautomation-xtest_8h.html#db6d976b6b4849a295e02aac2567fa86">xte_clickMouseImage_location</a> ( Display *displayLocation, <span class="keyword">const</span> <span class="keywordtype">char</span> *fileName, <span class="keywordtype">int</span> mouseButton, <span class="keywordtype">int</span> searchMethod, <span class="keywordtype">int</span> tolerance );
|
||||
<a name="l00048"></a>00048
|
||||
<a name="l00049"></a>00049 <span class="comment">/* Click the mouse at the center of an image on the specified display */</span>
|
||||
<a name="l00050"></a>00050 <a class="code" href="structcvaPoint.html">cvaPoint</a> <a class="code" href="libcvautomation-xtest_8h.html#a8f71206992c631e8e2827424b3d6090">xte_clickMouseImage_center</a> ( Display *displayLocation, IplImage *subImage, <span class="keywordtype">int</span> mouseButton, <span class="keywordtype">int</span> searchMethod, <span class="keywordtype">int</span> tolerance );
|
||||
<a name="l00051"></a>00051
|
||||
<a name="l00052"></a>00052 <span class="comment">/* Click the mouse at the center of an image on the specified display</span>
|
||||
<a name="l00053"></a>00053 <span class="comment"> * where the subImage is a file location */</span>
|
||||
<a name="l00054"></a>00054 <a class="code" href="structcvaPoint.html">cvaPoint</a> <a class="code" href="libcvautomation-xtest_8h.html#25b98d2e0780ae8f8afc152e620ceaaf">xte_clickMouseImage_location_center</a> ( Display *displayLocation, <span class="keyword">const</span> <span class="keywordtype">char</span> *fileName, <span class="keywordtype">int</span> mouseButton, <span class="keywordtype">int</span> searchMethod, <span class="keywordtype">int</span> tolerance );
|
||||
<a name="l00055"></a>00055
|
||||
<a name="l00056"></a>00056 <span class="comment">/* Move the mouse to a location and leave it there */</span>
|
||||
<a name="l00057"></a>00057 <span class="keywordtype">void</span> <a class="code" href="libcvautomation-xtest_8h.html#dcc93e8aa9a0fd445c3c1971e35e194b">xte_hoverMouseXY</a> ( Display *displayLocation, <span class="keywordtype">int</span> xLocation, <span class="keywordtype">int</span> yLocation );
|
||||
<a name="l00058"></a>00058
|
||||
<a name="l00059"></a>00059 <span class="comment">/* Move the mouse to a location relative to where it currently is and leave it there */</span>
|
||||
<a name="l00060"></a>00060 <span class="keywordtype">void</span> <a class="code" href="libcvautomation-xtest_8h.html#8bb400fb20f4416f6f93465935a76be2">xte_hoverMouseRXY</a> ( Display *displayLocation, <span class="keywordtype">int</span> xIncrement, <span class="keywordtype">int</span> yIncrement );
|
||||
<a name="l00061"></a>00061
|
||||
<a name="l00062"></a>00062 <span class="comment">/* Move the mouse to a location at the top-left corner of an image on the specified display</span>
|
||||
<a name="l00063"></a>00063 <span class="comment"> * but don't click the mouse */</span>
|
||||
<a name="l00064"></a>00064 <a class="code" href="structcvaPoint.html">cvaPoint</a> <a class="code" href="libcvautomation-xtest_8h.html#8827d93f5299e4aa99acc7c2c1d398c4">xte_hoverMouseImage</a> ( Display *displayLocation, IplImage *subImage, <span class="keywordtype">int</span> searchMethod, <span class="keywordtype">int</span> tolerance );
|
||||
<a name="l00065"></a>00065
|
||||
<a name="l00066"></a>00066 <span class="comment">/* Move the mouse to a location at the top-left corner of an image from file on the specified display</span>
|
||||
<a name="l00067"></a>00067 <span class="comment"> * but don't click the mouse */</span>
|
||||
<a name="l00068"></a>00068 <a class="code" href="structcvaPoint.html">cvaPoint</a> <a class="code" href="libcvautomation-xtest_8h.html#217328d995073752cd182098f18b3397">xte_hoverMouseImage_location</a> ( Display *displayLocation, <span class="keyword">const</span> <span class="keywordtype">char</span> *filename, <span class="keywordtype">int</span> searchMethod, <span class="keywordtype">int</span> tolerance );
|
||||
<a name="l00069"></a>00069
|
||||
<a name="l00070"></a>00070 <span class="comment">/* Move the mouse to a location at the center of an image on the specified display</span>
|
||||
<a name="l00071"></a>00071 <span class="comment"> * but don't click the mouse */</span>
|
||||
<a name="l00072"></a>00072 <a class="code" href="structcvaPoint.html">cvaPoint</a> <a class="code" href="libcvautomation-xtest_8h.html#9e8b30c7b59467dba853e467153123db">xte_hoverMouseImage_center</a> ( Display *displayLocation, IplImage *subImage, <span class="keywordtype">int</span> searchMethod, <span class="keywordtype">int</span> tolerance );
|
||||
<a name="l00073"></a>00073
|
||||
<a name="l00074"></a>00074 <span class="comment">/* Move the mouse to a location at the center of an image from file on the specified display</span>
|
||||
<a name="l00075"></a>00075 <span class="comment"> * but don't click the mouse */</span>
|
||||
<a name="l00076"></a>00076 <a class="code" href="structcvaPoint.html">cvaPoint</a> <a class="code" href="libcvautomation-xtest_8h.html#2b16677d20493c1c4f96c6e43b3fc0b7">xte_hoverMouseImage_location_center</a> ( Display *displayLocation, <span class="keyword">const</span> <span class="keywordtype">char</span> *fileName, <span class="keywordtype">int</span> searchMethod, <span class="keywordtype">int</span> tolerance );
|
||||
<a name="l00077"></a>00077
|
||||
<a name="l00078"></a>00078 <span class="comment">/* Push a mouse button down, but don't release it */</span>
|
||||
<a name="l00079"></a>00079 <span class="keywordtype">void</span> <a class="code" href="libcvautomation-xtest_8h.html#09ef864a45f24c7f682c96368a62be4d">xte_mouseDown</a> ( Display *displayLocation, <span class="keywordtype">int</span> mouseButton );
|
||||
<a name="l00080"></a>00080
|
||||
<a name="l00081"></a>00081 <span class="comment">/* Let a mouse button up */</span>
|
||||
<a name="l00082"></a>00082 <span class="keywordtype">void</span> <a class="code" href="libcvautomation-xtest_8h.html#68a7da112f124b61799162923657116a">xte_mouseUp</a> ( Display *displayLocation, <span class="keywordtype">int</span> mouseButton );
|
||||
<a name="l00083"></a>00083
|
||||
<a name="l00084"></a>00084 <span class="comment">/* Move the mouse a little bit */</span>
|
||||
<a name="l00085"></a>00085 <span class="keywordtype">void</span> <a class="code" href="libcvautomation-xtest_8h.html#2431de2ae4b296a9a91da6e20250a67b">xte_mouseJiggle</a> ( Display *displayLocation );
|
||||
<a name="l00086"></a>00086
|
||||
<a name="l00087"></a>00087 <span class="comment">/* Scroll the mouse up */</span>
|
||||
<a name="l00088"></a>00088 <span class="keywordtype">void</span> xte_mouseScrollUp ( Display *displayLocation );
|
||||
<a name="l00089"></a>00089
|
||||
<a name="l00090"></a>00090 <span class="comment">/* Scroll the mouse down */</span>
|
||||
<a name="l00091"></a>00091 <span class="keywordtype">void</span> xte_mouseScrollDown ( Display *displayLocation );
|
||||
<a name="l00092"></a>00092
|
||||
<a name="l00093"></a>00093 <span class="comment">/* Press and release a key </span>
|
||||
<a name="l00094"></a>00094 <span class="comment"> * Note that we use a string for *key, since keys like "space" are still valid. */</span>
|
||||
<a name="l00095"></a>00095 <span class="keywordtype">void</span> <a class="code" href="libcvautomation-xtest_8h.html#5ce1dbeb65bba1613e4e6619857b1746">xte_clickKey</a> ( Display *displayLocation, <span class="keywordtype">char</span> *key );
|
||||
<a name="l00096"></a>00096
|
||||
<a name="l00097"></a>00097 <span class="comment">/* Press and release keys in a string */</span>
|
||||
<a name="l00098"></a>00098 <span class="keywordtype">void</span> <a class="code" href="libcvautomation-xtest_8h.html#b327a24f45f673a4aeab6dfb7b9e411a">xte_clickKeyStr</a> ( Display *displayLocation, <span class="keywordtype">char</span> *string );
|
||||
<a name="l00099"></a>00099
|
||||
<a name="l00100"></a>00100 <span class="comment">/* Press a key down */</span>
|
||||
<a name="l00101"></a>00101 <span class="keywordtype">void</span> <a class="code" href="libcvautomation-xtest_8h.html#04ded64c2bd31804cc109502530890c0">xte_keyDown</a> ( Display *displayLocation, <span class="keywordtype">char</span> *key );
|
||||
<a name="l00102"></a>00102
|
||||
<a name="l00103"></a>00103 <span class="comment">/* Release a key */</span>
|
||||
<a name="l00104"></a>00104 <span class="keywordtype">void</span> <a class="code" href="libcvautomation-xtest_8h.html#574402ddf94858b340254a4e444fa404">xte_keyUp</a> ( Display *displayLocation, <span class="keywordtype">char</span> *key );
|
||||
<a name="l00105"></a>00105
|
||||
<a name="l00106"></a>00106 <span class="comment">/* Use one of the functions by command name */</span>
|
||||
<a name="l00107"></a>00107 <a class="code" href="structcvaPoint.html">cvaPoint</a> <a class="code" href="libcvautomation-xtest_8h.html#382af05e5669ea2cbb22608e41cbc49a">xte_commandString</a> ( Display *displayLocation, <span class="keywordtype">char</span> *commandString, <span class="keywordtype">int</span> mouseButton, <span class="keywordtype">int</span> searchMethod, <span class="keywordtype">int</span> tolerance );
|
||||
<a name="l00108"></a>00108
|
||||
<a name="l00109"></a>00109 <span class="preprocessor">#endif </span><span class="comment">/* LIBCVAUTOMATION_XTEST_H */</span>
|
||||
<a name="l00110"></a>00110
|
||||
<a name="l00111"></a>00111 <span class="comment">/* Doxygen information */</span>
|
||||
</pre></div><hr size="1"><address style="align: right;"><small>Generated on Tue Jul 17 12:19:00 2012 for libcvautomation by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
1211
libcvautomation-xtest_8h.html
Normal file
42
libcvautomation.html
Normal file
@ -0,0 +1,42 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>libcvautomation: Libcvautomation</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<h1><a class="anchor" name="libcvautomation">Libcvautomation</a></h1><dl compact><dt><b>Author:</b></dt><dd>Bradlee Speice <<a href="mailto:bspeice@uncc.edu">bspeice@uncc.edu</a>> </dd></dl>
|
||||
<dl compact><dt><b>Date:</b></dt><dd>7/11/2012 </dd></dl>
|
||||
<h2><a class="anchor" name="intro">
|
||||
Introduction</a></h2>
|
||||
Welcome to Libcvautomation! Libcvautomation is a GUI automation and testing tool based on image recognition and response. This program was designed as a direct replacement for <a href="http://sikuli.org">Sikuli</a> and <a href="https://wiki.ubuntu.com/Xpresser">Xpresser</a>. I was having incredible difficulty getting either of these solutions to work - Sikuli would crash whenever I tried to take a screenshot, and Xpresser was both too new for our RHEL 5 systems, but also died, or didn't work, or something else. I really liked the way each of these programs approached GUI automation, but they simply didn't work. Additionally, I wanted to create a simple solution - it does what you want it to, and that's it. <h2><a class="anchor" name="how_it_works">
|
||||
How Libcvautomation Works</a></h2>
|
||||
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 <a class="el" href="libcvautomation-xtest_8h.html">libcvautomation-xtest.h</a> 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 <a class="el" href="libcvautomation-xlib_8h.html#8fbf1f5f968670a03c4c8e31f5afdaed">matchSubImage_X11()</a> that allow you to match an image against the X11 root window in place. This means no more <code>'xwd | convert "<out_name>"'</code>. <h2><a class="anchor" name="using">
|
||||
Using Libcvautomation</a></h2>
|
||||
So how does one go about using libcvautomation? <br>
|
||||
I'm so glad you asked! I've provided a few reference programs - <code>cva-match</code> and <code>cva-input</code> - 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 <a class="el" href="writing_app_tests.html">Writing Application Tests</a> for more information on that. <h2><a class="anchor" name="questions">
|
||||
Questions? Comments? Concerns?</a></h2>
|
||||
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>. <hr size="1"><address style="align: right;"><small>Generated on Tue Jul 17 12:19:00 2012 for libcvautomation by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
96
libcvautomation_8h-source.html
Normal file
@ -0,0 +1,96 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>libcvautomation: libcvautomation.h Source File</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li id="current"><a href="files.html"><span>Files</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="files.html"><span>File List</span></a></li>
|
||||
<li><a href="globals.html"><span>File Members</span></a></li>
|
||||
</ul></div>
|
||||
<h1>libcvautomation.h</h1><a href="libcvautomation_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/*</span>
|
||||
<a name="l00002"></a>00002 <span class="comment"> * =====================================================================================</span>
|
||||
<a name="l00003"></a>00003 <span class="comment"> *</span>
|
||||
<a name="l00004"></a>00004 <span class="comment"> * Filename: libcvautomation.h</span>
|
||||
<a name="l00005"></a>00005 <span class="comment"> *</span>
|
||||
<a name="l00006"></a>00006 <span class="comment"> * Description: Include wrapper for libcvautomation subsections</span>
|
||||
<a name="l00007"></a>00007 <span class="comment"> *</span>
|
||||
<a name="l00008"></a>00008 <span class="comment"> * Created: 06/21/2012 12:20:43 PM</span>
|
||||
<a name="l00009"></a>00009 <span class="comment"> * Revision: none</span>
|
||||
<a name="l00010"></a>00010 <span class="comment"> * Compiler: gcc</span>
|
||||
<a name="l00011"></a>00011 <span class="comment"> *</span>
|
||||
<a name="l00012"></a>00012 <span class="comment"> * Author: Bradlee Speice (), bspeice.nc@gmail.com</span>
|
||||
<a name="l00013"></a>00013 <span class="comment"> * Organization: </span>
|
||||
<a name="l00014"></a>00014 <span class="comment"> *</span>
|
||||
<a name="l00015"></a>00015 <span class="comment"> * =====================================================================================</span>
|
||||
<a name="l00016"></a>00016 <span class="comment"> */</span>
|
||||
<a name="l00017"></a>00017 <span class="preprocessor">#ifndef LIBCVAUTOMATION_H</span>
|
||||
<a name="l00018"></a>00018 <span class="preprocessor"></span><span class="preprocessor">#define LIBCVAUTOMATION_H</span>
|
||||
<a name="l00019"></a>00019 <span class="preprocessor"></span>
|
||||
<a name="l00020"></a><a class="code" href="libcvautomation_8h.html#6b6ab32b9a55421b91988946b2180bd0">00020</a> <span class="preprocessor">#define LIBCVAUTOMATION_VERSION "1.2"</span>
|
||||
<a name="l00021"></a><a class="code" href="libcvautomation_8h.html#064f2ecb9f4013fd636368d0dd59e453">00021</a> <span class="preprocessor"></span><span class="preprocessor">#define LIBCVAUTOMATION_BUGREPORT "bspeice@uncc.edu"</span>
|
||||
<a name="l00022"></a>00022 <span class="preprocessor"></span>
|
||||
<a name="l00023"></a>00023 <span class="comment">/* C includes */</span>
|
||||
<a name="l00024"></a>00024 <span class="preprocessor">#include <stdio.h></span>
|
||||
<a name="l00025"></a>00025 <span class="preprocessor">#include <string.h></span>
|
||||
<a name="l00026"></a>00026
|
||||
<a name="l00027"></a>00027 <span class="comment">/* OpenCV includes */</span>
|
||||
<a name="l00028"></a>00028 <span class="preprocessor">#include <opencv/cv.h></span>
|
||||
<a name="l00029"></a>00029 <span class="preprocessor">#include <opencv/highgui.h></span>
|
||||
<a name="l00030"></a>00030
|
||||
<a name="l00031"></a>00031 <span class="comment">/* X11 includes */</span>
|
||||
<a name="l00032"></a>00032 <span class="preprocessor">#include <X11/Xlib.h></span>
|
||||
<a name="l00033"></a>00033 <span class="preprocessor">#include <X11/Xutil.h></span>
|
||||
<a name="l00034"></a>00034 <span class="preprocessor">#include <X11/extensions/XTest.h></span>
|
||||
<a name="l00035"></a>00035
|
||||
<a name="l00036"></a>00036 <span class="comment">/* Define a basic structure to help us with using multiple-picture arguments</span>
|
||||
<a name="l00037"></a>00037 <span class="comment"> * Yes, it's a hackish implementation, nobody said you had to use this one. */</span>
|
||||
<a name="l00038"></a><a class="code" href="structcvautomationList.html">00038</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
|
||||
<a name="l00039"></a>00039 <span class="comment">/* Use one or the other of fileName or cvaImage - cvaImage takes priority */</span>
|
||||
<a name="l00040"></a><a class="code" href="structcvautomationList.html#7608e8c8e792f6d7432841c94016bd50">00040</a> IplImage *cvaImage;
|
||||
<a name="l00041"></a><a class="code" href="structcvautomationList.html#81c1bcaa3616b80a839eead6cde7a652">00041</a> <span class="keywordtype">char</span> *fileName;
|
||||
<a name="l00042"></a>00042
|
||||
<a name="l00043"></a><a class="code" href="structcvautomationList.html#44326574b58698c640110e846c9131fc">00043</a> CvPoint resultPoint;
|
||||
<a name="l00044"></a><a class="code" href="structcvautomationList.html#c29f1b89cd1e02ef1ece7f9aacfdf831">00044</a> <span class="keywordtype">int</span> searchMethod;
|
||||
<a name="l00045"></a><a class="code" href="structcvautomationList.html#d2ad67f51290f2291e8aec5bde3f049c">00045</a> <span class="keywordtype">int</span> tolerance;
|
||||
<a name="l00046"></a>00046
|
||||
<a name="l00047"></a>00047 } <a class="code" href="structcvautomationList.html">cvautomationList</a>;
|
||||
<a name="l00048"></a>00048
|
||||
<a name="l00049"></a>00049 <span class="comment">/* Define another basic structure for points */</span>
|
||||
<a name="l00050"></a><a class="code" href="structcvaPoint.html">00050</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
|
||||
<a name="l00051"></a><a class="code" href="structcvaPoint.html#3e7df78670c23fb2114a386750edbf1e">00051</a> <span class="keywordtype">int</span> x, y;
|
||||
<a name="l00052"></a>00052 } <a class="code" href="structcvaPoint.html">cvaPoint</a>;
|
||||
<a name="l00053"></a>00053
|
||||
<a name="l00054"></a>00054 <span class="comment">/* Project component includes */</span>
|
||||
<a name="l00055"></a>00055 <span class="comment">/* The includes come here to make sure all function prototypes have access</span>
|
||||
<a name="l00056"></a>00056 <span class="comment"> * to the cvautomationList struct */</span>
|
||||
<a name="l00057"></a>00057 <span class="preprocessor">#include <<a class="code" href="libcvautomation-opencv_8h.html">libcvautomation/libcvautomation-opencv.h</a>></span>
|
||||
<a name="l00058"></a>00058 <span class="preprocessor">#include <<a class="code" href="libcvautomation-xlib_8h.html">libcvautomation/libcvautomation-xlib.h</a>></span>
|
||||
<a name="l00059"></a>00059 <span class="preprocessor">#include <<a class="code" href="libcvautomation-xtest_8h.html">libcvautomation/libcvautomation-xtest.h</a>></span>
|
||||
<a name="l00060"></a>00060
|
||||
<a name="l00061"></a>00061 <span class="preprocessor">#endif </span><span class="comment">/* LIBCVAUTOMATION_H */</span>
|
||||
<a name="l00062"></a>00062 <span class="comment">/* Doxygen information */</span>
|
||||
</pre></div><hr size="1"><address style="align: right;"><small>Generated on Tue Jul 17 12:19:00 2012 for libcvautomation by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
72
libcvautomation_8h.html
Normal file
@ -0,0 +1,72 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>libcvautomation: libcvautomation.h File Reference</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li id="current"><a href="files.html"><span>Files</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="files.html"><span>File List</span></a></li>
|
||||
<li><a href="globals.html"><span>File Members</span></a></li>
|
||||
</ul></div>
|
||||
<h1>libcvautomation.h File Reference</h1>The top-level include for all projects involving libcvautomation. <a href="#_details">More...</a>
|
||||
<p>
|
||||
<code>#include <stdio.h></code><br>
|
||||
<code>#include <string.h></code><br>
|
||||
<code>#include <opencv/cv.h></code><br>
|
||||
<code>#include <opencv/highgui.h></code><br>
|
||||
<code>#include <X11/Xlib.h></code><br>
|
||||
<code>#include <X11/Xutil.h></code><br>
|
||||
<code>#include <X11/extensions/XTest.h></code><br>
|
||||
<code>#include <<a class="el" href="libcvautomation-opencv_8h-source.html">libcvautomation/libcvautomation-opencv.h</a>></code><br>
|
||||
<code>#include <<a class="el" href="libcvautomation-xlib_8h-source.html">libcvautomation/libcvautomation-xlib.h</a>></code><br>
|
||||
<code>#include <<a class="el" href="libcvautomation-xtest_8h-source.html">libcvautomation/libcvautomation-xtest.h</a>></code><br>
|
||||
|
||||
<p>
|
||||
<a href="libcvautomation_8h-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
|
||||
<tr><td></td></tr>
|
||||
<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structcvautomationList.html">cvautomationList</a></td></tr>
|
||||
|
||||
<tr><td class="mdescLeft"> </td><td class="mdescRight">Implements a structure to build an array for methods like <a class="el" href="libcvautomation-opencv_8h.html#994981e2d31d5fb62fc3b227e36ebf87">matchSubImage_a()</a>. <a href="structcvautomationList.html#_details">More...</a><br></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structcvaPoint.html">cvaPoint</a></td></tr>
|
||||
|
||||
<tr><td class="mdescLeft"> </td><td class="mdescRight">Very simple structure to standardize how points are used in libcvautomation. <a href="structcvaPoint.html#_details">More...</a><br></td></tr>
|
||||
<tr><td colspan="2"><br><h2>Defines</h2></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6b6ab32b9a55421b91988946b2180bd0"></a><!-- doxytag: member="libcvautomation.h::LIBCVAUTOMATION_VERSION" ref="6b6ab32b9a55421b91988946b2180bd0" args="" -->
|
||||
#define </td><td class="memItemRight" valign="bottom"><a class="el" href="libcvautomation_8h.html#6b6ab32b9a55421b91988946b2180bd0">LIBCVAUTOMATION_VERSION</a> "1.2"</td></tr>
|
||||
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="064f2ecb9f4013fd636368d0dd59e453"></a><!-- doxytag: member="libcvautomation.h::LIBCVAUTOMATION_BUGREPORT" ref="064f2ecb9f4013fd636368d0dd59e453" args="" -->
|
||||
#define </td><td class="memItemRight" valign="bottom"><a class="el" href="libcvautomation_8h.html#064f2ecb9f4013fd636368d0dd59e453">LIBCVAUTOMATION_BUGREPORT</a> "bspeice@uncc.edu"</td></tr>
|
||||
|
||||
</table>
|
||||
<hr><a name="_details"></a><h2>Detailed Description</h2>
|
||||
The top-level include for all projects involving libcvautomation.
|
||||
<p>
|
||||
This source file includes all other files needed for libcvautomation projects, and also defines the <a class="el" href="structcvautomationList.html">cvautomationList</a> and <a class="el" href="structcvaPoint.html">cvaPoint</a> structs to be used among libcvautomation functions. Please note that while the opencv2 version is being documented, there is no actual difference in usage for opencv version 1. <dl compact><dt><b>Author:</b></dt><dd>Bradlee Speice </dd></dl>
|
||||
<dl compact><dt><b>Date:</b></dt><dd>6/21/2012 </dd></dl>
|
||||
|
||||
<p>
|
||||
Definition in file <a class="el" href="libcvautomation_8h-source.html">libcvautomation.h</a>.<hr size="1"><address style="align: right;"><small>Generated on Tue Jul 17 12:19:00 2012 for libcvautomation by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
45
pages.html
Normal file
@ -0,0 +1,45 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>libcvautomation: Page Index</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
<li id="current"><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<h1>libcvautomation Related Pages</h1>Here is a list of all related documentation pages:<ul>
|
||||
<li><a class="el" href="libcv_search_methods.html">Libcv Search Methods</a>
|
||||
|
||||
<li><a class="el" href="XTest_key_strings.html">XTest Key Strings</a>
|
||||
|
||||
<li><a class="el" href="XTest_command_strings.html">xte_commandString() Command Strings</a>
|
||||
|
||||
<li><a class="el" href="libcvautomation.html">Libcvautomation</a>
|
||||
|
||||
<li><a class="el" href="writing_app_tests.html">Writing Application Tests</a>
|
||||
|
||||
<li><a class="el" href="cva-input.html">cva-input</a>
|
||||
|
||||
<li><a class="el" href="cva-match.html">cva-match</a>
|
||||
|
||||
</ul>
|
||||
<hr size="1"><address style="align: right;"><small>Generated on Tue Jul 17 12:19:00 2012 for libcvautomation by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
BIN
print-helpbutton.png
Normal file
After Width: | Height: | Size: 925 B |
BIN
print-printbutton1.png
Normal file
After Width: | Height: | Size: 847 B |
BIN
print-printbutton2.png
Normal file
After Width: | Height: | Size: 733 B |
BIN
search.idx
Normal file
382
search.php
Normal file
@ -0,0 +1,382 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>Search</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
|
||||
<?php
|
||||
|
||||
function search_results()
|
||||
{
|
||||
return "Search Results";
|
||||
}
|
||||
|
||||
function matches_text($num)
|
||||
{
|
||||
if ($num==0)
|
||||
{
|
||||
return "Sorry, no documents matching your query.";
|
||||
}
|
||||
else if ($num==1)
|
||||
{
|
||||
return "Found <b>1</b> document matching your query.";
|
||||
}
|
||||
else // $num>1
|
||||
{
|
||||
return "Found <b>$num</b> documents matching your query. Showing best matches first.";
|
||||
}
|
||||
}
|
||||
|
||||
function report_matches()
|
||||
{
|
||||
return "Matches: ";
|
||||
}
|
||||
function end_form($value)
|
||||
{
|
||||
echo " <td><input type=\"text\" name=\"query\" value=\"$value\" size=\"20\" accesskey=\"s\"/></td>\n </tr>\n </table>\n </form>\n </li>\n </ul>\n</div>\n";
|
||||
}
|
||||
|
||||
function readInt($file)
|
||||
{
|
||||
$b1 = ord(fgetc($file)); $b2 = ord(fgetc($file));
|
||||
$b3 = ord(fgetc($file)); $b4 = ord(fgetc($file));
|
||||
return ($b1<<24)|($b2<<16)|($b3<<8)|$b4;
|
||||
}
|
||||
|
||||
function readString($file)
|
||||
{
|
||||
$result="";
|
||||
while (ord($c=fgetc($file))) $result.=$c;
|
||||
return $result;
|
||||
}
|
||||
|
||||
function readHeader($file)
|
||||
{
|
||||
$header =fgetc($file); $header.=fgetc($file);
|
||||
$header.=fgetc($file); $header.=fgetc($file);
|
||||
return $header;
|
||||
}
|
||||
|
||||
function computeIndex($word)
|
||||
{
|
||||
// Fast string hashing
|
||||
//$lword = strtolower($word);
|
||||
//$l = strlen($lword);
|
||||
//for ($i=0;$i<$l;$i++)
|
||||
//{
|
||||
// $c = ord($lword{$i});
|
||||
// $v = (($v & 0xfc00) ^ ($v << 6) ^ $c) & 0xffff;
|
||||
//}
|
||||
//return $v;
|
||||
|
||||
// Simple hashing that allows for substring search
|
||||
if (strlen($word)<2) return -1;
|
||||
// high char of the index
|
||||
$hi = ord($word{0});
|
||||
if ($hi==0) return -1;
|
||||
// low char of the index
|
||||
$lo = ord($word{1});
|
||||
if ($lo==0) return -1;
|
||||
// return index
|
||||
return $hi*256+$lo;
|
||||
}
|
||||
|
||||
function search($file,$word,&$statsList)
|
||||
{
|
||||
$index = computeIndex($word);
|
||||
if ($index!=-1) // found a valid index
|
||||
{
|
||||
fseek($file,$index*4+4); // 4 bytes per entry, skip header
|
||||
$index = readInt($file);
|
||||
if ($index) // found words matching the hash key
|
||||
{
|
||||
$start=sizeof($statsList);
|
||||
$count=$start;
|
||||
fseek($file,$index);
|
||||
$w = readString($file);
|
||||
while ($w)
|
||||
{
|
||||
$statIdx = readInt($file);
|
||||
if ($word==substr($w,0,strlen($word)))
|
||||
{ // found word that matches (as substring)
|
||||
$statsList[$count++]=array(
|
||||
"word"=>$word,
|
||||
"match"=>$w,
|
||||
"index"=>$statIdx,
|
||||
"full"=>strlen($w)==strlen($word),
|
||||
"docs"=>array()
|
||||
);
|
||||
}
|
||||
$w = readString($file);
|
||||
}
|
||||
$totalHi=0;
|
||||
$totalFreqHi=0;
|
||||
$totalFreqLo=0;
|
||||
for ($count=$start;$count<sizeof($statsList);$count++)
|
||||
{
|
||||
$statInfo = &$statsList[$count];
|
||||
$multiplier = 1;
|
||||
// whole word matches have a double weight
|
||||
if ($statInfo["full"]) $multiplier=2;
|
||||
fseek($file,$statInfo["index"]);
|
||||
$numDocs = readInt($file);
|
||||
$docInfo = array();
|
||||
// read docs info + occurrence frequency of the word
|
||||
for ($i=0;$i<$numDocs;$i++)
|
||||
{
|
||||
$idx=readInt($file);
|
||||
$freq=readInt($file);
|
||||
$docInfo[$i]=array("idx" => $idx,
|
||||
"freq" => $freq>>1,
|
||||
"rank" => 0.0,
|
||||
"hi" => $freq&1
|
||||
);
|
||||
if ($freq&1) // word occurs in high priority doc
|
||||
{
|
||||
$totalHi++;
|
||||
$totalFreqHi+=$freq*$multiplier;
|
||||
}
|
||||
else // word occurs in low priority doc
|
||||
{
|
||||
$totalFreqLo+=$freq*$multiplier;
|
||||
}
|
||||
}
|
||||
// read name and url info for the doc
|
||||
for ($i=0;$i<$numDocs;$i++)
|
||||
{
|
||||
fseek($file,$docInfo[$i]["idx"]);
|
||||
$docInfo[$i]["name"]=readString($file);
|
||||
$docInfo[$i]["url"]=readString($file);
|
||||
}
|
||||
$statInfo["docs"]=$docInfo;
|
||||
}
|
||||
$totalFreq=($totalHi+1)*$totalFreqLo + $totalFreqHi;
|
||||
for ($count=$start;$count<sizeof($statsList);$count++)
|
||||
{
|
||||
$statInfo = &$statsList[$count];
|
||||
$multiplier = 1;
|
||||
// whole word matches have a double weight
|
||||
if ($statInfo["full"]) $multiplier=2;
|
||||
for ($i=0;$i<sizeof($statInfo["docs"]);$i++)
|
||||
{
|
||||
$docInfo = &$statInfo["docs"];
|
||||
// compute frequency rank of the word in each doc
|
||||
$freq=$docInfo[$i]["freq"];
|
||||
if ($docInfo[$i]["hi"])
|
||||
{
|
||||
$statInfo["docs"][$i]["rank"]=
|
||||
(float)($freq*$multiplier+$totalFreqLo)/$totalFreq;
|
||||
}
|
||||
else
|
||||
{
|
||||
$statInfo["docs"][$i]["rank"]=
|
||||
(float)($freq*$multiplier)/$totalFreq;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return $statsList;
|
||||
}
|
||||
|
||||
function combine_results($results,&$docs)
|
||||
{
|
||||
foreach ($results as $wordInfo)
|
||||
{
|
||||
$docsList = &$wordInfo["docs"];
|
||||
foreach ($docsList as $di)
|
||||
{
|
||||
$key=$di["url"];
|
||||
$rank=$di["rank"];
|
||||
if (in_array($key, array_keys($docs)))
|
||||
{
|
||||
$docs[$key]["rank"]+=$rank;
|
||||
}
|
||||
else
|
||||
{
|
||||
$docs[$key] = array("url"=>$key,
|
||||
"name"=>$di["name"],
|
||||
"rank"=>$rank
|
||||
);
|
||||
}
|
||||
$docs[$key]["words"][] = array(
|
||||
"word"=>$wordInfo["word"],
|
||||
"match"=>$wordInfo["match"],
|
||||
"freq"=>$di["freq"]
|
||||
);
|
||||
}
|
||||
}
|
||||
return $docs;
|
||||
}
|
||||
|
||||
function filter_results($docs,&$requiredWords,&$forbiddenWords)
|
||||
{
|
||||
$filteredDocs=array();
|
||||
while (list ($key, $val) = each ($docs))
|
||||
{
|
||||
$words = &$docs[$key]["words"];
|
||||
$copy=1; // copy entry by default
|
||||
if (sizeof($requiredWords)>0)
|
||||
{
|
||||
foreach ($requiredWords as $reqWord)
|
||||
{
|
||||
$found=0;
|
||||
foreach ($words as $wordInfo)
|
||||
{
|
||||
$found = $wordInfo["word"]==$reqWord;
|
||||
if ($found) break;
|
||||
}
|
||||
if (!$found)
|
||||
{
|
||||
$copy=0; // document contains none of the required words
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (sizeof($forbiddenWords)>0)
|
||||
{
|
||||
foreach ($words as $wordInfo)
|
||||
{
|
||||
if (in_array($wordInfo["word"],$forbiddenWords))
|
||||
{
|
||||
$copy=0; // document contains a forbidden word
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
if ($copy) $filteredDocs[$key]=$docs[$key];
|
||||
}
|
||||
return $filteredDocs;
|
||||
}
|
||||
|
||||
function compare_rank($a,$b)
|
||||
{
|
||||
if ($a["rank"] == $b["rank"])
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
return ($a["rank"]>$b["rank"]) ? -1 : 1;
|
||||
}
|
||||
|
||||
function sort_results($docs,&$sorted)
|
||||
{
|
||||
$sorted = $docs;
|
||||
usort($sorted,"compare_rank");
|
||||
return $sorted;
|
||||
}
|
||||
|
||||
function report_results(&$docs)
|
||||
{
|
||||
echo "<table cellspacing=\"2\">\n";
|
||||
echo " <tr>\n";
|
||||
echo " <td colspan=\"2\"><h2>".search_results()."</h2></td>\n";
|
||||
echo " </tr>\n";
|
||||
$numDocs = sizeof($docs);
|
||||
if ($numDocs==0)
|
||||
{
|
||||
echo " <tr>\n";
|
||||
echo " <td colspan=\"2\">".matches_text(0)."</td>\n";
|
||||
echo " </tr>\n";
|
||||
}
|
||||
else
|
||||
{
|
||||
echo " <tr>\n";
|
||||
echo " <td colspan=\"2\">".matches_text($numDocs);
|
||||
echo "\n";
|
||||
echo " </td>\n";
|
||||
echo " </tr>\n";
|
||||
$num=1;
|
||||
foreach ($docs as $doc)
|
||||
{
|
||||
echo " <tr>\n";
|
||||
echo " <td align=\"right\">$num.</td>";
|
||||
echo "<td><a class=\"el\" href=\"".$doc["url"]."\">".$doc["name"]."</a></td>\n";
|
||||
echo " <tr>\n";
|
||||
echo " <td></td><td class=\"tiny\">".report_matches()." ";
|
||||
foreach ($doc["words"] as $wordInfo)
|
||||
{
|
||||
$word = $wordInfo["word"];
|
||||
$matchRight = substr($wordInfo["match"],strlen($word));
|
||||
echo "<b>$word</b>$matchRight(".$wordInfo["freq"].") ";
|
||||
}
|
||||
echo " </td>\n";
|
||||
echo " </tr>\n";
|
||||
$num++;
|
||||
}
|
||||
}
|
||||
echo "</table>\n";
|
||||
}
|
||||
|
||||
function main()
|
||||
{
|
||||
if(strcmp('4.1.0', phpversion()) > 0)
|
||||
{
|
||||
die("Error: PHP version 4.1.0 or above required!");
|
||||
}
|
||||
if (!($file=fopen("search.idx","rb")))
|
||||
{
|
||||
die("Error: Search index file could NOT be opened!");
|
||||
}
|
||||
if (readHeader($file)!="DOXS")
|
||||
{
|
||||
die("Error: Header of index file is invalid!");
|
||||
}
|
||||
$query="";
|
||||
if (array_key_exists("query", $_GET))
|
||||
{
|
||||
$query=$_GET["query"];
|
||||
}
|
||||
end_form($query);
|
||||
echo " \n<div class=\"searchresults\">\n";
|
||||
$results = array();
|
||||
$requiredWords = array();
|
||||
$forbiddenWords = array();
|
||||
$foundWords = array();
|
||||
$word=strtok($query," ");
|
||||
while ($word) // for each word in the search query
|
||||
{
|
||||
if (($word{0}=='+')) { $word=substr($word,1); $requiredWords[]=$word; }
|
||||
if (($word{0}=='-')) { $word=substr($word,1); $forbiddenWords[]=$word; }
|
||||
if (!in_array($word,$foundWords))
|
||||
{
|
||||
$foundWords[]=$word;
|
||||
search($file,strtolower($word),$results);
|
||||
}
|
||||
$word=strtok(" ");
|
||||
}
|
||||
$docs = array();
|
||||
combine_results($results,$docs);
|
||||
// filter out documents with forbidden word or that do not contain
|
||||
// required words
|
||||
$filteredDocs = filter_results($docs,$requiredWords,$forbiddenWords);
|
||||
// sort the results based on rank
|
||||
$sorted = array();
|
||||
sort_results($filteredDocs,$sorted);
|
||||
// report results to the user
|
||||
report_results($sorted);
|
||||
echo "</div>\n";
|
||||
fclose($file);
|
||||
}
|
||||
|
||||
main();
|
||||
|
||||
|
||||
?>
|
||||
<hr size="1"><address style="align: right;"><small>Generated on Tue Jul 17 12:19:03 2012 for libcvautomation by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
37
structcvaPoint-members.html
Normal file
@ -0,0 +1,37 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>libcvautomation: Member List</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li id="current"><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="annotated.html"><span>Class List</span></a></li>
|
||||
<li><a href="functions.html"><span>Class Members</span></a></li>
|
||||
</ul></div>
|
||||
<h1>cvaPoint Member List</h1>This is the complete list of members for <a class="el" href="structcvaPoint.html">cvaPoint</a>, including all inherited members.<p><table>
|
||||
<tr class="memlist"><td><a class="el" href="structcvaPoint.html#4b281115ba26b80bfc9ab6250b37d01d">x</a></td><td><a class="el" href="structcvaPoint.html">cvaPoint</a></td><td></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="structcvaPoint.html#3e7df78670c23fb2114a386750edbf1e">y</a></td><td><a class="el" href="structcvaPoint.html">cvaPoint</a></td><td></td></tr>
|
||||
</table><hr size="1"><address style="align: right;"><small>Generated on Tue Jul 17 12:19:00 2012 for libcvautomation by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
64
structcvaPoint.html
Normal file
@ -0,0 +1,64 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>libcvautomation: cvaPoint Struct Reference</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li id="current"><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="annotated.html"><span>Class List</span></a></li>
|
||||
<li><a href="functions.html"><span>Class Members</span></a></li>
|
||||
</ul></div>
|
||||
<h1>cvaPoint Struct Reference</h1><!-- doxytag: class="cvaPoint" -->Very simple structure to standardize how points are used in libcvautomation.
|
||||
<a href="#_details">More...</a>
|
||||
<p>
|
||||
<code>#include <<a class="el" href="libcvautomation_8h-source.html">libcvautomation.h</a>></code>
|
||||
<p>
|
||||
<a href="structcvaPoint-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
|
||||
<tr><td></td></tr>
|
||||
<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4b281115ba26b80bfc9ab6250b37d01d"></a><!-- doxytag: member="cvaPoint::x" ref="4b281115ba26b80bfc9ab6250b37d01d" args="" -->
|
||||
int </td><td class="memItemRight" valign="bottom"><a class="el" href="structcvaPoint.html#4b281115ba26b80bfc9ab6250b37d01d">x</a></td></tr>
|
||||
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3e7df78670c23fb2114a386750edbf1e"></a><!-- doxytag: member="cvaPoint::y" ref="3e7df78670c23fb2114a386750edbf1e" args="" -->
|
||||
int </td><td class="memItemRight" valign="bottom"><a class="el" href="structcvaPoint.html#3e7df78670c23fb2114a386750edbf1e">y</a></td></tr>
|
||||
|
||||
</table>
|
||||
<hr><a name="_details"></a><h2>Detailed Description</h2>
|
||||
Very simple structure to standardize how points are used in libcvautomation.
|
||||
<p>
|
||||
<dl compact><dt><b>Parameters:</b></dt><dd>
|
||||
<table border="0" cellspacing="2" cellpadding="0">
|
||||
<tr><td valign="top"></td><td valign="top"><em>x</em> </td><td>An X-coordinate </td></tr>
|
||||
<tr><td valign="top"></td><td valign="top"><em>y</em> </td><td>A Y-coordinate </td></tr>
|
||||
</table>
|
||||
</dl>
|
||||
|
||||
<p>
|
||||
|
||||
<p>
|
||||
Definition at line <a class="el" href="libcvautomation_8h-source.html#l00050">50</a> of file <a class="el" href="libcvautomation_8h-source.html">libcvautomation.h</a>.<hr>The documentation for this struct was generated from the following file:<ul>
|
||||
<li><a class="el" href="libcvautomation_8h-source.html">libcvautomation.h</a></ul>
|
||||
<hr size="1"><address style="align: right;"><small>Generated on Tue Jul 17 12:19:00 2012 for libcvautomation by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
40
structcvautomationList-members.html
Normal file
@ -0,0 +1,40 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>libcvautomation: Member List</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li id="current"><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="annotated.html"><span>Class List</span></a></li>
|
||||
<li><a href="functions.html"><span>Class Members</span></a></li>
|
||||
</ul></div>
|
||||
<h1>cvautomationList Member List</h1>This is the complete list of members for <a class="el" href="structcvautomationList.html">cvautomationList</a>, including all inherited members.<p><table>
|
||||
<tr class="memlist"><td><a class="el" href="structcvautomationList.html#7608e8c8e792f6d7432841c94016bd50">cvaImage</a></td><td><a class="el" href="structcvautomationList.html">cvautomationList</a></td><td></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="structcvautomationList.html#81c1bcaa3616b80a839eead6cde7a652">fileName</a></td><td><a class="el" href="structcvautomationList.html">cvautomationList</a></td><td></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="structcvautomationList.html#44326574b58698c640110e846c9131fc">resultPoint</a></td><td><a class="el" href="structcvautomationList.html">cvautomationList</a></td><td></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="structcvautomationList.html#c29f1b89cd1e02ef1ece7f9aacfdf831">searchMethod</a></td><td><a class="el" href="structcvautomationList.html">cvautomationList</a></td><td></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="structcvautomationList.html#d2ad67f51290f2291e8aec5bde3f049c">tolerance</a></td><td><a class="el" href="structcvautomationList.html">cvautomationList</a></td><td></td></tr>
|
||||
</table><hr size="1"><address style="align: right;"><small>Generated on Tue Jul 17 12:19:00 2012 for libcvautomation by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
77
structcvautomationList.html
Normal file
@ -0,0 +1,77 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>libcvautomation: cvautomationList Struct Reference</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li id="current"><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="annotated.html"><span>Class List</span></a></li>
|
||||
<li><a href="functions.html"><span>Class Members</span></a></li>
|
||||
</ul></div>
|
||||
<h1>cvautomationList Struct Reference</h1><!-- doxytag: class="cvautomationList" -->Implements a structure to build an array for methods like <a class="el" href="libcvautomation-opencv_8h.html#994981e2d31d5fb62fc3b227e36ebf87">matchSubImage_a()</a>.
|
||||
<a href="#_details">More...</a>
|
||||
<p>
|
||||
<code>#include <<a class="el" href="libcvautomation_8h-source.html">libcvautomation.h</a>></code>
|
||||
<p>
|
||||
<a href="structcvautomationList-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
|
||||
<tr><td></td></tr>
|
||||
<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7608e8c8e792f6d7432841c94016bd50"></a><!-- doxytag: member="cvautomationList::cvaImage" ref="7608e8c8e792f6d7432841c94016bd50" args="" -->
|
||||
IplImage * </td><td class="memItemRight" valign="bottom"><a class="el" href="structcvautomationList.html#7608e8c8e792f6d7432841c94016bd50">cvaImage</a></td></tr>
|
||||
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="81c1bcaa3616b80a839eead6cde7a652"></a><!-- doxytag: member="cvautomationList::fileName" ref="81c1bcaa3616b80a839eead6cde7a652" args="" -->
|
||||
char * </td><td class="memItemRight" valign="bottom"><a class="el" href="structcvautomationList.html#81c1bcaa3616b80a839eead6cde7a652">fileName</a></td></tr>
|
||||
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="44326574b58698c640110e846c9131fc"></a><!-- doxytag: member="cvautomationList::resultPoint" ref="44326574b58698c640110e846c9131fc" args="" -->
|
||||
CvPoint </td><td class="memItemRight" valign="bottom"><a class="el" href="structcvautomationList.html#44326574b58698c640110e846c9131fc">resultPoint</a></td></tr>
|
||||
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c29f1b89cd1e02ef1ece7f9aacfdf831"></a><!-- doxytag: member="cvautomationList::searchMethod" ref="c29f1b89cd1e02ef1ece7f9aacfdf831" args="" -->
|
||||
int </td><td class="memItemRight" valign="bottom"><a class="el" href="structcvautomationList.html#c29f1b89cd1e02ef1ece7f9aacfdf831">searchMethod</a></td></tr>
|
||||
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d2ad67f51290f2291e8aec5bde3f049c"></a><!-- doxytag: member="cvautomationList::tolerance" ref="d2ad67f51290f2291e8aec5bde3f049c" args="" -->
|
||||
int </td><td class="memItemRight" valign="bottom"><a class="el" href="structcvautomationList.html#d2ad67f51290f2291e8aec5bde3f049c">tolerance</a></td></tr>
|
||||
|
||||
</table>
|
||||
<hr><a name="_details"></a><h2>Detailed Description</h2>
|
||||
Implements a structure to build an array for methods like <a class="el" href="libcvautomation-opencv_8h.html#994981e2d31d5fb62fc3b227e36ebf87">matchSubImage_a()</a>.
|
||||
<p>
|
||||
This structure is a simple way to wrap up all needed information for matching sub images in one location. <dl compact><dt><b>Parameters:</b></dt><dd>
|
||||
<table border="0" cellspacing="2" cellpadding="0">
|
||||
<tr><td valign="top"></td><td valign="top"><em>cvaImage</em> </td><td>An image in IplImage format </td></tr>
|
||||
<tr><td valign="top"></td><td valign="top"><em>fileName</em> </td><td>The file location of an image to be loaded </td></tr>
|
||||
<tr><td valign="top"></td><td valign="top"><em>resultPoint</em> </td><td>Holder for a result - for example, storing where this sub image was located in its root image </td></tr>
|
||||
<tr><td valign="top"></td><td valign="top"><em>searchMethod</em> </td><td>The search method to use when searching for this sub image in a root image </td></tr>
|
||||
<tr><td valign="top"></td><td valign="top"><em>tolerance</em> </td><td>The tolerance to use when searching for this sub image in a root image </td></tr>
|
||||
</table>
|
||||
</dl>
|
||||
<dl compact><dt><b>See also:</b></dt><dd>libcv_search_methods </dd></dl>
|
||||
|
||||
<p>
|
||||
|
||||
<p>
|
||||
Definition at line <a class="el" href="libcvautomation_8h-source.html#l00038">38</a> of file <a class="el" href="libcvautomation_8h-source.html">libcvautomation.h</a>.<hr>The documentation for this struct was generated from the following file:<ul>
|
||||
<li><a class="el" href="libcvautomation_8h-source.html">libcvautomation.h</a></ul>
|
||||
<hr size="1"><address style="align: right;"><small>Generated on Tue Jul 17 12:19:00 2012 for libcvautomation by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
37
structlist-members.html
Normal file
@ -0,0 +1,37 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>libcvautomation: Member List</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li id="current"><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="annotated.html"><span>Class List</span></a></li>
|
||||
<li><a href="functions.html"><span>Class Members</span></a></li>
|
||||
</ul></div>
|
||||
<h1>list Member List</h1>This is the complete list of members for <a class="el" href="structlist.html">list</a>, including all inherited members.<p><table>
|
||||
<tr class="memlist"><td><a class="el" href="structlist.html#ed82c7e1f3c98f1c527884c60e88ac06">fileName</a></td><td><a class="el" href="structlist.html">list</a></td><td></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="structlist.html#17ba8e20337279fa9dfa74ac99c21bc1">next</a></td><td><a class="el" href="structlist.html">list</a></td><td></td></tr>
|
||||
</table><hr size="1"><address style="align: right;"><small>Generated on Tue Jul 17 12:19:00 2012 for libcvautomation by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
51
structlist.html
Normal file
@ -0,0 +1,51 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>libcvautomation: list Struct Reference</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li id="current"><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="annotated.html"><span>Class List</span></a></li>
|
||||
<li><a href="functions.html"><span>Class Members</span></a></li>
|
||||
</ul></div>
|
||||
<h1>list Struct Reference</h1><!-- doxytag: class="list" --><a href="structlist-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
|
||||
<tr><td></td></tr>
|
||||
<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ed82c7e1f3c98f1c527884c60e88ac06"></a><!-- doxytag: member="list::fileName" ref="ed82c7e1f3c98f1c527884c60e88ac06" args="" -->
|
||||
char * </td><td class="memItemRight" valign="bottom"><a class="el" href="structlist.html#ed82c7e1f3c98f1c527884c60e88ac06">fileName</a></td></tr>
|
||||
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="17ba8e20337279fa9dfa74ac99c21bc1"></a><!-- doxytag: member="list::next" ref="17ba8e20337279fa9dfa74ac99c21bc1" args="" -->
|
||||
<a class="el" href="structlist.html">list</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structlist.html#17ba8e20337279fa9dfa74ac99c21bc1">next</a></td></tr>
|
||||
|
||||
</table>
|
||||
<hr><a name="_details"></a><h2>Detailed Description</h2>
|
||||
|
||||
<p>
|
||||
|
||||
<p>
|
||||
Definition at line <a class="el" href="cva-match_8c-source.html#l00028">28</a> of file <a class="el" href="cva-match_8c-source.html">cva-match.c</a>.<hr>The documentation for this struct was generated from the following file:<ul>
|
||||
<li><a class="el" href="cva-match_8c-source.html">cva-match.c</a></ul>
|
||||
<hr size="1"><address style="align: right;"><small>Generated on Tue Jul 17 12:19:00 2012 for libcvautomation by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
102
tabs.css
Normal file
@ -0,0 +1,102 @@
|
||||
/* tabs styles, based on http://www.alistapart.com/articles/slidingdoors */
|
||||
|
||||
DIV.tabs
|
||||
{
|
||||
float : left;
|
||||
width : 100%;
|
||||
background : url("tab_b.gif") repeat-x bottom;
|
||||
margin-bottom : 4px;
|
||||
}
|
||||
|
||||
DIV.tabs UL
|
||||
{
|
||||
margin : 0px;
|
||||
padding-left : 10px;
|
||||
list-style : none;
|
||||
}
|
||||
|
||||
DIV.tabs LI, DIV.tabs FORM
|
||||
{
|
||||
display : inline;
|
||||
margin : 0px;
|
||||
padding : 0px;
|
||||
}
|
||||
|
||||
DIV.tabs FORM
|
||||
{
|
||||
float : right;
|
||||
}
|
||||
|
||||
DIV.tabs A
|
||||
{
|
||||
float : left;
|
||||
background : url("tab_r.gif") no-repeat right top;
|
||||
border-bottom : 1px solid #84B0C7;
|
||||
font-size : x-small;
|
||||
font-weight : bold;
|
||||
text-decoration : none;
|
||||
}
|
||||
|
||||
DIV.tabs A:hover
|
||||
{
|
||||
background-position: 100% -150px;
|
||||
}
|
||||
|
||||
DIV.tabs A:link, DIV.tabs A:visited,
|
||||
DIV.tabs A:active, DIV.tabs A:hover
|
||||
{
|
||||
color: #1A419D;
|
||||
}
|
||||
|
||||
DIV.tabs SPAN
|
||||
{
|
||||
float : left;
|
||||
display : block;
|
||||
background : url("tab_l.gif") no-repeat left top;
|
||||
padding : 5px 9px;
|
||||
white-space : nowrap;
|
||||
}
|
||||
|
||||
DIV.tabs INPUT
|
||||
{
|
||||
float : right;
|
||||
display : inline;
|
||||
font-size : 1em;
|
||||
}
|
||||
|
||||
DIV.tabs TD
|
||||
{
|
||||
font-size : x-small;
|
||||
font-weight : bold;
|
||||
text-decoration : none;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* Commented Backslash Hack hides rule from IE5-Mac \*/
|
||||
DIV.tabs SPAN {float : none;}
|
||||
/* End IE5-Mac hack */
|
||||
|
||||
DIV.tabs A:hover SPAN
|
||||
{
|
||||
background-position: 0% -150px;
|
||||
}
|
||||
|
||||
DIV.tabs LI#current A
|
||||
{
|
||||
background-position: 100% -150px;
|
||||
border-width : 0px;
|
||||
}
|
||||
|
||||
DIV.tabs LI#current SPAN
|
||||
{
|
||||
background-position: 0% -150px;
|
||||
padding-bottom : 6px;
|
||||
}
|
||||
|
||||
DIV.nav
|
||||
{
|
||||
background : none;
|
||||
border : none;
|
||||
border-bottom : 1px solid #84B0C7;
|
||||
}
|
367
writing_app_tests.html
Normal file
@ -0,0 +1,367 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>libcvautomation: Writing Application Tests</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<h1><a class="anchor" name="writing_app_tests">Writing Application Tests</a></h1><dl compact><dt><b>Author:</b></dt><dd>Bradlee Speice <<a href="mailto:bspeice@uncc.edu">bspeice@uncc.edu</a>> </dd></dl>
|
||||
<dl compact><dt><b>Date:</b></dt><dd>7/11/2012 </dd></dl>
|
||||
<h2><a class="anchor" name="audience">
|
||||
Audience</a></h2>
|
||||
<ul>
|
||||
<li>
|
||||
This document was written for people with some intermediate knowledge of BASH. </li>
|
||||
<li>
|
||||
Screenshot experience is required - being able to create screenshots of windows using <a href="http://www.gimp.org/">GIMP</a>, the <code>import</code> command from <a href="http://www.imagemagick.org/script/index.php">ImageMagick</a>, or something similar. <br>
|
||||
</li>
|
||||
<li>
|
||||
Required for working with libcvautomation internals (not needed strictly for writing application testing): <ul>
|
||||
<li>
|
||||
Intermediate-level C knowledge required for interfacing with libcvautomation. There isn't much complicated going on with libcvautomation itself, but you need to know to use <a class="el" href="libcvautomation-xlib_8h.html#a6e348c2e829e1addb446160f54723a0">cvaOpenDisplay()</a> for grabbing a display and then <a class="el" href="libcvautomation-xlib_8h.html#1c8a205c0b2f4f7a28d1ce51d5225871">cvaCloseDisplay()</a> for closing it later for example. </li>
|
||||
<li>
|
||||
C++ is available, but currently only as <code>extern "C"</code> style bindings. </li>
|
||||
<li>
|
||||
Python bindings are in progress as of time-of-writing </li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
<h2><a class="anchor" name="purpose">
|
||||
Purpose</a></h2>
|
||||
<ul>
|
||||
<li>
|
||||
This document is intended to outline the libcvautomation testing library for GUI applications and its two reference programs <code>cva-match</code> and <code>cva-input</code> </li>
|
||||
<li>
|
||||
These programs allow you to automate mouse and keyboard events in response to what appears on screen - for example, clicking a button based on an image of that button on screen. </li>
|
||||
</ul>
|
||||
<h2><a class="anchor" name="using">
|
||||
Using Libcvautomation</a></h2>
|
||||
<ul>
|
||||
<li>
|
||||
Since libcvautomation is a shared-object library intended to bundle a lot of functionality in one area, we must use external programs to agin access to the functions of libcvautomation. </li>
|
||||
<li>
|
||||
Two reference programs have been included to make this easy - <code>cva-match</code> and <code>cva-input</code> </li>
|
||||
<li>
|
||||
The reference programs are fairly full-featured, and expose most of libcvautomation: <ul>
|
||||
<li>
|
||||
<code>cva-match</code> allows you to match multiple image files against a root image providing very fine control over how specific the match is </li>
|
||||
<li>
|
||||
<code>cva-input</code> allows you to drive the X11 server using the XTest extension - for example, clicking on a button from image, clicking a key on the keyboard, and more. </li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
These two programs should implement all functionality needed for GUI automation. Please contact <a href="mailto:bspeice@uncc.edu">bspeice@uncc.edu</a> if you have suggestions for extra functionality, patches, comments, etc. </li>
|
||||
<li>
|
||||
Finally, if you want to write your own programs using libcvautomation, the headers are located on your system. Use: <div class="fragment"><pre class="fragment"><span class="preprocessor"> #include <<a class="code" href="libcvautomation_8h.html">libcvautomation/libcvautomation.h</a>></span>
|
||||
</pre></div> to include all necessary header files. See the "Files" tab above to get an idea of what functionality exists. <dl compact><dt><b>Note:</b></dt><dd>Intermediate C or C++ knowledge is required for programming with libcvautomation. C++ is currently only supported through <code>extern "C"</code>, and full C++ bindings are not currently planned. Libcvautomation itself is incredibly simple, but interfaces with a few API's (Xlib, libcv) that it is helpful to have an idea of how to use.</dd></dl>
|
||||
</li>
|
||||
</ul>
|
||||
<h2><a class="anchor" name="testing">
|
||||
Application Testing</a></h2>
|
||||
Now we get into the good stuff. The basic process for application testing is as follows: <ul>
|
||||
<li>
|
||||
Create a sequence of screenshots for all mouse-clicks </li>
|
||||
<li>
|
||||
Create a testing wrapper in BASH for automating the application </li>
|
||||
<li>
|
||||
Test the wrapper and tune any necessary options </li>
|
||||
</ul>
|
||||
<h3><a class="anchor" name="screenshot_sequence">
|
||||
Creating the Screenshot Sequence</a></h3>
|
||||
<ul>
|
||||
<li>
|
||||
This process creates a set of screenshots by which libcvautomation can drive the X11 server </li>
|
||||
<li>
|
||||
The process is simple - create a screenshot of all buttons you would like to click in an application test, or location where you would like to move the mouse, etc. </li>
|
||||
<li>
|
||||
This can be accomplished a number of different ways - using GIMP, the <code>import</code> command, or any other screenshot program. Additionally, libcvautomation will support any image format that OpenCV does. At the time of writing, these are: <ul>
|
||||
<li>
|
||||
Windows bitmaps - <code>*.bmp</code>, <code>*.dib</code> </li>
|
||||
<li>
|
||||
JPEG files - <code>*.jpeg</code>, <code>*.jpg</code>, <code>*.jpe</code> </li>
|
||||
<li>
|
||||
JPEG 2000 files - <code>*.jp2</code> </li>
|
||||
<li>
|
||||
Portable Network Graphics - <code>*.png</code> </li>
|
||||
<li>
|
||||
Portable image format - <code>*.pbm</code>, <code>*.pgm</code>, <code>*.ppm</code> </li>
|
||||
<li>
|
||||
Sun rasters - <code>*.sr</code>, <code>*.ras</code> </li>
|
||||
<li>
|
||||
TIFF files - <code>*.tiff</code>, <code>*.tif</code> </li>
|
||||
</ul>
|
||||
<br>
|
||||
</li>
|
||||
<li>
|
||||
Some tips on creating screenshots: <ul>
|
||||
<li>
|
||||
Use as distinct an image as possible in a screenshot. For example, the following images look very similar, but can do very different things: <div align="center">
|
||||
<img src="print-printbutton1.png" alt="print-printbutton1.png">
|
||||
</div>
|
||||
<br>
|
||||
<div align="center">
|
||||
<img src="print-helpbutton.png" alt="print-helpbutton.png">
|
||||
</div>
|
||||
<ul>
|
||||
<li>
|
||||
The large amount of grey-space in each of the images can be very confusing. While the text itself is different, the overwhelming amount of grey space can result in a false positive. Limiting the space of the screenshot can be useful: <div align="center">
|
||||
<img src="print-printbutton2.png" alt="print-printbutton2.png">
|
||||
</div>
|
||||
<br>
|
||||
<div align="center">
|
||||
<img src="print-helpbutton.png" alt="print-helpbutton.png">
|
||||
</div>
|
||||
</li>
|
||||
<li>
|
||||
Limiting the button size in this case helps the program identify what button you want to click, but in general you want to include as much detail as possible. </li>
|
||||
</ul>
|
||||
<br>
|
||||
</li>
|
||||
<li>
|
||||
Be careful of where an image may appear multiple times in a screenshot. For example, a "Help" button on a dialog may get confused with the "Help" menu at the top of the screen. </li>
|
||||
</ul>
|
||||
<p>
|
||||
</li>
|
||||
</ul>
|
||||
<h3><a class="anchor" name="testing_wrapper">
|
||||
Create a Testing Wrapper</a></h3>
|
||||
<ul>
|
||||
<li>
|
||||
This is where the BASH knowledge comes into play. We are going to write a script that will run your application test, to make sure that the GUI is functioning correctly. </li>
|
||||
<li>
|
||||
The following is the (strongly) recommended process, but is not strictly necessary to follow this. The way I'm going to explain this is by giving an example test I wrote, and explain what is going on: <div class="fragment"><pre class="fragment"><span class="preprocessor"> #!/bin/bash</span>
|
||||
<span class="preprocessor"></span><span class="preprocessor"> #This is an application test involving libcvautomation and libreoffice</span>
|
||||
<span class="preprocessor"></span> . libcvautomation_funcs
|
||||
|
||||
<span class="preprocessor"> #Changing any wrapper parameters should go here</span>
|
||||
<span class="preprocessor"></span>
|
||||
|
||||
start_libreoffice_writer ()
|
||||
{
|
||||
click_i <span class="stringliteral">"screens/gnome-1_menu.png"</span> <span class="stringliteral">"screens/kde-1_menu.png"</span> && sleep 1
|
||||
click_i <span class="stringliteral">"screens/gnome-2_officeMenu.png"</span> <span class="stringliteral">"screens/kde-2_officeMenu.png"</span> && sleep 1
|
||||
hover_i <span class="stringliteral">"screens/gnome-3_LibreOfficeWriter.png"</span> <span class="stringliteral">"screens/kde-3_LibreOfficeWriter.png"</span>
|
||||
jiggle_mouse
|
||||
click
|
||||
sleep 30
|
||||
}
|
||||
|
||||
close_libreoffice_writer()
|
||||
{
|
||||
click_i <span class="stringliteral">"screens/gnome-4_fileMenu.png"</span> <span class="stringliteral">"screens/kde-4_fileMenu.png"</span> && sleep 1
|
||||
click_i <span class="stringliteral">"screens/gnome-5_fileExit.png"</span> <span class="stringliteral">"screens/kde-5_fileExit.png"</span> && sleep 1
|
||||
click_i <span class="stringliteral">"screens/gnome-6_discard.png"</span> <span class="stringliteral">"screens/kde-6_discard.png"</span> && sleep 1
|
||||
}
|
||||
|
||||
start_libreoffice_writer
|
||||
close_libreoffice_writer
|
||||
</pre></div> <br>
|
||||
<div class="fragment"><pre class="fragment"><span class="preprocessor"> #!/bin/bash</span>
|
||||
<span class="preprocessor"></span><span class="preprocessor"> #This is an application test involving libcvautomation and libreoffice</span>
|
||||
<span class="preprocessor"></span> . libcvautomation_funcs
|
||||
<span class="preprocessor"> #Changing any wrapper parameters should go here</span>
|
||||
</pre></div> </li>
|
||||
<li>
|
||||
The purpose of these lines is just the standard BASH header. Additionally, we import a wrapper created for libcvautomation to make our job easier. Please note that the wrapper is included at the top of the source tree, you may need to copy it somewhere in order to use it. The wrapper itself is a handful of macros used to make our job easy. </li>
|
||||
<li>
|
||||
Changing any wrapper parameters should go after sourcing the wrapper functions. See below on <a class="el" href="writing_app_tests.html#testing_test_wrapper">Testing the Testing Wrapper</a> for more information. <br>
|
||||
<br>
|
||||
<div class="fragment"><pre class="fragment"> start_libreoffice_writer ()
|
||||
{
|
||||
click_i <span class="stringliteral">"screens/gnome-1_menu.png"</span> <span class="stringliteral">"screens/kde-1_menu.png"</span> && sleep 1
|
||||
click_i <span class="stringliteral">"screens/gnome-2_officeMenu.png"</span> <span class="stringliteral">"screens/kde-2_officeMenu.png"</span> && sleep 1
|
||||
hover_i <span class="stringliteral">"screens/gnome-3_LibreOfficeWriter.png"</span> <span class="stringliteral">"screens/kde-3_LibreOfficeWriter.png"</span>
|
||||
jiggle_mouse
|
||||
click
|
||||
sleep 30
|
||||
}
|
||||
</pre></div> </li>
|
||||
<li>
|
||||
This is the actual body of work done by libcvautomation </li>
|
||||
<li>
|
||||
<code>click_i</code> is a function to click the mouse at an image - in this case, the gnome or kde menu. <ul>
|
||||
<li>
|
||||
Because of how the cva-input program is designed, you can give it multiple images, and it will only select the one currently available. See <a class="el" href="writing_app_tests.html#testing_test_wrapper">Testing the Testing Wrapper</a> for more information on how to use this (TOLERANCE specifically) </li>
|
||||
<li>
|
||||
By using the function <code>click_i</code>, we make things a bit more readable - the full command line is <code>cva-input -s 'icmouseclick <filename>'</code> </li>
|
||||
<li>
|
||||
See <a class="el" href="writing_app_tests.html#wrapper_functions">Appendix of Wrapper Functions</a> for a list of all functions available in the wrapper. </li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<code>hover_i</code> is a function to move the mouse to an image - in this case, move it over the LibreOffice menu item. </li>
|
||||
<li>
|
||||
Then we jiggle the mouse to make sure that the item activates, click, and wait for the program to start up. <br>
|
||||
<br>
|
||||
<div class="fragment"><pre class="fragment"> close_libreoffice_writer()
|
||||
{
|
||||
click_i <span class="stringliteral">"screens/gnome-4_fileMenu.png"</span> <span class="stringliteral">"screens/kde-4_fileMenu.png"</span> && sleep 1
|
||||
click_i <span class="stringliteral">"screens/gnome-5_fileExit.png"</span> <span class="stringliteral">"screens/kde-5_fileExit.png"</span> && sleep 1
|
||||
click_i <span class="stringliteral">"screens/gnome-6_discard.png"</span> <span class="stringliteral">"screens/kde-6_discard.png"</span> && sleep 1
|
||||
}
|
||||
</pre></div> </li>
|
||||
<li>
|
||||
Use the <code>click_i</code> function to close down LibreOffice writer - Find the "File" menu, click "Exit", and then make sure to discard all changes. <br>
|
||||
<br>
|
||||
<div class="fragment"><pre class="fragment"> start_libreoffice_writer
|
||||
close_libreoffice_writer
|
||||
</pre></div> </li>
|
||||
<li>
|
||||
Actually run the functions given. <br>
|
||||
<br>
|
||||
</li>
|
||||
<li>
|
||||
Please note that this is a fairly trivial example. The full list of commands available in the wrapper is given in <a class="el" href="writing_app_tests.html#wrapper_functions">Appendix of Wrapper Functions</a> </li>
|
||||
</ul>
|
||||
<h3><a class="anchor" name="testing_test_wrapper">
|
||||
Testing the Testing Wrapper</a></h3>
|
||||
<ul>
|
||||
<li>
|
||||
First things first, run through the testing wrapper to make sure that everything is O.K. </li>
|
||||
<li>
|
||||
If you need to, some things you can do to tune the application test are as follows: <ul>
|
||||
<li>
|
||||
Set the <code>SEARCH_METHOD</code> <ul>
|
||||
<li>
|
||||
This value adjusts how libcvautomation searches for sub-images. See <a class="el" href="libcv_search_methods.html">Libcv Search Methods</a> for more information on accepted values, and how each works. </li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
Set the <code>TOLERANCE</code> <ul>
|
||||
<li>
|
||||
This value adjusts how strict libcvautomation is when trying to find a sub-image. See <a class="el" href="libcv_search_methods.html">Libcv Search Methods</a> for more information on how to control how libcvautomation searches for images. </li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
Set <code>USE_SANE_TOLERANCE</code> <ul>
|
||||
<li>
|
||||
This value implements a more sane way of setting the tolerance value - Where normally the tolerance ranges from <code>INT_MIN</code> to <code>INT_MAX</code>, the sane tolerance accepts values of 1 - 100 (<img class="formulaInl" alt="$ 1 \approx 0 $" src="form_9.png">, and <img class="formulaInl" alt="$ 100 \approx \c INT_MAX $" src="form_10.png">) </li>
|
||||
<li>
|
||||
To enable sane tolerance, set:<div class="fragment"><pre class="fragment"> USE_SANE_TOLERANCE=<span class="stringliteral">"<any_value>"</span>
|
||||
</pre></div> </li>
|
||||
<li>
|
||||
To disable sane tolerance (the default) set:<div class="fragment"><pre class="fragment"> USE_SANE_TOLERANCE=<span class="stringliteral">""</span>
|
||||
</pre></div> </li>
|
||||
<li>
|
||||
Set <code>USE_CENTER</code> <ul>
|
||||
<li>
|
||||
By default, the wrapper will use the center of an image as opposed to the upper-left corner to click on. To disable this behavior, set:<div class="fragment"><pre class="fragment"> USE_CENTER=<span class="stringliteral">""</span>
|
||||
</pre></div> </li>
|
||||
<li>
|
||||
To set the behavior back to using center-based matching, set:<div class="fragment"><pre class="fragment"> USE_CENTER=<span class="stringliteral">"<any_value>"</span>
|
||||
</pre></div> </li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
Set the <code>OUTFILE</code> and <code>ERRFILE</code> <ul>
|
||||
<li>
|
||||
The application wrapper logs a whole lot of information about what it does to make debugging easy. However, to make sure that you're not overwhelmed by the output, the wrapper also directs the output to <code>/dev/null</code> by default. </li>
|
||||
<li>
|
||||
To redirect the output of <code>OUTFILE</code> and <code>ERRFILE</code>, set them to any file you want. For example, the following code will create a temporary file for OUTFILE and ERRFILE, and notify you of what they are: <div class="fragment"><pre class="fragment"> OUTFILE=`mktemp`
|
||||
ERRFILE=`mktemp`
|
||||
echo <span class="stringliteral">"OUTFILE location: $OUTFILE"</span>
|
||||
echo <span class="stringliteral">"ERRFILE location: $ERRFILE"</span>
|
||||
</pre></div> </li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
A full list of commands provided by the wrapper is available at <a class="el" href="writing_app_tests.html#wrapper_functions">Appendix of Wrapper Functions</a> </li>
|
||||
</ul>
|
||||
<p>
|
||||
<dl compact><dt><b>Note:</b></dt><dd>These options are controlled using the testing script as demonstrated above. Any modifications to the following values should be done at the line:<div class="fragment"><pre class="fragment"><span class="preprocessor"> #Changing any wrapper parameters should go here </span>
|
||||
</pre></div> </dd></dl>
|
||||
</li>
|
||||
</ul>
|
||||
<h2><a class="anchor" name="wrapping_up">
|
||||
Wrapping Up</a></h2>
|
||||
<ul>
|
||||
<li>
|
||||
At this point you should have all the information you need to write your own application tests. The libcvautomation library and reference programs were designed to be simple and powerful, but if you invest the time to learn them and some expert BASH scripting, you can do some very complex things. <ul>
|
||||
<li>
|
||||
For example, integrating a <a href="http://testanything.org/wiki/index.php/Tap-functions">Test Anything Protocol</a> wrapper into your scripts as well. </li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
If you have questions, comments, concerns, suggestions, or feedback in general, feel free to let me know at <a href="mailto:bspeice@uncc.edu">bspeice@uncc.edu</a>. </li>
|
||||
</ul>
|
||||
<h2><a class="anchor" name="wrapper_functions">
|
||||
Appendix of Wrapper Functions</a></h2>
|
||||
<div class="fragment"><pre class="fragment"> click
|
||||
</pre></div> Click the mouse where it is currently located <br>
|
||||
<br>
|
||||
<p>
|
||||
<div class="fragment"><pre class="fragment"> click_xy <x-coordinate> <y-coordinate>
|
||||
</pre></div> Click the mouse on an absolute point on screen <dl compact><dt><b>Note:</b></dt><dd>The actual process is to move the mouse to the given location, then click there. <br>
|
||||
<br>
|
||||
</dd></dl>
|
||||
<div class="fragment"><pre class="fragment"> clickr_xy <x-increment> <y-increment>
|
||||
</pre></div> Click the mouse on the screen relative to where the mouse is at <dl compact><dt><b>Note:</b></dt><dd>The actual process is to move the mouse the given distance, then click there. <p>
|
||||
Also, note that a positive <code>x-increment</code> moves the mouse to the right, and a positive <code>y-increment</code> moves the mouse down. <br>
|
||||
<br>
|
||||
</dd></dl>
|
||||
<div class="fragment"><pre class="fragment"> click_i <filename>
|
||||
</pre></div> Click the mouse on a screenshot from <code>filename</code> <dl compact><dt><b>Note:</b></dt><dd>This is affected by the <code>CENTER</code>, <code>TOLERANCE</code>, and <code>SEARCH_METHOD</code> variables. See <a class="el" href="writing_app_tests.html#testing_test_wrapper">Testing the Testing Wrapper</a> for more information on these. <br>
|
||||
<br>
|
||||
</dd></dl>
|
||||
<div class="fragment"><pre class="fragment"> image_location <filename>
|
||||
</pre></div> Get the location of an image on screen <dl compact><dt><b>Note:</b></dt><dd>This is affected by the <code>CENTER</code>, <code>TOLERANCE</code>, and <code>SEARCH_METHOD</code> variables. See <a class="el" href="writing_app_tests.html#testing_test_wrapper">Testing the Testing Wrapper</a> for more information on these. <br>
|
||||
<br>
|
||||
</dd></dl>
|
||||
<div class="fragment"><pre class="fragment"> hover_xy <x-coordinate> <y-increment>
|
||||
</pre></div> Move the mouse to a location on screen using absolute positioning <br>
|
||||
<br>
|
||||
<p>
|
||||
<div class="fragment"><pre class="fragment"> hoverr_xy <x-increment> <y-increment>
|
||||
</pre></div> Move the mouse to a location on screen using relative positioning <dl compact><dt><b>Note:</b></dt><dd>Note that a positive <code>x-increment</code> moves the mouse to the right, and a positive <code>y-increment</code> moves the mouse down. <br>
|
||||
<br>
|
||||
</dd></dl>
|
||||
<div class="fragment"><pre class="fragment"> hover_i <filename>
|
||||
</pre></div> Move the mouse to a location on screen based on screenshot <dl compact><dt><b>Note:</b></dt><dd>This is affected by the <code>CENTER</code>, <code>TOLERANCE</code>, and <code>SEARCH_METHOD</code> variables. See <a class="el" href="writing_app_tests.html#testing_test_wrapper">Testing the Testing Wrapper</a> for more information on these. <br>
|
||||
<br>
|
||||
</dd></dl>
|
||||
<div class="fragment"><pre class="fragment"> key_str <span class="stringliteral">"<string>"</span>
|
||||
</pre></div> Enter a string of characters on the keyboard rather than a single character at a time. <dl compact><dt><b>Warning:</b></dt><dd>This function <b>does not</b> accept key strings like "Space" as <code>key_down</code>, <code>key_up</code>, and <code>key_click</code> do. If you pass in "Space", that is exactly what will be typed. <br>
|
||||
<br>
|
||||
</dd></dl>
|
||||
<div class="fragment"><pre class="fragment"> key_down <span class="stringliteral">"<key-name>"</span>
|
||||
</pre></div> Press a key down and leave it down <dl compact><dt><b>Note:</b></dt><dd>This function accepts special keys like "Space" - see <a class="el" href="XTest_key_strings.html">XTest Key Strings</a> for a full list of characters allowed. <br>
|
||||
<br>
|
||||
</dd></dl>
|
||||
<div class="fragment"><pre class="fragment"> key_up <span class="stringliteral">"<key-name>"</span>
|
||||
</pre></div> Release a key <dl compact><dt><b>Note:</b></dt><dd>This function accepts special keys like "Space" - see <a class="el" href="XTest_key_strings.html">XTest Key Strings</a> for a full list of characters allowed. <br>
|
||||
<br>
|
||||
</dd></dl>
|
||||
<div class="fragment"><pre class="fragment"> key_click <span class="stringliteral">"<key-name>"</span>
|
||||
</pre></div> Press a key down and then release it immediately after <dl compact><dt><b>Note:</b></dt><dd>This function accepts special keys like "Space" - see <a class="el" href="XTest_key_strings.html">XTest Key Strings</a> for a full list of characters allowed. <br>
|
||||
<br>
|
||||
</dd></dl>
|
||||
<div class="fragment"><pre class="fragment"> run_process <span class="stringliteral">"<process-name>"</span>
|
||||
</pre></div> Start a process on the system, background it, and return the PID of the created process. <br>
|
||||
<br>
|
||||
<p>
|
||||
<div class="fragment"><pre class="fragment"> is_running <span class="stringliteral">"<process-name>"</span>
|
||||
</pre></div> <div class="fragment"><pre class="fragment"> is_running <span class="stringliteral">"<process-id>"</span>
|
||||
</pre></div> Check if a program name or PID is currently running <hr size="1"><address style="align: right;"><small>Generated on Tue Jul 17 12:19:00 2012 for libcvautomation by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
64
xautomation__kbd_8h-source.html
Normal file
@ -0,0 +1,64 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>libcvautomation: xautomation_kbd.h Source File</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li id="current"><a href="files.html"><span>Files</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="files.html"><span>File List</span></a></li>
|
||||
<li><a href="globals.html"><span>File Members</span></a></li>
|
||||
</ul></div>
|
||||
<h1>xautomation_kbd.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/*</span>
|
||||
<a name="l00002"></a>00002 <span class="comment"> * </span>
|
||||
<a name="l00003"></a>00003 <span class="comment"> * Copyright (c) 2002 Steve Slaven, All Rights Reserved.</span>
|
||||
<a name="l00004"></a>00004 <span class="comment"> * </span>
|
||||
<a name="l00005"></a>00005 <span class="comment"> * This program is free software; you can redistribute it and/or</span>
|
||||
<a name="l00006"></a>00006 <span class="comment"> * modify it under the terms of the GNU General Public License as</span>
|
||||
<a name="l00007"></a>00007 <span class="comment"> * published by the Free Software Foundation; either version 2 of</span>
|
||||
<a name="l00008"></a>00008 <span class="comment"> * the License, or (at your option) any later version.</span>
|
||||
<a name="l00009"></a>00009 <span class="comment"> * </span>
|
||||
<a name="l00010"></a>00010 <span class="comment"> * This program is distributed in the hope that it will be useful,</span>
|
||||
<a name="l00011"></a>00011 <span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span>
|
||||
<a name="l00012"></a>00012 <span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span>
|
||||
<a name="l00013"></a>00013 <span class="comment"> * GNU General Public License for more details.</span>
|
||||
<a name="l00014"></a>00014 <span class="comment"> * </span>
|
||||
<a name="l00015"></a>00015 <span class="comment"> * You should have received a copy of the GNU General Public License</span>
|
||||
<a name="l00016"></a>00016 <span class="comment"> * along with this program; if not, write to the Free Software</span>
|
||||
<a name="l00017"></a>00017 <span class="comment"> * Foundation, Inc., 59 Temple Place, Suite 330, Boston,</span>
|
||||
<a name="l00018"></a>00018 <span class="comment"> * MA 02111-1307 USA</span>
|
||||
<a name="l00019"></a>00019 <span class="comment"> * </span>
|
||||
<a name="l00020"></a>00020 <span class="comment">*/</span>
|
||||
<a name="l00021"></a>00021
|
||||
<a name="l00022"></a>00022 <span class="preprocessor">#define NUM_KEY_MODIFIERS 3</span>
|
||||
<a name="l00023"></a>00023 <span class="preprocessor"></span><span class="comment">/* ISO_Level3_Shift = AltGr */</span>
|
||||
<a name="l00024"></a>00024 <span class="keywordtype">char</span> *key_modifiers[] = { NULL, <span class="stringliteral">"Mode_switch"</span>, <span class="stringliteral">"ISO_Level3_Shift"</span> };
|
||||
<a name="l00025"></a>00025 <span class="keywordtype">char</span> *shift_key = <span class="stringliteral">"Shift_L"</span>;
|
||||
<a name="l00026"></a>00026
|
||||
<a name="l00027"></a>00027 <span class="preprocessor">#define MAX_KEYSYM 65536</span>
|
||||
<a name="l00028"></a>00028 <span class="preprocessor"></span><span class="comment">/* this maps what keysyms need a modifier pushed */</span>
|
||||
<a name="l00029"></a>00029 <span class="keywordtype">int</span> keysym_to_modifier_map[ MAX_KEYSYM ];
|
||||
<a name="l00030"></a>00030 KeyCode keysym_to_keycode_map[ MAX_KEYSYM ];
|
||||
</pre></div><hr size="1"><address style="align: right;"><small>Generated on Tue Jul 17 12:19:00 2012 for libcvautomation by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
840
xautomation__keysym__map_8h-source.html
Normal file
@ -0,0 +1,840 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>libcvautomation: xautomation_keysym_map.h Source File</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li id="current"><a href="files.html"><span>Files</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="files.html"><span>File List</span></a></li>
|
||||
<li><a href="globals.html"><span>File Members</span></a></li>
|
||||
</ul></div>
|
||||
<h1>xautomation_keysym_map.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/* keysym_map.h - Maps the unicode number of charactes to X11 keysym codes.</span>
|
||||
<a name="l00002"></a>00002 <span class="comment"> * The first element in the array is unicode number 0x0100.</span>
|
||||
<a name="l00003"></a>00003 <span class="comment"> * Latin-1 characters (keysym = unicode_number <= 0xff) and newer</span>
|
||||
<a name="l00004"></a>00004 <span class="comment"> * characters (keysym = unicode_number + 0x01000000) are not included.</span>
|
||||
<a name="l00005"></a>00005 <span class="comment"> *</span>
|
||||
<a name="l00006"></a>00006 <span class="comment"> * Marco Steinacher <marco@websource.ch> - 12.04.2009</span>
|
||||
<a name="l00007"></a>00007 <span class="comment"> * </span>
|
||||
<a name="l00008"></a>00008 <span class="comment"> * The contents below have been created from /usr/include/X11/keysymdef.h with the following</span>
|
||||
<a name="l00009"></a>00009 <span class="comment"> * perl script:</span>
|
||||
<a name="l00010"></a>00010 <span class="comment">---------------</span>
|
||||
<a name="l00011"></a>00011 <span class="comment">#!/usr/bin/perl -w</span>
|
||||
<a name="l00012"></a>00012 <span class="comment">$max=0;</span>
|
||||
<a name="l00013"></a>00013 <span class="comment">while ($l = <>) {</span>
|
||||
<a name="l00014"></a>00014 <span class="comment"> if ($l =~ m/^#define\s+\S+\s+0x([0-9a-f]{4})\s*\/\*[ (]*U\+([0-9a-f]{4})/i) {</span>
|
||||
<a name="l00015"></a>00015 <span class="comment"> $shifted = hex($2) - hex("0x0100");</span>
|
||||
<a name="l00016"></a>00016 <span class="comment"> if (($shifted >= 0) && !defined($map[$shifted])) {</span>
|
||||
<a name="l00017"></a>00017 <span class="comment"> $map[$shifted] = $1;</span>
|
||||
<a name="l00018"></a>00018 <span class="comment"> $max=$shifted if ($shifted>$max);</span>
|
||||
<a name="l00019"></a>00019 <span class="comment"> }</span>
|
||||
<a name="l00020"></a>00020 <span class="comment"> }</span>
|
||||
<a name="l00021"></a>00021 <span class="comment">}</span>
|
||||
<a name="l00022"></a>00022 <span class="comment">print "#define WCHAR_TO_KEYSYM_MAP_SIZE ".($max+1)."\n";</span>
|
||||
<a name="l00023"></a>00023 <span class="comment">print "uint16_t wchar_to_keysym_map[] = { ";</span>
|
||||
<a name="l00024"></a>00024 <span class="comment">for($u=0;$u<=$max;$u++) {</span>
|
||||
<a name="l00025"></a>00025 <span class="comment"> print "," if ($u>0);</span>
|
||||
<a name="l00026"></a>00026 <span class="comment"> print "\n" if ($u%16==0);</span>
|
||||
<a name="l00027"></a>00027 <span class="comment"> if (defined($map[$u])) {</span>
|
||||
<a name="l00028"></a>00028 <span class="comment"> print "0x".$map[$u];</span>
|
||||
<a name="l00029"></a>00029 <span class="comment"> } else {</span>
|
||||
<a name="l00030"></a>00030 <span class="comment"> print "0";</span>
|
||||
<a name="l00031"></a>00031 <span class="comment"> }</span>
|
||||
<a name="l00032"></a>00032 <span class="comment">}</span>
|
||||
<a name="l00033"></a>00033 <span class="comment">print "\n};\n";</span>
|
||||
<a name="l00034"></a>00034 <span class="comment">---------------</span>
|
||||
<a name="l00035"></a>00035 <span class="comment"> */</span>
|
||||
<a name="l00036"></a>00036 <span class="preprocessor">#define WCHAR_TO_KEYSYM_MAP_SIZE 12285</span>
|
||||
<a name="l00037"></a>00037 <span class="preprocessor"></span>uint16_t wchar_to_keysym_map[] = {
|
||||
<a name="l00038"></a>00038 0x03c0,0x03e0,0x01c3,0x01e3,0x01a1,0x01b1,0x01c6,0x01e6,0x02c6,0x02e6,0x02c5,0x02e5,0x01c8,0x01e8,0x01cf,0x01ef,
|
||||
<a name="l00039"></a>00039 0x01d0,0x01f0,0x03aa,0x03ba,0,0,0x03cc,0x03ec,0x01ca,0x01ea,0x01cc,0x01ec,0x02d8,0x02f8,0x02ab,0x02bb,
|
||||
<a name="l00040"></a>00040 0x02d5,0x02f5,0x03ab,0x03bb,0x02a6,0x02b6,0x02a1,0x02b1,0x03a5,0x03b5,0x03cf,0x03ef,0,0,0x03c7,0x03e7,
|
||||
<a name="l00041"></a>00041 0x02a9,0x02b9,0,0,0x02ac,0x02bc,0x03d3,0x03f3,0x03a2,0x01c5,0x01e5,0x03a6,0x03b6,0x01a5,0x01b5,0,
|
||||
<a name="l00042"></a>00042 0,0x01a3,0x01b3,0x01d1,0x01f1,0x03d1,0x03f1,0x01d2,0x01f2,0,0x03bd,0x03bf,0x03d2,0x03f2,0,0,
|
||||
<a name="l00043"></a>00043 0x01d5,0x01f5,0x13bc,0x13bd,0x01c0,0x01e0,0x03a3,0x03b3,0x01d8,0x01f8,0x01a6,0x01b6,0x02de,0x02fe,0x01aa,0x01ba,
|
||||
<a name="l00044"></a>00044 0x01a9,0x01b9,0x01de,0x01fe,0x01ab,0x01bb,0x03ac,0x03bc,0x03dd,0x03fd,0x03de,0x03fe,0x02dd,0x02fd,0x01d9,0x01f9,
|
||||
<a name="l00045"></a>00045 0x01db,0x01fb,0x03d9,0x03f9,0,0,0,0,0x13be,0x01ac,0x01bc,0x01af,0x01bf,0x01ae,0x01be,0,
|
||||
<a name="l00046"></a>00046 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00047"></a>00047 0,0,0x08f6,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00048"></a>00048 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00049"></a>00049 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00050"></a>00050 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00051"></a>00051 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00052"></a>00052 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00053"></a>00053 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00054"></a>00054 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00055"></a>00055 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00056"></a>00056 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00057"></a>00057 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00058"></a>00058 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00059"></a>00059 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00060"></a>00060 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00061"></a>00061 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00062"></a>00062 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00063"></a>00063 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00064"></a>00064 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00065"></a>00065 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00066"></a>00066 0,0,0,0,0,0,0,0x01b7,0,0,0,0,0,0,0,0,
|
||||
<a name="l00067"></a>00067 0,0,0,0,0,0,0,0,0x01a2,0x01ff,0,0x01b2,0,0x01bd,0,0,
|
||||
<a name="l00068"></a>00068 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00069"></a>00069 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00070"></a>00070 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00071"></a>00071 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00072"></a>00072 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00073"></a>00073 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00074"></a>00074 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00075"></a>00075 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00076"></a>00076 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00077"></a>00077 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00078"></a>00078 0,0,0,0,0,0x07ae,0x07a1,0,0x07a2,0x07a3,0x07a4,0,0x07a7,0,0x07a8,0x07ab,
|
||||
<a name="l00079"></a>00079 0x07b6,0x07c1,0x07c2,0x07c3,0x07c4,0x07c5,0x07c6,0x07c7,0x07c8,0x07c9,0x07ca,0x07cb,0x07cc,0x07cd,0x07ce,0x07cf,
|
||||
<a name="l00080"></a>00080 0x07d0,0x07d1,0,0x07d2,0x07d4,0x07d5,0x07d6,0x07d7,0x07d8,0x07d9,0x07a5,0x07a9,0x07b1,0x07b2,0x07b3,0x07b4,
|
||||
<a name="l00081"></a>00081 0x07ba,0x07e1,0x07e2,0x07e3,0x07e4,0x07e5,0x07e6,0x07e7,0x07e8,0x07e9,0x07ea,0x07eb,0x07ec,0x07ed,0x07ee,0x07ef,
|
||||
<a name="l00082"></a>00082 0x07f0,0x07f1,0x07f3,0x07f2,0x07f4,0x07f5,0x07f6,0x07f7,0x07f8,0x07f9,0x07b5,0x07b9,0x07b7,0x07b8,0x07bb,0,
|
||||
<a name="l00083"></a>00083 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00084"></a>00084 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00085"></a>00085 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00086"></a>00086 0,0x06b3,0x06b1,0x06b2,0x06b4,0x06b5,0x06b6,0x06b7,0x06b8,0x06b9,0x06ba,0x06bb,0x06bc,0,0x06be,0x06bf,
|
||||
<a name="l00087"></a>00087 0x06e1,0x06e2,0x06f7,0x06e7,0x06e4,0x06e5,0x06f6,0x06fa,0x06e9,0x06ea,0x06eb,0x06ec,0x06ed,0x06ee,0x06ef,0x06f0,
|
||||
<a name="l00088"></a>00088 0x06f2,0x06f3,0x06f4,0x06f5,0x06e6,0x06e8,0x06e3,0x06fe,0x06fb,0x06fd,0x06ff,0x06f9,0x06f8,0x06fc,0x06e0,0x06f1,
|
||||
<a name="l00089"></a>00089 0x06c1,0x06c2,0x06d7,0x06c7,0x06c4,0x06c5,0x06d6,0x06da,0x06c9,0x06ca,0x06cb,0x06cc,0x06cd,0x06ce,0x06cf,0x06d0,
|
||||
<a name="l00090"></a>00090 0x06d2,0x06d3,0x06d4,0x06d5,0x06c6,0x06c8,0x06c3,0x06de,0x06db,0x06dd,0x06df,0x06d9,0x06d8,0x06dc,0x06c0,0x06d1,
|
||||
<a name="l00091"></a>00091 0,0x06a3,0x06a1,0x06a2,0x06a4,0x06a5,0x06a6,0x06a7,0x06a8,0x06a9,0x06aa,0x06ab,0x06ac,0,0x06ae,0x06af,
|
||||
<a name="l00092"></a>00092 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00093"></a>00093 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00094"></a>00094 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00095"></a>00095 0x06bd,0x06ad,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00096"></a>00096 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00097"></a>00097 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00098"></a>00098 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00099"></a>00099 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00100"></a>00100 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00101"></a>00101 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00102"></a>00102 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00103"></a>00103 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00104"></a>00104 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00105"></a>00105 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00106"></a>00106 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00107"></a>00107 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00108"></a>00108 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00109"></a>00109 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00110"></a>00110 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00111"></a>00111 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00112"></a>00112 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00113"></a>00113 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00114"></a>00114 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00115"></a>00115 0x0ce0,0x0ce1,0x0ce2,0x0ce3,0x0ce4,0x0ce5,0x0ce6,0x0ce7,0x0ce8,0x0ce9,0x0cea,0x0ceb,0x0cec,0x0ced,0x0cee,0x0cef,
|
||||
<a name="l00116"></a>00116 0x0cf0,0x0cf1,0x0cf2,0x0cf3,0x0cf4,0x0cf5,0x0cf6,0x0cf7,0x0cf8,0x0cf9,0x0cfa,0,0,0,0,0,
|
||||
<a name="l00117"></a>00117 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00118"></a>00118 0,0,0,0,0,0,0,0,0,0,0,0,0x05ac,0,0,0,
|
||||
<a name="l00119"></a>00119 0,0,0,0,0,0,0,0,0,0,0,0x05bb,0,0,0,0x05bf,
|
||||
<a name="l00120"></a>00120 0,0x05c1,0x05c2,0x05c3,0x05c4,0x05c5,0x05c6,0x05c7,0x05c8,0x05c9,0x05ca,0x05cb,0x05cc,0x05cd,0x05ce,0x05cf,
|
||||
<a name="l00121"></a>00121 0x05d0,0x05d1,0x05d2,0x05d3,0x05d4,0x05d5,0x05d6,0x05d7,0x05d8,0x05d9,0x05da,0,0,0,0,0,
|
||||
<a name="l00122"></a>00122 0x05e0,0x05e1,0x05e2,0x05e3,0x05e4,0x05e5,0x05e6,0x05e7,0x05e8,0x05e9,0x05ea,0x05eb,0x05ec,0x05ed,0x05ee,0x05ef,
|
||||
<a name="l00123"></a>00123 0x05f0,0x05f1,0x05f2,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00124"></a>00124 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00125"></a>00125 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00126"></a>00126 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00127"></a>00127 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00128"></a>00128 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00129"></a>00129 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00130"></a>00130 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00131"></a>00131 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00132"></a>00132 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00133"></a>00133 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00134"></a>00134 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00135"></a>00135 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00136"></a>00136 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00137"></a>00137 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00138"></a>00138 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00139"></a>00139 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00140"></a>00140 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00141"></a>00141 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00142"></a>00142 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00143"></a>00143 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00144"></a>00144 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00145"></a>00145 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00146"></a>00146 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00147"></a>00147 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00148"></a>00148 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00149"></a>00149 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00150"></a>00150 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00151"></a>00151 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00152"></a>00152 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00153"></a>00153 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00154"></a>00154 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00155"></a>00155 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00156"></a>00156 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00157"></a>00157 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00158"></a>00158 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00159"></a>00159 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00160"></a>00160 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00161"></a>00161 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00162"></a>00162 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00163"></a>00163 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00164"></a>00164 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00165"></a>00165 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00166"></a>00166 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00167"></a>00167 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00168"></a>00168 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00169"></a>00169 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00170"></a>00170 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00171"></a>00171 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00172"></a>00172 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00173"></a>00173 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00174"></a>00174 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00175"></a>00175 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00176"></a>00176 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00177"></a>00177 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00178"></a>00178 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00179"></a>00179 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00180"></a>00180 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00181"></a>00181 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00182"></a>00182 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00183"></a>00183 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00184"></a>00184 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00185"></a>00185 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00186"></a>00186 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00187"></a>00187 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00188"></a>00188 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00189"></a>00189 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00190"></a>00190 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00191"></a>00191 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00192"></a>00192 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00193"></a>00193 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00194"></a>00194 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00195"></a>00195 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00196"></a>00196 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00197"></a>00197 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00198"></a>00198 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00199"></a>00199 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00200"></a>00200 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00201"></a>00201 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00202"></a>00202 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00203"></a>00203 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00204"></a>00204 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00205"></a>00205 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00206"></a>00206 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00207"></a>00207 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00208"></a>00208 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00209"></a>00209 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00210"></a>00210 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00211"></a>00211 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00212"></a>00212 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00213"></a>00213 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00214"></a>00214 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00215"></a>00215 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00216"></a>00216 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00217"></a>00217 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00218"></a>00218 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00219"></a>00219 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00220"></a>00220 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00221"></a>00221 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00222"></a>00222 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00223"></a>00223 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00224"></a>00224 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00225"></a>00225 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00226"></a>00226 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00227"></a>00227 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00228"></a>00228 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00229"></a>00229 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00230"></a>00230 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00231"></a>00231 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00232"></a>00232 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00233"></a>00233 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00234"></a>00234 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00235"></a>00235 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00236"></a>00236 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00237"></a>00237 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00238"></a>00238 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00239"></a>00239 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00240"></a>00240 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00241"></a>00241 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00242"></a>00242 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00243"></a>00243 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00244"></a>00244 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00245"></a>00245 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00246"></a>00246 0,0x0da1,0x0da2,0x0da3,0x0da4,0x0da5,0x0da6,0x0da7,0x0da8,0x0da9,0x0daa,0x0dab,0x0dac,0x0dad,0x0dae,0x0daf,
|
||||
<a name="l00247"></a>00247 0x0db0,0x0db1,0x0db2,0x0db3,0x0db4,0x0db5,0x0db6,0x0db7,0x0db8,0x0db9,0x0dba,0x0dbb,0x0dbc,0x0dbd,0x0dbe,0x0dbf,
|
||||
<a name="l00248"></a>00248 0x0dc0,0x0dc1,0x0dc2,0x0dc3,0x0dc4,0x0dc5,0x0dc6,0x0dc7,0x0dc8,0x0dc9,0x0dca,0x0dcb,0x0dcc,0x0dcd,0x0dce,0x0dcf,
|
||||
<a name="l00249"></a>00249 0x0dd0,0x0dd1,0x0dd2,0x0dd3,0x0dd4,0x0dd5,0x0dd6,0x0dd7,0x0dd8,0x0dd9,0x0dda,0,0,0,0,0x0ddf,
|
||||
<a name="l00250"></a>00250 0x0de0,0x0de1,0x0de2,0x0de3,0x0de4,0x0de5,0x0de6,0x0de7,0x0de8,0x0de9,0x0dea,0x0deb,0x0dec,0x0ded,0,0,
|
||||
<a name="l00251"></a>00251 0x0df0,0x0df1,0x0df2,0x0df3,0x0df4,0x0df5,0x0df6,0x0df7,0x0df8,0x0df9,0,0,0,0,0,0,
|
||||
<a name="l00252"></a>00252 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00253"></a>00253 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00254"></a>00254 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00255"></a>00255 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00256"></a>00256 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00257"></a>00257 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00258"></a>00258 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00259"></a>00259 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00260"></a>00260 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00261"></a>00261 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00262"></a>00262 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00263"></a>00263 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00264"></a>00264 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00265"></a>00265 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00266"></a>00266 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00267"></a>00267 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00268"></a>00268 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00269"></a>00269 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00270"></a>00270 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00271"></a>00271 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00272"></a>00272 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00273"></a>00273 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00274"></a>00274 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00275"></a>00275 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00276"></a>00276 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00277"></a>00277 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00278"></a>00278 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00279"></a>00279 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00280"></a>00280 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00281"></a>00281 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00282"></a>00282 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00283"></a>00283 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00284"></a>00284 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00285"></a>00285 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00286"></a>00286 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00287"></a>00287 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00288"></a>00288 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00289"></a>00289 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00290"></a>00290 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00291"></a>00291 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00292"></a>00292 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00293"></a>00293 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00294"></a>00294 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00295"></a>00295 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00296"></a>00296 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00297"></a>00297 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00298"></a>00298 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00299"></a>00299 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00300"></a>00300 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00301"></a>00301 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00302"></a>00302 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00303"></a>00303 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00304"></a>00304 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00305"></a>00305 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00306"></a>00306 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00307"></a>00307 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00308"></a>00308 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00309"></a>00309 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00310"></a>00310 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00311"></a>00311 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00312"></a>00312 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00313"></a>00313 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00314"></a>00314 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00315"></a>00315 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00316"></a>00316 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00317"></a>00317 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00318"></a>00318 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00319"></a>00319 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00320"></a>00320 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00321"></a>00321 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00322"></a>00322 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00323"></a>00323 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00324"></a>00324 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00325"></a>00325 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00326"></a>00326 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00327"></a>00327 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00328"></a>00328 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00329"></a>00329 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00330"></a>00330 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00331"></a>00331 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00332"></a>00332 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00333"></a>00333 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00334"></a>00334 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00335"></a>00335 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00336"></a>00336 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00337"></a>00337 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00338"></a>00338 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00339"></a>00339 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00340"></a>00340 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00341"></a>00341 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00342"></a>00342 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00343"></a>00343 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00344"></a>00344 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00345"></a>00345 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00346"></a>00346 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00347"></a>00347 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00348"></a>00348 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00349"></a>00349 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00350"></a>00350 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00351"></a>00351 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00352"></a>00352 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00353"></a>00353 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00354"></a>00354 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00355"></a>00355 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00356"></a>00356 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00357"></a>00357 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00358"></a>00358 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00359"></a>00359 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00360"></a>00360 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00361"></a>00361 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00362"></a>00362 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00363"></a>00363 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00364"></a>00364 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00365"></a>00365 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00366"></a>00366 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00367"></a>00367 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00368"></a>00368 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00369"></a>00369 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00370"></a>00370 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00371"></a>00371 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00372"></a>00372 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00373"></a>00373 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00374"></a>00374 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00375"></a>00375 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00376"></a>00376 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00377"></a>00377 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00378"></a>00378 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00379"></a>00379 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00380"></a>00380 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00381"></a>00381 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00382"></a>00382 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00383"></a>00383 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00384"></a>00384 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00385"></a>00385 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00386"></a>00386 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00387"></a>00387 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00388"></a>00388 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00389"></a>00389 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00390"></a>00390 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00391"></a>00391 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00392"></a>00392 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00393"></a>00393 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00394"></a>00394 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00395"></a>00395 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00396"></a>00396 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00397"></a>00397 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00398"></a>00398 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00399"></a>00399 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00400"></a>00400 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00401"></a>00401 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00402"></a>00402 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00403"></a>00403 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00404"></a>00404 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00405"></a>00405 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00406"></a>00406 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00407"></a>00407 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00408"></a>00408 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00409"></a>00409 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00410"></a>00410 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00411"></a>00411 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00412"></a>00412 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00413"></a>00413 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00414"></a>00414 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00415"></a>00415 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00416"></a>00416 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00417"></a>00417 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00418"></a>00418 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00419"></a>00419 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00420"></a>00420 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00421"></a>00421 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00422"></a>00422 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00423"></a>00423 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00424"></a>00424 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00425"></a>00425 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00426"></a>00426 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00427"></a>00427 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00428"></a>00428 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00429"></a>00429 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00430"></a>00430 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00431"></a>00431 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00432"></a>00432 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00433"></a>00433 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00434"></a>00434 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00435"></a>00435 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00436"></a>00436 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00437"></a>00437 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00438"></a>00438 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00439"></a>00439 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00440"></a>00440 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00441"></a>00441 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00442"></a>00442 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00443"></a>00443 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00444"></a>00444 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00445"></a>00445 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00446"></a>00446 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00447"></a>00447 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00448"></a>00448 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00449"></a>00449 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00450"></a>00450 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00451"></a>00451 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00452"></a>00452 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00453"></a>00453 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00454"></a>00454 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00455"></a>00455 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00456"></a>00456 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00457"></a>00457 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00458"></a>00458 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00459"></a>00459 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00460"></a>00460 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00461"></a>00461 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00462"></a>00462 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00463"></a>00463 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00464"></a>00464 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00465"></a>00465 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00466"></a>00466 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00467"></a>00467 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00468"></a>00468 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00469"></a>00469 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00470"></a>00470 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00471"></a>00471 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00472"></a>00472 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00473"></a>00473 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00474"></a>00474 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00475"></a>00475 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00476"></a>00476 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00477"></a>00477 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00478"></a>00478 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00479"></a>00479 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00480"></a>00480 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00481"></a>00481 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00482"></a>00482 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00483"></a>00483 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00484"></a>00484 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00485"></a>00485 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00486"></a>00486 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00487"></a>00487 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00488"></a>00488 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00489"></a>00489 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00490"></a>00490 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00491"></a>00491 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00492"></a>00492 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00493"></a>00493 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00494"></a>00494 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00495"></a>00495 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00496"></a>00496 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00497"></a>00497 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00498"></a>00498 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00499"></a>00499 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00500"></a>00500 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00501"></a>00501 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00502"></a>00502 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00503"></a>00503 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00504"></a>00504 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00505"></a>00505 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00506"></a>00506 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00507"></a>00507 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00508"></a>00508 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00509"></a>00509 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00510"></a>00510 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00511"></a>00511 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00512"></a>00512 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00513"></a>00513 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00514"></a>00514 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00515"></a>00515 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00516"></a>00516 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00517"></a>00517 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00518"></a>00518 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00519"></a>00519 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00520"></a>00520 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00521"></a>00521 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00522"></a>00522 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00523"></a>00523 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00524"></a>00524 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00525"></a>00525 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00526"></a>00526 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00527"></a>00527 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00528"></a>00528 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00529"></a>00529 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00530"></a>00530 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00531"></a>00531 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00532"></a>00532 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00533"></a>00533 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00534"></a>00534 0,0,0x0aa2,0x0aa1,0x0aa3,0x0aa4,0,0x0aa5,0x0aa6,0x0aa7,0x0aa8,0,0,0,0,0,
|
||||
<a name="l00535"></a>00535 0,0,0x0abb,0x0aaa,0x0aa9,0x07af,0,0x0cdf,0x0ad0,0x0ad1,0x0afd,0,0x0ad2,0x0ad3,0x0afe,0,
|
||||
<a name="l00536"></a>00536 0x0af1,0x0af2,0x0ae6,0,0,0x0aaf,0x0aae,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00537"></a>00537 0,0,0x0ad6,0x0ad7,0,0,0,0,0x0afc,0,0,0,0,0,0x047e,0,
|
||||
<a name="l00538"></a>00538 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00539"></a>00539 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00540"></a>00540 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00541"></a>00541 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00542"></a>00542 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00543"></a>00543 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00544"></a>00544 0,0,0,0,0,0,0,0,0,0x0eff,0,0,0x20ac,0,0,0,
|
||||
<a name="l00545"></a>00545 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00546"></a>00546 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00547"></a>00547 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00548"></a>00548 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00549"></a>00549 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00550"></a>00550 0,0,0,0,0,0x0ab8,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00551"></a>00551 0,0,0,0,0,0,0x06b0,0x0afb,0,0,0,0,0,0,0x0ad4,0,
|
||||
<a name="l00552"></a>00552 0,0,0x0ac9,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00553"></a>00553 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00554"></a>00554 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00555"></a>00555 0,0,0,0x0ab0,0x0ab1,0x0ab2,0x0ab3,0x0ab4,0x0ab5,0x0ab6,0x0ab7,0x0ac3,0x0ac4,0x0ac5,0x0ac6,0,
|
||||
<a name="l00556"></a>00556 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00557"></a>00557 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00558"></a>00558 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00559"></a>00559 0x08fb,0x08fc,0x08fd,0x08fe,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00560"></a>00560 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00561"></a>00561 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00562"></a>00562 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00563"></a>00563 0,0,0x08ce,0,0x08cd,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00564"></a>00564 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00565"></a>00565 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00566"></a>00566 0,0,0x08ef,0,0,0,0,0x08c5,0,0,0,0,0,0,0,0,
|
||||
<a name="l00567"></a>00567 0,0,0,0,0,0,0,0,0x0bca,0,0x08d6,0,0,0x08c1,0x08c2,0,
|
||||
<a name="l00568"></a>00568 0,0,0,0,0,0,0,0x08de,0x08df,0x08dc,0x08dd,0x08bf,0,0,0,0,
|
||||
<a name="l00569"></a>00569 0,0,0,0,0x08c0,0,0,0,0,0,0,0,0x08c8,0,0,0,
|
||||
<a name="l00570"></a>00570 0,0,0,0x08c9,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00571"></a>00571 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00572"></a>00572 0x08bd,0x08cf,0,0,0x08bc,0x08be,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00573"></a>00573 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00574"></a>00574 0,0,0x08da,0x08db,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00575"></a>00575 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00576"></a>00576 0,0,0x0bdc,0x0bfc,0x0bce,0x0bc2,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00577"></a>00577 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00578"></a>00578 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00579"></a>00579 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00580"></a>00580 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00581"></a>00581 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00582"></a>00582 0,0,0,0,0,0,0,0,0x0bd3,0,0x0bc4,0,0,0,0,0,
|
||||
<a name="l00583"></a>00583 0,0,0,0,0,0x0afa,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00584"></a>00584 0x08a4,0x08a5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00585"></a>00585 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00586"></a>00586 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00587"></a>00587 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00588"></a>00588 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00589"></a>00589 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00590"></a>00590 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00591"></a>00591 0,0,0,0,0,0x0bcc,0,0,0,0,0,0x08ab,0,0x08ac,0x08ad,0,
|
||||
<a name="l00592"></a>00592 0x08ae,0x08a7,0,0x08a8,0x08a9,0,0x08aa,0,0x08af,0,0,0,0x08b0,0,0,0,
|
||||
<a name="l00593"></a>00593 0,0,0,0,0,0,0,0x08a1,0,0,0x09ef,0x09f0,0x09f2,0x09f3,0,0,
|
||||
<a name="l00594"></a>00594 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00595"></a>00595 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00596"></a>00596 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00597"></a>00597 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00598"></a>00598 0,0,0,0,0,0,0,0,0,0x09e2,0x09e5,0x09e9,0x09e3,0x09e4,0,0,
|
||||
<a name="l00599"></a>00599 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00600"></a>00600 0,0,0,0x0aac,0x09e8,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00601"></a>00601 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00602"></a>00602 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00603"></a>00603 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00604"></a>00604 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00605"></a>00605 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00606"></a>00606 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00607"></a>00607 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00608"></a>00608 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00609"></a>00609 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00610"></a>00610 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00611"></a>00611 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00612"></a>00612 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00613"></a>00613 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00614"></a>00614 0x08a3,0,0x08a6,0,0,0,0,0,0,0,0,0,0x08a2,0,0,0,
|
||||
<a name="l00615"></a>00615 0x09eb,0,0,0,0x09ed,0,0,0,0x09ea,0,0,0,0x09f4,0,0,0,
|
||||
<a name="l00616"></a>00616 0,0,0,0,0x09f5,0,0,0,0,0,0,0,0x09f7,0,0,0,
|
||||
<a name="l00617"></a>00617 0,0,0,0,0x09f6,0,0,0,0,0,0,0,0x09ee,0,0,0,
|
||||
<a name="l00618"></a>00618 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00619"></a>00619 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00620"></a>00620 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00621"></a>00621 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00622"></a>00622 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00623"></a>00623 0,0,0x09e1,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00624"></a>00624 0,0,0,0,0,0,0,0,0,0,0x0ae7,0x0ae1,0x0adb,0x0ae2,0x0adf,0x0acf,
|
||||
<a name="l00625"></a>00625 0,0,0x0ae8,0x0ae3,0,0,0x0add,0x0acd,0,0,0,0,0x0ae9,0x0ae4,0,0,
|
||||
<a name="l00626"></a>00626 0x0adc,0x0acc,0,0,0,0,0x09e0,0,0,0,0,0x0ace,0,0,0,0x0ade,
|
||||
<a name="l00627"></a>00627 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00628"></a>00628 0,0,0,0,0,0,0x0ae0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00629"></a>00629 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00630"></a>00630 0,0,0,0,0,0,0x0ae5,0,0,0,0,0,0,0,0x0af9,0,
|
||||
<a name="l00631"></a>00631 0,0,0,0x0aca,0,0,0,0,0,0,0,0,0x0aea,0,0x0aeb,0,
|
||||
<a name="l00632"></a>00632 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00633"></a>00633 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00634"></a>00634 0x0af8,0,0x0af7,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00635"></a>00635 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00636"></a>00636 0,0,0,0x0aec,0,0x0aee,0x0aed,0,0,0,0,0,0,0x0af6,0,0x0af5,
|
||||
<a name="l00637"></a>00637 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00638"></a>00638 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00639"></a>00639 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00640"></a>00640 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00641"></a>00641 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00642"></a>00642 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00643"></a>00643 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00644"></a>00644 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00645"></a>00645 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00646"></a>00646 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00647"></a>00647 0,0,0,0x0af3,0,0,0,0x0af4,0,0,0,0,0,0x0ad9,0,0,
|
||||
<a name="l00648"></a>00648 0x0af0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00649"></a>00649 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00650"></a>00650 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00651"></a>00651 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00652"></a>00652 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00653"></a>00653 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00654"></a>00654 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00655"></a>00655 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00656"></a>00656 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00657"></a>00657 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00658"></a>00658 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00659"></a>00659 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00660"></a>00660 0,0,0,0,0,0,0,0,0x0abc,0x0abe,0,0,0,0,0,0,
|
||||
<a name="l00661"></a>00661 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00662"></a>00662 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00663"></a>00663 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00664"></a>00664 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00665"></a>00665 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00666"></a>00666 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00667"></a>00667 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00668"></a>00668 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00669"></a>00669 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00670"></a>00670 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00671"></a>00671 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00672"></a>00672 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00673"></a>00673 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00674"></a>00674 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00675"></a>00675 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00676"></a>00676 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00677"></a>00677 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00678"></a>00678 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00679"></a>00679 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00680"></a>00680 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00681"></a>00681 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00682"></a>00682 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00683"></a>00683 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00684"></a>00684 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00685"></a>00685 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00686"></a>00686 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00687"></a>00687 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00688"></a>00688 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00689"></a>00689 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00690"></a>00690 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00691"></a>00691 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00692"></a>00692 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00693"></a>00693 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00694"></a>00694 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00695"></a>00695 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00696"></a>00696 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00697"></a>00697 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00698"></a>00698 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00699"></a>00699 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00700"></a>00700 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00701"></a>00701 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00702"></a>00702 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00703"></a>00703 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00704"></a>00704 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00705"></a>00705 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00706"></a>00706 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00707"></a>00707 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00708"></a>00708 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00709"></a>00709 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00710"></a>00710 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00711"></a>00711 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00712"></a>00712 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00713"></a>00713 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00714"></a>00714 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00715"></a>00715 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00716"></a>00716 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00717"></a>00717 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00718"></a>00718 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00719"></a>00719 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00720"></a>00720 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00721"></a>00721 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00722"></a>00722 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00723"></a>00723 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00724"></a>00724 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00725"></a>00725 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00726"></a>00726 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00727"></a>00727 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00728"></a>00728 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00729"></a>00729 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00730"></a>00730 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00731"></a>00731 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00732"></a>00732 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00733"></a>00733 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00734"></a>00734 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00735"></a>00735 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00736"></a>00736 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00737"></a>00737 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00738"></a>00738 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00739"></a>00739 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00740"></a>00740 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00741"></a>00741 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00742"></a>00742 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00743"></a>00743 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00744"></a>00744 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00745"></a>00745 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00746"></a>00746 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00747"></a>00747 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00748"></a>00748 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00749"></a>00749 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00750"></a>00750 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00751"></a>00751 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00752"></a>00752 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00753"></a>00753 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00754"></a>00754 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00755"></a>00755 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00756"></a>00756 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00757"></a>00757 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00758"></a>00758 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00759"></a>00759 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00760"></a>00760 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00761"></a>00761 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00762"></a>00762 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00763"></a>00763 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00764"></a>00764 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00765"></a>00765 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00766"></a>00766 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00767"></a>00767 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00768"></a>00768 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00769"></a>00769 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00770"></a>00770 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00771"></a>00771 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00772"></a>00772 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00773"></a>00773 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00774"></a>00774 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00775"></a>00775 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00776"></a>00776 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00777"></a>00777 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00778"></a>00778 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00779"></a>00779 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00780"></a>00780 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00781"></a>00781 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00782"></a>00782 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00783"></a>00783 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00784"></a>00784 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00785"></a>00785 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00786"></a>00786 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00787"></a>00787 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00788"></a>00788 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00789"></a>00789 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00790"></a>00790 0,0x04a4,0x04a1,0,0,0,0,0,0,0,0,0,0x04a2,0x04a3,0,0,
|
||||
<a name="l00791"></a>00791 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00792"></a>00792 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00793"></a>00793 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00794"></a>00794 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00795"></a>00795 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00796"></a>00796 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00797"></a>00797 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00798"></a>00798 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
<a name="l00799"></a>00799 0,0,0,0,0,0,0,0,0,0,0,0x04de,0x04df,0,0,0,
|
||||
<a name="l00800"></a>00800 0,0x04a7,0x04b1,0x04a8,0x04b2,0x04a9,0x04b3,0x04aa,0x04b4,0x04ab,0x04b5,0x04b6,0,0x04b7,0,0x04b8,
|
||||
<a name="l00801"></a>00801 0,0x04b9,0,0x04ba,0,0x04bb,0,0x04bc,0,0x04bd,0,0x04be,0,0x04bf,0,0x04c0,
|
||||
<a name="l00802"></a>00802 0,0x04c1,0,0x04af,0x04c2,0,0x04c3,0,0x04c4,0,0x04c5,0x04c6,0x04c7,0x04c8,0x04c9,0x04ca,
|
||||
<a name="l00803"></a>00803 0,0,0x04cb,0,0,0x04cc,0,0,0x04cd,0,0,0x04ce,0,0,0x04cf,0x04d0,
|
||||
<a name="l00804"></a>00804 0x04d1,0x04d2,0x04d3,0x04ac,0x04d4,0x04ad,0x04d5,0x04ae,0x04d6,0x04d7,0x04d8,0x04d9,0x04da,0x04db,0,0x04dc,
|
||||
<a name="l00805"></a>00805 0,0,0x04a6,0x04dd,0,0,0,0,0,0,0,0x04a5,0x04b0
|
||||
<a name="l00806"></a>00806 };
|
||||
</pre></div><hr size="1"><address style="align: right;"><small>Generated on Tue Jul 17 12:19:00 2012 for libcvautomation by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
332
xautomation__multikey__map_8h-source.html
Normal file
@ -0,0 +1,332 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>libcvautomation: xautomation_multikey_map.h Source File</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li id="current"><a href="files.html"><span>Files</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="files.html"><span>File List</span></a></li>
|
||||
<li><a href="globals.html"><span>File Members</span></a></li>
|
||||
</ul></div>
|
||||
<h1>xautomation_multikey_map.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/* multikey_map.h - Multi_key combinations for some characters:</span>
|
||||
<a name="l00002"></a>00002 <span class="comment"> * <Character> = Multi_key + <Fist> + <Second></span>
|
||||
<a name="l00003"></a>00003 <span class="comment"> * The unicode numbers of <Character>, <Fist>,</span>
|
||||
<a name="l00004"></a>00004 <span class="comment"> * and <Second> are in the arrays below.</span>
|
||||
<a name="l00005"></a>00005 <span class="comment"> *</span>
|
||||
<a name="l00006"></a>00006 <span class="comment"> * Marco Steinacher <marco@websource.ch> - 12.04.2009</span>
|
||||
<a name="l00007"></a>00007 <span class="comment"> *</span>
|
||||
<a name="l00008"></a>00008 <span class="comment"> * Combinations that don't start with Multi_key or require more</span>
|
||||
<a name="l00009"></a>00009 <span class="comment"> * than two characters are currently not supported.</span>
|
||||
<a name="l00010"></a>00010 <span class="comment"> * </span>
|
||||
<a name="l00011"></a>00011 <span class="comment"> * The contents below have been created from /usr/share/X11/locale/en_US.UTF-8/Compose</span>
|
||||
<a name="l00012"></a>00012 <span class="comment"> * and /usr/include/X11/keysymdef.h with the following (very slow) perl script:</span>
|
||||
<a name="l00013"></a>00013 <span class="comment">---------------</span>
|
||||
<a name="l00014"></a>00014 <span class="comment">#!/usr/bin/perl -w</span>
|
||||
<a name="l00015"></a>00015 <span class="comment">$compose_file = "/usr/share/X11/locale/en_US.UTF-8/Compose";</span>
|
||||
<a name="l00016"></a>00016 <span class="comment">$keysym_file = "/usr/include/X11/keysymdef.h";</span>
|
||||
<a name="l00017"></a>00017 <span class="comment">open(FH,"<:encoding(UTF-8)",$compose_file);</span>
|
||||
<a name="l00018"></a>00018 <span class="comment">while ($l = <FH>) {</span>
|
||||
<a name="l00019"></a>00019 <span class="comment"> if ($l =~ m/^\s*<Multi_key>\s+<(\S+)>\s+<(\S+)>\s+:\s+"(.)"/) {</span>
|
||||
<a name="l00020"></a>00020 <span class="comment"> $utf8 = sprintf("%x",ord($3));</span>
|
||||
<a name="l00021"></a>00021 <span class="comment"> next if (length($utf8)>4);</span>
|
||||
<a name="l00022"></a>00022 <span class="comment"> $first = get_utf8($1);</span>
|
||||
<a name="l00023"></a>00023 <span class="comment"> $second = get_utf8($2);</span>
|
||||
<a name="l00024"></a>00024 <span class="comment"> if ($first && $second) {</span>
|
||||
<a name="l00025"></a>00025 <span class="comment"> $map_first{$utf8} = $first;</span>
|
||||
<a name="l00026"></a>00026 <span class="comment"> $map_second{$utf8} = $second;</span>
|
||||
<a name="l00027"></a>00027 <span class="comment"> }</span>
|
||||
<a name="l00028"></a>00028 <span class="comment"> }</span>
|
||||
<a name="l00029"></a>00029 <span class="comment">}</span>
|
||||
<a name="l00030"></a>00030 <span class="comment">close(FH);</span>
|
||||
<a name="l00031"></a>00031 <span class="comment">$char = "uint16_t multikey_map_char[] = { ";</span>
|
||||
<a name="l00032"></a>00032 <span class="comment">$first = "uint16_t multikey_map_first[] = { ";</span>
|
||||
<a name="l00033"></a>00033 <span class="comment">$second = "uint16_t multikey_map_second[] = { ";</span>
|
||||
<a name="l00034"></a>00034 <span class="comment">$count=0;</span>
|
||||
<a name="l00035"></a>00035 <span class="comment">foreach $c (sort { hex($a) <=> hex($b)} keys %map_first) {</span>
|
||||
<a name="l00036"></a>00036 <span class="comment"> if ($count != 0) {</span>
|
||||
<a name="l00037"></a>00037 <span class="comment"> $char.=",";</span>
|
||||
<a name="l00038"></a>00038 <span class="comment"> $first.=","; </span>
|
||||
<a name="l00039"></a>00039 <span class="comment"> $second.=",";</span>
|
||||
<a name="l00040"></a>00040 <span class="comment"> }</span>
|
||||
<a name="l00041"></a>00041 <span class="comment"> if ($count%16==0) {</span>
|
||||
<a name="l00042"></a>00042 <span class="comment"> $char.="\n";</span>
|
||||
<a name="l00043"></a>00043 <span class="comment"> $first.="\n"; </span>
|
||||
<a name="l00044"></a>00044 <span class="comment"> $second.="\n";</span>
|
||||
<a name="l00045"></a>00045 <span class="comment"> }</span>
|
||||
<a name="l00046"></a>00046 <span class="comment"> $char.="0x".$c;</span>
|
||||
<a name="l00047"></a>00047 <span class="comment"> $first.="0x".$map_first{$c};</span>
|
||||
<a name="l00048"></a>00048 <span class="comment"> $second.="0x".$map_second{$c};</span>
|
||||
<a name="l00049"></a>00049 <span class="comment"> $count++;</span>
|
||||
<a name="l00050"></a>00050 <span class="comment">}</span>
|
||||
<a name="l00051"></a>00051 <span class="comment">$char.="\n};\n";</span>
|
||||
<a name="l00052"></a>00052 <span class="comment">$first.="\n};\n";</span>
|
||||
<a name="l00053"></a>00053 <span class="comment">$second.="\n};\n";</span>
|
||||
<a name="l00054"></a>00054 <span class="comment">print "#define MULTIKEY_MAP_SIZE ".$count."\n";</span>
|
||||
<a name="l00055"></a>00055 <span class="comment">print $char.$first.$second;</span>
|
||||
<a name="l00056"></a>00056 <span class="comment"></span>
|
||||
<a name="l00057"></a>00057 <span class="comment">sub get_utf8 {</span>
|
||||
<a name="l00058"></a>00058 <span class="comment"> $sym = shift;</span>
|
||||
<a name="l00059"></a>00059 <span class="comment"> return $1 if ($sym =~ m/^U([0-9a-f]{4})$/i);</span>
|
||||
<a name="l00060"></a>00060 <span class="comment"> $cmd = "grep \"#define XK_".$sym." \" ".$keysym_file;</span>
|
||||
<a name="l00061"></a>00061 <span class="comment"> $re = "^#define\\s+XK_".$sym."\\s+0x[0-9a-f]+\\s*\\/\\*[ (]*U\\+([0-9a-f]{4})";</span>
|
||||
<a name="l00062"></a>00062 <span class="comment"> return $1 if (`$cmd` =~ m/$re/i);</span>
|
||||
<a name="l00063"></a>00063 <span class="comment"> return 0;</span>
|
||||
<a name="l00064"></a>00064 <span class="comment">}</span>
|
||||
<a name="l00065"></a>00065 <span class="comment">---------------</span>
|
||||
<a name="l00066"></a>00066 <span class="comment"> */</span>
|
||||
<a name="l00067"></a>00067 <span class="preprocessor">#define MULTIKEY_MAP_SIZE 1195</span>
|
||||
<a name="l00068"></a>00068 <span class="preprocessor"></span>uint16_t multikey_map_char[] = {
|
||||
<a name="l00069"></a>00069 0x23,0x27,0x40,0x5b,0x5d,0x5e,0x60,0x7b,0x7c,0x7d,0x7e,0xa0,0xa1,0xa2,0xa3,0xa4,
|
||||
<a name="l00070"></a>00070 0xa5,0xa6,0xa7,0xa9,0xab,0xac,0xae,0xb0,0xb1,0xb2,0xb3,0xb5,0xb6,0xb7,0xb8,0xb9,
|
||||
<a name="l00071"></a>00071 0xbb,0xbc,0xbd,0xbe,0xbf,0xc0,0xc1,0xc2,0xc3,0xc4,0xc5,0xc6,0xc7,0xc8,0xc9,0xca,
|
||||
<a name="l00072"></a>00072 0xcb,0xcc,0xcd,0xce,0xcf,0xd0,0xd1,0xd2,0xd3,0xd4,0xd5,0xd6,0xd7,0xd8,0xd9,0xda,
|
||||
<a name="l00073"></a>00073 0xdb,0xdc,0xdd,0xde,0xdf,0xe0,0xe1,0xe2,0xe3,0xe4,0xe5,0xe6,0xe7,0xe8,0xe9,0xea,
|
||||
<a name="l00074"></a>00074 0xeb,0xec,0xed,0xee,0xef,0xf0,0xf1,0xf2,0xf3,0xf4,0xf5,0xf6,0xf7,0xf8,0xf9,0xfa,
|
||||
<a name="l00075"></a>00075 0xfb,0xfc,0xfd,0xfe,0xff,0x100,0x101,0x102,0x103,0x104,0x105,0x106,0x107,0x108,0x109,0x10a,
|
||||
<a name="l00076"></a>00076 0x10b,0x10c,0x10d,0x10e,0x10f,0x110,0x111,0x112,0x113,0x114,0x115,0x116,0x117,0x118,0x119,0x11a,
|
||||
<a name="l00077"></a>00077 0x11b,0x11c,0x11d,0x11e,0x11f,0x120,0x121,0x122,0x123,0x124,0x125,0x126,0x127,0x128,0x129,0x12a,
|
||||
<a name="l00078"></a>00078 0x12b,0x12c,0x12d,0x12e,0x12f,0x130,0x131,0x134,0x135,0x136,0x137,0x138,0x139,0x13a,0x13b,0x13c,
|
||||
<a name="l00079"></a>00079 0x13d,0x13e,0x141,0x142,0x143,0x144,0x145,0x146,0x147,0x148,0x14a,0x14b,0x14c,0x14d,0x14e,0x14f,
|
||||
<a name="l00080"></a>00080 0x150,0x151,0x152,0x153,0x154,0x155,0x156,0x157,0x158,0x159,0x15a,0x15b,0x15c,0x15d,0x15e,0x15f,
|
||||
<a name="l00081"></a>00081 0x160,0x161,0x162,0x163,0x164,0x165,0x166,0x167,0x168,0x169,0x16a,0x16b,0x16c,0x16d,0x16e,0x16f,
|
||||
<a name="l00082"></a>00082 0x170,0x171,0x172,0x173,0x174,0x175,0x176,0x177,0x178,0x179,0x17a,0x17b,0x17c,0x17d,0x17e,0x17f,
|
||||
<a name="l00083"></a>00083 0x180,0x197,0x1a0,0x1a1,0x1af,0x1b0,0x1b5,0x1b6,0x1cd,0x1ce,0x1cf,0x1d0,0x1d1,0x1d2,0x1d3,0x1d4,
|
||||
<a name="l00084"></a>00084 0x1d5,0x1d6,0x1d7,0x1d8,0x1d9,0x1da,0x1db,0x1dc,0x1de,0x1df,0x1e0,0x1e1,0x1e2,0x1e3,0x1e4,0x1e5,
|
||||
<a name="l00085"></a>00085 0x1e6,0x1e7,0x1e8,0x1e9,0x1ea,0x1eb,0x1ec,0x1ed,0x1ee,0x1ef,0x1f0,0x1f4,0x1f5,0x1f8,0x1f9,0x1fa,
|
||||
<a name="l00086"></a>00086 0x1fb,0x1fc,0x1fd,0x1fe,0x1ff,0x21e,0x21f,0x226,0x227,0x228,0x229,0x22a,0x22b,0x22c,0x22d,0x22e,
|
||||
<a name="l00087"></a>00087 0x22f,0x230,0x231,0x232,0x233,0x259,0x268,0x2a1,0x344,0x385,0x386,0x388,0x389,0x38a,0x38c,0x38e,
|
||||
<a name="l00088"></a>00088 0x38f,0x390,0x3aa,0x3ab,0x3ac,0x3ad,0x3ae,0x3af,0x3b0,0x3ca,0x3cb,0x3cc,0x3cd,0x3ce,0x3d4,0x400,
|
||||
<a name="l00089"></a>00089 0x401,0x403,0x407,0x40c,0x40d,0x40e,0x419,0x439,0x450,0x451,0x453,0x457,0x45c,0x45d,0x45e,0x492,
|
||||
<a name="l00090"></a>00090 0x493,0x49e,0x49f,0x4b0,0x4b1,0x4c1,0x4c2,0x4d0,0x4d1,0x4d2,0x4d3,0x4d6,0x4d7,0x4da,0x4db,0x4dc,
|
||||
<a name="l00091"></a>00091 0x4dd,0x4de,0x4df,0x4e2,0x4e3,0x4e4,0x4e5,0x4e6,0x4e7,0x4ea,0x4eb,0x4ec,0x4ed,0x4ee,0x4ef,0x4f0,
|
||||
<a name="l00092"></a>00092 0x4f1,0x4f2,0x4f3,0x4f4,0x4f5,0x4f8,0x4f9,0x622,0x623,0x624,0x625,0x626,0x6c0,0x6c2,0x6d3,0x929,
|
||||
<a name="l00093"></a>00093 0x931,0x934,0x958,0x959,0x95a,0x95b,0x95c,0x95d,0x95e,0x95f,0x9cb,0x9cc,0x9dc,0x9dd,0x9df,0xa33,
|
||||
<a name="l00094"></a>00094 0xa36,0xa59,0xa5a,0xa5b,0xa5e,0xb48,0xb4b,0xb4c,0xb5c,0xb5d,0xb94,0xbca,0xbcb,0xbcc,0xc48,0xcc0,
|
||||
<a name="l00095"></a>00095 0xcc7,0xcc8,0xcca,0xccb,0xd4a,0xd4b,0xd4c,0xdda,0xddc,0xddd,0xdde,0xf43,0xf4d,0xf52,0xf57,0xf5c,
|
||||
<a name="l00096"></a>00096 0xf69,0xf73,0xf75,0xf76,0xf78,0xf81,0xf93,0xf9d,0xfa2,0xfa7,0xfac,0xfb9,0x1026,0x1101,0x1104,0x1108,
|
||||
<a name="l00097"></a>00097 0x110a,0x110d,0x1113,0x1114,0x1115,0x1116,0x1117,0x1118,0x1119,0x111a,0x111b,0x111c,0x111d,0x111e,0x111f,0x1120,
|
||||
<a name="l00098"></a>00098 0x1121,0x1122,0x1123,0x1124,0x1125,0x1126,0x1127,0x1128,0x1129,0x112a,0x112b,0x112c,0x112d,0x112e,0x112f,0x1130,
|
||||
<a name="l00099"></a>00099 0x1131,0x1132,0x1133,0x1134,0x1135,0x1136,0x1137,0x1138,0x1139,0x113a,0x113b,0x113d,0x113f,0x1141,0x1142,0x1143,
|
||||
<a name="l00100"></a>00100 0x1144,0x1145,0x1146,0x1147,0x1148,0x1149,0x114a,0x114b,0x114d,0x114f,0x1151,0x1152,0x1153,0x1156,0x1157,0x1158,
|
||||
<a name="l00101"></a>00101 0x1162,0x1164,0x1166,0x1168,0x116a,0x116b,0x116c,0x116f,0x1170,0x1171,0x1174,0x1176,0x1177,0x1178,0x1179,0x117a,
|
||||
<a name="l00102"></a>00102 0x117b,0x117c,0x117d,0x117e,0x117f,0x1180,0x1181,0x1182,0x1183,0x1184,0x1185,0x1186,0x1187,0x1188,0x1189,0x118a,
|
||||
<a name="l00103"></a>00103 0x118b,0x118c,0x118d,0x118e,0x118f,0x1190,0x1191,0x1192,0x1193,0x1194,0x1195,0x1196,0x1197,0x1198,0x1199,0x119a,
|
||||
<a name="l00104"></a>00104 0x119b,0x119c,0x119d,0x119f,0x11a0,0x11a1,0x11a2,0x11a9,0x11aa,0x11ac,0x11ad,0x11b0,0x11b1,0x11b2,0x11b3,0x11b4,
|
||||
<a name="l00105"></a>00105 0x11b5,0x11b6,0x11b9,0x11bb,0x11c3,0x11c4,0x11c5,0x11c6,0x11c7,0x11c8,0x11c9,0x11ca,0x11cb,0x11cc,0x11cd,0x11ce,
|
||||
<a name="l00106"></a>00106 0x11cf,0x11d0,0x11d1,0x11d2,0x11d3,0x11d4,0x11d5,0x11d6,0x11d7,0x11d8,0x11d9,0x11da,0x11db,0x11dc,0x11dd,0x11de,
|
||||
<a name="l00107"></a>00107 0x11df,0x11e0,0x11e1,0x11e2,0x11e3,0x11e4,0x11e5,0x11e6,0x11e7,0x11e8,0x11e9,0x11ea,0x11ec,0x11ed,0x11ee,0x11ef,
|
||||
<a name="l00108"></a>00108 0x11f1,0x11f2,0x11f3,0x11f4,0x11f5,0x11f6,0x11f7,0x11f8,0x1e02,0x1e03,0x1e04,0x1e05,0x1e08,0x1e09,0x1e0a,0x1e0b,
|
||||
<a name="l00109"></a>00109 0x1e0c,0x1e0d,0x1e10,0x1e11,0x1e14,0x1e15,0x1e16,0x1e17,0x1e1c,0x1e1d,0x1e1e,0x1e1f,0x1e20,0x1e21,0x1e22,0x1e23,
|
||||
<a name="l00110"></a>00110 0x1e24,0x1e25,0x1e26,0x1e27,0x1e28,0x1e29,0x1e2e,0x1e2f,0x1e30,0x1e31,0x1e32,0x1e33,0x1e36,0x1e37,0x1e38,0x1e39,
|
||||
<a name="l00111"></a>00111 0x1e3e,0x1e3f,0x1e40,0x1e41,0x1e42,0x1e43,0x1e44,0x1e45,0x1e46,0x1e47,0x1e4c,0x1e4d,0x1e4e,0x1e4f,0x1e50,0x1e51,
|
||||
<a name="l00112"></a>00112 0x1e52,0x1e53,0x1e54,0x1e55,0x1e56,0x1e57,0x1e58,0x1e59,0x1e5a,0x1e5b,0x1e5c,0x1e5d,0x1e60,0x1e61,0x1e62,0x1e63,
|
||||
<a name="l00113"></a>00113 0x1e64,0x1e65,0x1e66,0x1e67,0x1e68,0x1e69,0x1e6a,0x1e6b,0x1e6c,0x1e6d,0x1e78,0x1e79,0x1e7a,0x1e7b,0x1e7c,0x1e7d,
|
||||
<a name="l00114"></a>00114 0x1e7e,0x1e7f,0x1e80,0x1e81,0x1e82,0x1e83,0x1e84,0x1e85,0x1e86,0x1e87,0x1e88,0x1e89,0x1e8a,0x1e8b,0x1e8c,0x1e8d,
|
||||
<a name="l00115"></a>00115 0x1e8e,0x1e8f,0x1e90,0x1e91,0x1e92,0x1e93,0x1e97,0x1e98,0x1e99,0x1e9b,0x1ea0,0x1ea1,0x1ea2,0x1ea3,0x1ea4,0x1ea5,
|
||||
<a name="l00116"></a>00116 0x1ea6,0x1ea7,0x1ea8,0x1ea9,0x1eaa,0x1eab,0x1eac,0x1ead,0x1eae,0x1eaf,0x1eb0,0x1eb1,0x1eb2,0x1eb3,0x1eb4,0x1eb5,
|
||||
<a name="l00117"></a>00117 0x1eb6,0x1eb7,0x1eb8,0x1eb9,0x1eba,0x1ebb,0x1ebc,0x1ebd,0x1ebe,0x1ebf,0x1ec0,0x1ec1,0x1ec2,0x1ec3,0x1ec4,0x1ec5,
|
||||
<a name="l00118"></a>00118 0x1ec6,0x1ec7,0x1ec8,0x1ec9,0x1eca,0x1ecb,0x1ecc,0x1ecd,0x1ece,0x1ecf,0x1ed0,0x1ed1,0x1ed2,0x1ed3,0x1ed4,0x1ed5,
|
||||
<a name="l00119"></a>00119 0x1ed6,0x1ed7,0x1ed8,0x1ed9,0x1eda,0x1edb,0x1edc,0x1edd,0x1ede,0x1edf,0x1ee0,0x1ee1,0x1ee2,0x1ee3,0x1ee4,0x1ee5,
|
||||
<a name="l00120"></a>00120 0x1ee6,0x1ee7,0x1ee8,0x1ee9,0x1eea,0x1eeb,0x1eec,0x1eed,0x1eee,0x1eef,0x1ef0,0x1ef1,0x1ef2,0x1ef3,0x1ef4,0x1ef5,
|
||||
<a name="l00121"></a>00121 0x1ef6,0x1ef7,0x1ef8,0x1ef9,0x1f00,0x1f01,0x1f02,0x1f03,0x1f04,0x1f05,0x1f06,0x1f07,0x1f08,0x1f09,0x1f0a,0x1f0b,
|
||||
<a name="l00122"></a>00122 0x1f0c,0x1f0d,0x1f0e,0x1f0f,0x1f10,0x1f11,0x1f12,0x1f13,0x1f14,0x1f15,0x1f18,0x1f19,0x1f1a,0x1f1b,0x1f1c,0x1f1d,
|
||||
<a name="l00123"></a>00123 0x1f20,0x1f21,0x1f22,0x1f23,0x1f24,0x1f25,0x1f26,0x1f27,0x1f28,0x1f29,0x1f2a,0x1f2b,0x1f2c,0x1f2d,0x1f2e,0x1f2f,
|
||||
<a name="l00124"></a>00124 0x1f30,0x1f31,0x1f32,0x1f33,0x1f34,0x1f35,0x1f36,0x1f37,0x1f38,0x1f39,0x1f3a,0x1f3b,0x1f3c,0x1f3d,0x1f3e,0x1f3f,
|
||||
<a name="l00125"></a>00125 0x1f40,0x1f41,0x1f42,0x1f43,0x1f44,0x1f45,0x1f48,0x1f49,0x1f4a,0x1f4b,0x1f4c,0x1f4d,0x1f50,0x1f51,0x1f52,0x1f53,
|
||||
<a name="l00126"></a>00126 0x1f54,0x1f55,0x1f56,0x1f57,0x1f59,0x1f5b,0x1f5d,0x1f5f,0x1f60,0x1f61,0x1f62,0x1f63,0x1f64,0x1f65,0x1f66,0x1f67,
|
||||
<a name="l00127"></a>00127 0x1f68,0x1f69,0x1f6a,0x1f6b,0x1f6c,0x1f6d,0x1f6e,0x1f6f,0x1f70,0x1f72,0x1f74,0x1f76,0x1f78,0x1f7a,0x1f7c,0x1f80,
|
||||
<a name="l00128"></a>00128 0x1f81,0x1f82,0x1f83,0x1f84,0x1f85,0x1f86,0x1f87,0x1f88,0x1f89,0x1f8a,0x1f8b,0x1f8c,0x1f8d,0x1f8e,0x1f8f,0x1f90,
|
||||
<a name="l00129"></a>00129 0x1f91,0x1f92,0x1f93,0x1f94,0x1f95,0x1f96,0x1f97,0x1f98,0x1f99,0x1f9a,0x1f9b,0x1f9c,0x1f9d,0x1f9e,0x1f9f,0x1fa0,
|
||||
<a name="l00130"></a>00130 0x1fa1,0x1fa2,0x1fa3,0x1fa4,0x1fa5,0x1fa6,0x1fa7,0x1fa8,0x1fa9,0x1faa,0x1fab,0x1fac,0x1fad,0x1fae,0x1faf,0x1fb0,
|
||||
<a name="l00131"></a>00131 0x1fb1,0x1fb2,0x1fb3,0x1fb4,0x1fb6,0x1fb7,0x1fb8,0x1fb9,0x1fba,0x1fbc,0x1fc1,0x1fc2,0x1fc3,0x1fc4,0x1fc6,0x1fc7,
|
||||
<a name="l00132"></a>00132 0x1fc8,0x1fca,0x1fcc,0x1fcd,0x1fce,0x1fcf,0x1fd0,0x1fd1,0x1fd2,0x1fd6,0x1fd7,0x1fd8,0x1fd9,0x1fda,0x1fdd,0x1fde,
|
||||
<a name="l00133"></a>00133 0x1fdf,0x1fe0,0x1fe1,0x1fe2,0x1fe4,0x1fe5,0x1fe6,0x1fe7,0x1fe8,0x1fe9,0x1fea,0x1fec,0x1fed,0x1ff2,0x1ff3,0x1ff4,
|
||||
<a name="l00134"></a>00134 0x1ff6,0x1ff7,0x1ff8,0x1ffa,0x1ffc,0x2008,0x2018,0x2019,0x201a,0x201c,0x201d,0x201e,0x2022,0x2026,0x2030,0x2039,
|
||||
<a name="l00135"></a>00135 0x203a,0x203d,0x2070,0x2074,0x2075,0x2076,0x2077,0x2078,0x2079,0x207a,0x207b,0x207c,0x207d,0x207e,0x2080,0x2081,
|
||||
<a name="l00136"></a>00136 0x2082,0x2083,0x2084,0x2085,0x2086,0x2087,0x2088,0x2089,0x208a,0x208b,0x208c,0x208d,0x208e,0x20a0,0x20a1,0x20a2,
|
||||
<a name="l00137"></a>00137 0x20a3,0x20a4,0x20a5,0x20a6,0x20a7,0x20a8,0x20a9,0x20ab,0x20ac,0x2116,0x2120,0x2122,0x219a,0x219b,0x21ae,0x2204,
|
||||
<a name="l00138"></a>00138 0x2209,0x220c,0x2224,0x2226,0x2241,0x2244,0x2247,0x2249,0x2260,0x2262,0x226d,0x226e,0x226f,0x2270,0x2271,0x2274,
|
||||
<a name="l00139"></a>00139 0x2275,0x2278,0x2279,0x2280,0x2281,0x2284,0x2285,0x2288,0x2289,0x22ac,0x22ad,0x22ae,0x22af,0x22e0,0x22e1,0x22e2,
|
||||
<a name="l00140"></a>00140 0x22e3,0x22ea,0x22eb,0x22ec,0x22ed,0x266d,0x266e,0x266f,0x2adc,0x301d,0x301e,0x3192,0x3193,0x3194,0x3195,0x3196,
|
||||
<a name="l00141"></a>00141 0x3197,0x3198,0x3199,0x319a,0x319b,0x319c,0x319d,0x319e,0x319f,0xfb1d,0xfb1f,0xfb2a,0xfb2b,0xfb2c,0xfb2d,0xfb2e,
|
||||
<a name="l00142"></a>00142 0xfb2f,0xfb30,0xfb31,0xfb32,0xfb33,0xfb34,0xfb35,0xfb36,0xfb38,0xfb39,0xfb3a,0xfb3b,0xfb3c,0xfb3e,0xfb40,0xfb41,
|
||||
<a name="l00143"></a>00143 0xfb43,0xfb44,0xfb46,0xfb47,0xfb48,0xfb49,0xfb4a,0xfb4b,0xfb4c,0xfb4d,0xfb4e
|
||||
<a name="l00144"></a>00144 };
|
||||
<a name="l00145"></a>00145 uint16_t multikey_map_first[] = {
|
||||
<a name="l00146"></a>00146 0x002B,0x0020,0x0041,0x0028,0x0029,0x0020,0x0020,0x002D,0x006C,0x002D,0x0020,0x0020,0x0021,0x002F,0x002D,0x0078,
|
||||
<a name="l00147"></a>00147 0x003D,0x0021,0x043F,0x004F,0x003C,0x002D,0x004F,0x006F,0x002B,0x005E,0x005E,0x006D,0x0050,0x002E,0x0020,0x005E,
|
||||
<a name="l00148"></a>00148 0x003E,0x0031,0x0031,0x0033,0x003F,0x0060,0x0027,0x005E,0x007E,0x0022,0x006F,0x0041,0x00B8,0x0060,0x0027,0x005E,
|
||||
<a name="l00149"></a>00149 0x0022,0x0060,0x0027,0x005E,0x0022,0x0044,0x007E,0x0060,0x0027,0x005E,0x007E,0x0022,0x0078,0x002F,0x0060,0x0027,
|
||||
<a name="l00150"></a>00150 0x005E,0x0022,0x0027,0x0054,0x0073,0x0060,0x0027,0x005E,0x007E,0x0022,0x006F,0x0061,0x00B8,0x0060,0x0027,0x005E,
|
||||
<a name="l00151"></a>00151 0x0022,0x0060,0x0027,0x005E,0x0022,0x0064,0x007E,0x0060,0x0027,0x005E,0x007E,0x0022,0x002D,0x002F,0x0060,0x0027,
|
||||
<a name="l00152"></a>00152 0x005E,0x0022,0x0027,0x0074,0x0022,0x005F,0x005F,0x0062,0x0062,0x003B,0x003B,0x0027,0x0027,0x005E,0x005E,0x002E,
|
||||
<a name="l00153"></a>00153 0x002E,0x0063,0x0063,0x0063,0x0063,0x002F,0x002F,0x005F,0x005F,0x0062,0x0062,0x002E,0x002E,0x003B,0x003B,0x0063,
|
||||
<a name="l00154"></a>00154 0x0063,0x005E,0x005E,0x0062,0x0062,0x002E,0x002E,0x00B8,0x00B8,0x005E,0x005E,0x002F,0x002F,0x007E,0x007E,0x005F,
|
||||
<a name="l00155"></a>00155 0x005F,0x0062,0x0062,0x003B,0x003B,0x002E,0x0069,0x005E,0x005E,0x00B8,0x00B8,0x006B,0x0027,0x0027,0x00B8,0x00B8,
|
||||
<a name="l00156"></a>00156 0x0063,0x0063,0x002F,0x002F,0x0027,0x0027,0x00B8,0x00B8,0x0063,0x0063,0x004E,0x006E,0x005F,0x005F,0x0062,0x0062,
|
||||
<a name="l00157"></a>00157 0x003D,0x003D,0x004F,0x006F,0x0027,0x0027,0x00B8,0x00B8,0x0063,0x0063,0x0027,0x0027,0x005E,0x005E,0x00B8,0x00B8,
|
||||
<a name="l00158"></a>00158 0x0063,0x0063,0x00B8,0x00B8,0x0063,0x0063,0x002F,0x002F,0x007E,0x007E,0x005F,0x005F,0x0062,0x0062,0x006F,0x006F,
|
||||
<a name="l00159"></a>00159 0x003D,0x003D,0x003B,0x003B,0x005E,0x005E,0x005E,0x005E,0x0022,0x0027,0x0027,0x002E,0x002E,0x0063,0x0063,0x0066,
|
||||
<a name="l00160"></a>00160 0x002F,0x002F,0x002B,0x002B,0x002B,0x002B,0x002F,0x002F,0x0063,0x0063,0x0063,0x0063,0x0063,0x0063,0x0063,0x0063,
|
||||
<a name="l00161"></a>00161 0x005F,0x005F,0x0027,0x0027,0x0063,0x0063,0x0060,0x0060,0x005F,0x005F,0x005F,0x005F,0x005F,0x005F,0x002F,0x002F,
|
||||
<a name="l00162"></a>00162 0x0063,0x0063,0x0063,0x0063,0x003B,0x003B,0x005F,0x005F,0x0063,0x0063,0x0063,0x0027,0x0027,0x0060,0x0060,0x0027,
|
||||
<a name="l00163"></a>00163 0x0027,0x0027,0x0027,0x0027,0x0027,0x0063,0x0063,0x002E,0x002E,0x00B8,0x00B8,0x005F,0x005F,0x005F,0x005F,0x002E,
|
||||
<a name="l00164"></a>00164 0x002E,0x005F,0x005F,0x005F,0x005F,0x0065,0x002F,0x002F,0x0022,0x00A8,0x0027,0x0027,0x0027,0x0027,0x0027,0x0027,
|
||||
<a name="l00165"></a>00165 0x0027,0x0027,0x0022,0x0022,0x0027,0x0027,0x0027,0x0027,0x0027,0x0022,0x0022,0x0027,0x0027,0x0027,0x0022,0x0060,
|
||||
<a name="l00166"></a>00166 0x0022,0x0027,0x0022,0x0027,0x0060,0x0062,0x0062,0x0062,0x0060,0x0022,0x0027,0x0022,0x0027,0x0060,0x0062,0x002F,
|
||||
<a name="l00167"></a>00167 0x002F,0x002F,0x002F,0x002F,0x002F,0x0062,0x0062,0x0062,0x0062,0x0022,0x0022,0x0062,0x0062,0x0022,0x0022,0x0022,
|
||||
<a name="l00168"></a>00168 0x0022,0x0022,0x0022,0x005F,0x005F,0x0022,0x0022,0x0022,0x0022,0x0022,0x0022,0x0022,0x0022,0x005F,0x005F,0x0022,
|
||||
<a name="l00169"></a>00169 0x0022,0x003D,0x003D,0x0022,0x0022,0x0022,0x0022,0x0653,0x0654,0x0654,0x0655,0x0654,0x0654,0x0654,0x0654,0x093C,
|
||||
<a name="l00170"></a>00170 0x093C,0x093C,0x093C,0x093C,0x093C,0x093C,0x093C,0x093C,0x093C,0x093C,0x09C7,0x09C7,0x09BC,0x09BC,0x09BC,0x0A3C,
|
||||
<a name="l00171"></a>00171 0x0A3C,0x0A3C,0x0A3C,0x0A3C,0x0A3C,0x0B47,0x0B47,0x0B47,0x0B3C,0x0B3C,0x0BD7,0x0BC6,0x0BC7,0x0BC6,0x0C46,0x0CBF,
|
||||
<a name="l00172"></a>00172 0x0CC6,0x0CC6,0x0CC6,0x0CCA,0x0D46,0x0D47,0x0D46,0x0DD9,0x0DD9,0x0DDC,0x0DD9,0x0FB7,0x0FB7,0x0FB7,0x0FB7,0x0FB7,
|
||||
<a name="l00173"></a>00173 0x0FB5,0x0F71,0x0F71,0x0FB2,0x0FB3,0x0F71,0x0F92,0x0F9C,0x0FA1,0x0FA6,0x0FAB,0x0F90,0x102E,0x1100,0x1103,0x1107,
|
||||
<a name="l00174"></a>00174 0x1109,0x110C,0x1102,0x1102,0x1102,0x1102,0x1103,0x1105,0x1105,0x1105,0x1105,0x1106,0x1106,0x1107,0x1107,0x1107,
|
||||
<a name="l00175"></a>00175 0x1107,0x1107,0x1107,0x1107,0x1107,0x1107,0x1107,0x1107,0x1107,0x1107,0x1107,0x1107,0x1109,0x1109,0x1109,0x1109,
|
||||
<a name="l00176"></a>00176 0x1109,0x1109,0x1109,0x1109,0x1109,0x1109,0x1109,0x1109,0x1109,0x1109,0x1109,0x113C,0x113E,0x110B,0x110B,0x110B,
|
||||
<a name="l00177"></a>00177 0x110B,0x110B,0x110B,0x110B,0x110B,0x110B,0x110B,0x110B,0x110C,0x114E,0x1150,0x110E,0x110E,0x1111,0x1111,0x1112,
|
||||
<a name="l00178"></a>00178 0x1161,0x1163,0x1165,0x1167,0x1169,0x1169,0x1169,0x116E,0x116E,0x116E,0x1173,0x1161,0x1161,0x1163,0x1163,0x1165,
|
||||
<a name="l00179"></a>00179 0x1165,0x1165,0x1167,0x1167,0x1169,0x1169,0x1169,0x1169,0x1169,0x116D,0x116D,0x116D,0x116D,0x116D,0x116E,0x116E,
|
||||
<a name="l00180"></a>00180 0x116E,0x116E,0x116E,0x1172,0x1172,0x1172,0x1172,0x1172,0x1172,0x1172,0x1173,0x1173,0x1174,0x1175,0x1175,0x1175,
|
||||
<a name="l00181"></a>00181 0x1175,0x1175,0x1175,0x119E,0x119E,0x119E,0x119E,0x11A8,0x11A8,0x11AB,0x11AB,0x11AF,0x11AF,0x11AF,0x11AF,0x11AF,
|
||||
<a name="l00182"></a>00182 0x11AF,0x11AF,0x11B8,0x11BA,0x11A8,0x11A8,0x11AB,0x11AB,0x11AB,0x11AB,0x11AB,0x11AE,0x11AE,0x11AF,0x11AF,0x11AF,
|
||||
<a name="l00183"></a>00183 0x11CE,0x11AF,0x11AF,0x11AF,0x11AF,0x11AF,0x11AF,0x11AF,0x11AF,0x11AF,0x11AF,0x11B7,0x11B7,0x11B7,0x11B7,0x11B7,
|
||||
<a name="l00184"></a>00184 0x11B7,0x11B7,0x11B7,0x11B7,0x11B8,0x11B8,0x11B8,0x11B8,0x11BA,0x11BA,0x11BA,0x11BA,0x11BC,0x11BC,0x11BC,0x11BC,
|
||||
<a name="l00185"></a>00185 0x11F0,0x11F0,0x11C1,0x11C1,0x11C2,0x11C2,0x11C2,0x11C2,0x002E,0x002E,0x0021,0x0021,0x0027,0x0027,0x002E,0x002E,
|
||||
<a name="l00186"></a>00186 0x0021,0x0021,0x00B8,0x00B8,0x0060,0x0060,0x0027,0x0027,0x0062,0x0062,0x002E,0x002E,0x005F,0x005F,0x002E,0x002E,
|
||||
<a name="l00187"></a>00187 0x0021,0x0021,0x0022,0x0022,0x00B8,0x00B8,0x0027,0x0027,0x0027,0x0027,0x0021,0x0021,0x0021,0x0021,0x005F,0x005F,
|
||||
<a name="l00188"></a>00188 0x0027,0x0027,0x002E,0x002E,0x0021,0x0021,0x002E,0x002E,0x0021,0x0021,0x0027,0x0027,0x0022,0x0022,0x0060,0x0060,
|
||||
<a name="l00189"></a>00189 0x0027,0x0027,0x0027,0x0027,0x002E,0x002E,0x002E,0x002E,0x0021,0x0021,0x005F,0x005F,0x002E,0x002E,0x0021,0x0021,
|
||||
<a name="l00190"></a>00190 0x002E,0x002E,0x002E,0x002E,0x002E,0x002E,0x002E,0x002E,0x0021,0x0021,0x0027,0x0027,0x0022,0x0022,0x007E,0x007E,
|
||||
<a name="l00191"></a>00191 0x0021,0x0021,0x0060,0x0060,0x0027,0x0027,0x0022,0x0022,0x002E,0x002E,0x0021,0x0021,0x002E,0x002E,0x0022,0x0022,
|
||||
<a name="l00192"></a>00192 0x002E,0x002E,0x005E,0x005E,0x0021,0x0021,0x0022,0x006F,0x006F,0x002E,0x0021,0x0021,0x003F,0x003F,0x0027,0x0027,
|
||||
<a name="l00193"></a>00193 0x0060,0x0060,0x003F,0x003F,0x007E,0x007E,0x005E,0x005E,0x0027,0x0027,0x0060,0x0060,0x003F,0x003F,0x007E,0x007E,
|
||||
<a name="l00194"></a>00194 0x0062,0x0062,0x0021,0x0021,0x003F,0x003F,0x007E,0x007E,0x0027,0x0027,0x0060,0x0060,0x003F,0x003F,0x007E,0x007E,
|
||||
<a name="l00195"></a>00195 0x005E,0x005E,0x003F,0x003F,0x0021,0x0021,0x0021,0x0021,0x003F,0x003F,0x0027,0x0027,0x0060,0x0060,0x003F,0x003F,
|
||||
<a name="l00196"></a>00196 0x007E,0x007E,0x005E,0x005E,0x0027,0x0027,0x0060,0x0060,0x003F,0x003F,0x007E,0x007E,0x0021,0x0021,0x0021,0x0021,
|
||||
<a name="l00197"></a>00197 0x003F,0x003F,0x0027,0x0027,0x0060,0x0060,0x003F,0x003F,0x007E,0x007E,0x0021,0x0021,0x0060,0x0060,0x0021,0x0021,
|
||||
<a name="l00198"></a>00198 0x003F,0x003F,0x007E,0x007E,0x0029,0x0028,0x0060,0x0060,0x0027,0x0027,0x007E,0x007E,0x0029,0x0028,0x0060,0x0060,
|
||||
<a name="l00199"></a>00199 0x0027,0x0027,0x007E,0x007E,0x0029,0x0028,0x0060,0x0060,0x0027,0x0027,0x0029,0x0028,0x0060,0x0060,0x0027,0x0027,
|
||||
<a name="l00200"></a>00200 0x0029,0x0028,0x0060,0x0060,0x0027,0x0027,0x007E,0x007E,0x0029,0x0028,0x0060,0x0060,0x0027,0x0027,0x007E,0x007E,
|
||||
<a name="l00201"></a>00201 0x0029,0x0028,0x0060,0x0060,0x0027,0x0027,0x007E,0x007E,0x0029,0x0028,0x0060,0x0060,0x0027,0x0027,0x007E,0x007E,
|
||||
<a name="l00202"></a>00202 0x0029,0x0028,0x0060,0x0060,0x0027,0x0027,0x0029,0x0028,0x0060,0x0060,0x0027,0x0027,0x0029,0x0028,0x0060,0x0060,
|
||||
<a name="l00203"></a>00203 0x0027,0x0027,0x007E,0x007E,0x0028,0x0060,0x0027,0x007E,0x0029,0x0028,0x0060,0x0060,0x0027,0x0027,0x007E,0x007E,
|
||||
<a name="l00204"></a>00204 0x0029,0x0028,0x0060,0x0060,0x0027,0x0027,0x007E,0x007E,0x0060,0x0060,0x0060,0x0060,0x0060,0x0060,0x0060,0x03B9,
|
||||
<a name="l00205"></a>00205 0x03B9,0x03B9,0x03B9,0x03B9,0x03B9,0x03B9,0x03B9,0x03B9,0x03B9,0x03B9,0x03B9,0x03B9,0x03B9,0x03B9,0x03B9,0x03B9,
|
||||
<a name="l00206"></a>00206 0x03B9,0x03B9,0x03B9,0x03B9,0x03B9,0x03B9,0x03B9,0x03B9,0x03B9,0x03B9,0x03B9,0x03B9,0x03B9,0x03B9,0x03B9,0x03B9,
|
||||
<a name="l00207"></a>00207 0x03B9,0x03B9,0x03B9,0x03B9,0x03B9,0x03B9,0x03B9,0x03B9,0x03B9,0x03B9,0x03B9,0x03B9,0x03B9,0x03B9,0x03B9,0x0062,
|
||||
<a name="l00208"></a>00208 0x005F,0x03B9,0x03B9,0x03B9,0x007E,0x03B9,0x0062,0x005F,0x0060,0x03B9,0x00A8,0x03B9,0x03B9,0x03B9,0x007E,0x03B9,
|
||||
<a name="l00209"></a>00209 0x0060,0x0060,0x03B9,0x1FBF,0x1FBF,0x1FBF,0x0062,0x005F,0x0060,0x007E,0x007E,0x0062,0x005F,0x0060,0x1FFE,0x1FFE,
|
||||
<a name="l00210"></a>00210 0x1FFE,0x0062,0x005F,0x0060,0x0029,0x0028,0x007E,0x007E,0x0062,0x005F,0x0060,0x0028,0x00A8,0x03B9,0x03B9,0x03B9,
|
||||
<a name="l00211"></a>00211 0x007E,0x03B9,0x0060,0x0060,0x03B9,0x0020,0x0027,0x0027,0x0027,0x0022,0x0022,0x0022,0x002E,0x002E,0x0025,0x002E,
|
||||
<a name="l00212"></a>00212 0x002E,0x0021,0x005E,0x005E,0x005E,0x005E,0x005E,0x005E,0x005E,0x005E,0x005E,0x005E,0x005E,0x005E,0x005F,0x005F,
|
||||
<a name="l00213"></a>00213 0x005F,0x005F,0x005F,0x005F,0x005F,0x005F,0x005F,0x005F,0x005F,0x005F,0x005F,0x005F,0x005F,0x0043,0x002F,0x0043,
|
||||
<a name="l00214"></a>00214 0x0046,0x003D,0x002F,0x003D,0x0050,0x0052,0x003D,0x0064,0x003D,0x041D,0x0073,0x0074,0x002F,0x002F,0x002F,0x2203,
|
||||
<a name="l00215"></a>00215 0x2208,0x220B,0x2223,0x2225,0x223C,0x2243,0x223C,0x2248,0x003D,0x2261,0x224D,0x003C,0x003E,0x2264,0x2265,0x2272,
|
||||
<a name="l00216"></a>00216 0x2273,0x2276,0x2277,0x227A,0x227B,0x2282,0x2283,0x2286,0x2287,0x22A3,0x22A8,0x22A9,0x22AB,0x227C,0x227D,0x2291,
|
||||
<a name="l00217"></a>00217 0x2292,0x22B2,0x22B3,0x22B4,0x22B5,0x0023,0x0023,0x0023,0x2ADD,0x0022,0x0022,0x005E,0x005E,0x005E,0x005E,0x005E,
|
||||
<a name="l00218"></a>00218 0x005E,0x005E,0x005E,0x005E,0x005E,0x005E,0x005E,0x005E,0x005E,0x05B4,0x05B7,0x05C1,0x05C2,0x05C1,0x05C2,0x05B7,
|
||||
<a name="l00219"></a>00219 0x05B8,0x05BC,0x05BC,0x05BC,0x05BC,0x05BC,0x05BC,0x05BC,0x05BC,0x05BC,0x05BC,0x05BC,0x05BC,0x05BC,0x05BC,0x05BC,
|
||||
<a name="l00220"></a>00220 0x05BC,0x05BC,0x05BC,0x05BC,0x05BC,0x05BC,0x05BC,0x05B9,0x05BF,0x05BF,0x05BF
|
||||
<a name="l00221"></a>00221 };
|
||||
<a name="l00222"></a>00222 uint16_t multikey_map_second[] = {
|
||||
<a name="l00223"></a>00223 0x002B,0x0027,0x0054,0x0028,0x0029,0x003E,0x0060,0x0028,0x0076,0x0029,0x002D,0x0020,0x0021,0x0063,0x004C,0x006F,
|
||||
<a name="l00224"></a>00224 0x0059,0x005E,0x0430,0x0043,0x003C,0x002C,0x0052,0x006F,0x002D,0x0032,0x0033,0x0075,0x0050,0x002D,0x002C,0x0031,
|
||||
<a name="l00225"></a>00225 0x003E,0x0034,0x0032,0x0034,0x003F,0x0041,0x0041,0x0041,0x0041,0x0041,0x0041,0x0045,0x0043,0x0045,0x0045,0x0045,
|
||||
<a name="l00226"></a>00226 0x0045,0x0049,0x0049,0x0049,0x0049,0x0048,0x004E,0x004F,0x004F,0x004F,0x004F,0x004F,0x0078,0x004F,0x0055,0x0055,
|
||||
<a name="l00227"></a>00227 0x0055,0x0055,0x0059,0x0048,0x0073,0x0061,0x0061,0x0061,0x0061,0x0061,0x0061,0x0065,0x0063,0x0065,0x0065,0x0065,
|
||||
<a name="l00228"></a>00228 0x0065,0x0069,0x0069,0x0069,0x0069,0x0068,0x006E,0x006F,0x006F,0x006F,0x006F,0x006F,0x003A,0x006F,0x0075,0x0075,
|
||||
<a name="l00229"></a>00229 0x0075,0x0075,0x0079,0x0068,0x0079,0x0041,0x0061,0x0041,0x0061,0x0041,0x0061,0x0043,0x0063,0x0043,0x0063,0x0043,
|
||||
<a name="l00230"></a>00230 0x0063,0x0043,0x0063,0x0044,0x0064,0x0044,0x0064,0x0045,0x0065,0x0045,0x0065,0x0045,0x0065,0x0045,0x0065,0x0045,
|
||||
<a name="l00231"></a>00231 0x0065,0x0047,0x0067,0x0047,0x0067,0x0047,0x0067,0x0047,0x0067,0x0048,0x0068,0x0048,0x0068,0x0049,0x0069,0x0049,
|
||||
<a name="l00232"></a>00232 0x0069,0x0049,0x0069,0x0049,0x0069,0x0049,0x002E,0x004A,0x006A,0x004B,0x006B,0x006B,0x004C,0x006C,0x004C,0x006C,
|
||||
<a name="l00233"></a>00233 0x004C,0x006C,0x004C,0x006C,0x004E,0x006E,0x004E,0x006E,0x004E,0x006E,0x0047,0x0067,0x004F,0x006F,0x004F,0x006F,
|
||||
<a name="l00234"></a>00234 0x004F,0x006F,0x0045,0x0065,0x0052,0x0072,0x0052,0x0072,0x0052,0x0072,0x0053,0x0073,0x0053,0x0073,0x0053,0x0073,
|
||||
<a name="l00235"></a>00235 0x0053,0x0073,0x0054,0x0074,0x0054,0x0074,0x0054,0x0074,0x0055,0x0075,0x0055,0x0075,0x0055,0x0075,0x0055,0x0075,
|
||||
<a name="l00236"></a>00236 0x0055,0x0075,0x0055,0x0075,0x0057,0x0077,0x0059,0x0079,0x0059,0x005A,0x007A,0x005A,0x007A,0x005A,0x007A,0x0053,
|
||||
<a name="l00237"></a>00237 0x0062,0x0049,0x004F,0x006F,0x0055,0x0075,0x005A,0x007A,0x0041,0x0061,0x0049,0x0069,0x004F,0x006F,0x0055,0x0075,
|
||||
<a name="l00238"></a>00238 0x00DC,0x00FC,0x00DC,0x00FC,0x00DC,0x00FC,0x00DC,0x00FC,0x00C4,0x00E4,0x0226,0x0227,0x00C6,0x00E6,0x0047,0x0067,
|
||||
<a name="l00239"></a>00239 0x0047,0x0067,0x004B,0x006B,0x004F,0x006F,0x01EA,0x01EB,0x01B7,0x0292,0x006A,0x0047,0x0067,0x004E,0x006E,0x00C5,
|
||||
<a name="l00240"></a>00240 0x00E5,0x00C6,0x00E6,0x00D8,0x00F8,0x0048,0x0068,0x0041,0x0061,0x0045,0x0065,0x00D6,0x00F6,0x00D5,0x00F5,0x004F,
|
||||
<a name="l00241"></a>00241 0x006F,0x022E,0x022F,0x0059,0x0079,0x0065,0x0069,0x0294,0x0027,0x0027,0x0391,0x0395,0x0397,0x0399,0x039F,0x03A5,
|
||||
<a name="l00242"></a>00242 0x03A9,0x03CA,0x0399,0x03A5,0x03B1,0x03B5,0x03B7,0x03B9,0x03CB,0x03B9,0x03C5,0x03BF,0x03C5,0x03C9,0x03D2,0x0415,
|
||||
<a name="l00243"></a>00243 0x0415,0x0413,0x0406,0x041A,0x0418,0x0423,0x0418,0x0438,0x0435,0x0435,0x0433,0x0456,0x043A,0x0438,0x0443,0x0413,
|
||||
<a name="l00244"></a>00244 0x0433,0x041A,0x043A,0x04AE,0x04AF,0x0416,0x0436,0x0410,0x0430,0x0410,0x0430,0x0415,0x0435,0x04D8,0x04D9,0x0416,
|
||||
<a name="l00245"></a>00245 0x0436,0x0417,0x0437,0x0418,0x0438,0x0418,0x0438,0x041E,0x043E,0x04E8,0x04E9,0x042D,0x044D,0x0423,0x0443,0x0423,
|
||||
<a name="l00246"></a>00246 0x0443,0x0423,0x0443,0x0427,0x0447,0x042B,0x044B,0x0627,0x0627,0x0648,0x0627,0x064A,0x06D5,0x06C1,0x06D2,0x0928,
|
||||
<a name="l00247"></a>00247 0x0930,0x0933,0x0915,0x0916,0x0917,0x091C,0x0921,0x0922,0x092B,0x092F,0x09BE,0x09D7,0x09A1,0x09A2,0x09AF,0x0A32,
|
||||
<a name="l00248"></a>00248 0x0A38,0x0A16,0x0A17,0x0A1C,0x0A2B,0x0B56,0x0B3E,0x0B57,0x0B21,0x0B22,0x0B92,0x0BBE,0x0BBE,0x0BD7,0x0C56,0x0CD5,
|
||||
<a name="l00249"></a>00249 0x0CD5,0x0CD6,0x0CC2,0x0CD5,0x0D3E,0x0D3E,0x0D57,0x0DCA,0x0DCF,0x0DCA,0x0DDF,0x0F42,0x0F4C,0x0F51,0x0F56,0x0F5B,
|
||||
<a name="l00250"></a>00250 0x0F40,0x0F72,0x0F74,0x0F80,0x0F80,0x0F80,0x0FB7,0x0FB7,0x0FB7,0x0FB7,0x0FB7,0x0FB5,0x1025,0x1100,0x1103,0x1107,
|
||||
<a name="l00251"></a>00251 0x1109,0x110C,0x1100,0x1102,0x1103,0x1107,0x1100,0x1102,0x1105,0x1112,0x110B,0x1107,0x110B,0x1100,0x1102,0x1103,
|
||||
<a name="l00252"></a>00252 0x1109,0x112D,0x112F,0x1132,0x110A,0x1136,0x110C,0x110E,0x1110,0x1111,0x110B,0x112B,0x1100,0x1102,0x1103,0x1105,
|
||||
<a name="l00253"></a>00253 0x1106,0x1107,0x111E,0x110A,0x110B,0x110C,0x110E,0x110F,0x1110,0x1111,0x1112,0x113C,0x113E,0x1100,0x1103,0x1106,
|
||||
<a name="l00254"></a>00254 0x1107,0x1109,0x1140,0x110B,0x110C,0x110E,0x1110,0x1111,0x110B,0x114E,0x1150,0x110F,0x1112,0x1107,0x110B,0x1112,
|
||||
<a name="l00255"></a>00255 0x1175,0x1175,0x1175,0x1175,0x1161,0x1162,0x1175,0x1165,0x1166,0x1175,0x1175,0x1169,0x116E,0x1169,0x116D,0x1169,
|
||||
<a name="l00256"></a>00256 0x116E,0x1173,0x1169,0x116E,0x1165,0x1166,0x1168,0x1169,0x116E,0x1163,0x1164,0x1167,0x1169,0x1175,0x1161,0x1162,
|
||||
<a name="l00257"></a>00257 0x117C,0x1168,0x116E,0x1161,0x1165,0x1166,0x1167,0x1168,0x116E,0x1175,0x116E,0x1173,0x116E,0x1161,0x1163,0x1169,
|
||||
<a name="l00258"></a>00258 0x116E,0x1173,0x119E,0x1165,0x116E,0x1175,0x119E,0x11A8,0x11BA,0x11BD,0x11C2,0x11A8,0x11B7,0x11B8,0x11BA,0x11C0,
|
||||
<a name="l00259"></a>00259 0x11C1,0x11C2,0x11BA,0x11BA,0x11AF,0x11E7,0x11A8,0x11AE,0x11BA,0x11EB,0x11C0,0x11A8,0x11AF,0x11AA,0x11AB,0x11AE,
|
||||
<a name="l00260"></a>00260 0x11C2,0x11AF,0x11DA,0x11DD,0x11B9,0x11E5,0x11E6,0x11BB,0x11EB,0x11BF,0x11F9,0x11A8,0x11AF,0x11B8,0x11BA,0x11BB,
|
||||
<a name="l00261"></a>00261 0x11EB,0x11BE,0x11C2,0x11BC,0x11AF,0x11C1,0x11C2,0x11BC,0x11A8,0x11AE,0x11AF,0x11B8,0x11A8,0x11A9,0x11BC,0x11BF,
|
||||
<a name="l00262"></a>00262 0x11BA,0x11EB,0x11B8,0x11BC,0x11AB,0x11AF,0x11B7,0x11B8,0x0042,0x0062,0x0042,0x0062,0x00C7,0x00E7,0x0044,0x0064,
|
||||
<a name="l00263"></a>00263 0x0044,0x0064,0x0044,0x0064,0x0112,0x0113,0x0112,0x0113,0x0228,0x0229,0x0046,0x0066,0x0047,0x0067,0x0048,0x0068,
|
||||
<a name="l00264"></a>00264 0x0048,0x0068,0x0048,0x0068,0x0048,0x0068,0x00CF,0x00EF,0x004B,0x006B,0x004B,0x006B,0x004C,0x006C,0x1E36,0x1E37,
|
||||
<a name="l00265"></a>00265 0x004D,0x006D,0x004D,0x006D,0x004D,0x006D,0x004E,0x006E,0x004E,0x006E,0x00D5,0x00F5,0x00D5,0x00F5,0x014C,0x014D,
|
||||
<a name="l00266"></a>00266 0x014C,0x014D,0x0050,0x0070,0x0050,0x0070,0x0052,0x0072,0x0052,0x0072,0x1E5A,0x1E5B,0x0053,0x0073,0x0053,0x0073,
|
||||
<a name="l00267"></a>00267 0x015A,0x015B,0x0160,0x0161,0x1E62,0x1E63,0x0054,0x0074,0x0054,0x0074,0x0168,0x0169,0x016A,0x016B,0x0056,0x0076,
|
||||
<a name="l00268"></a>00268 0x0056,0x0076,0x0057,0x0077,0x0057,0x0077,0x0057,0x0077,0x0057,0x0077,0x0057,0x0077,0x0058,0x0078,0x0058,0x0078,
|
||||
<a name="l00269"></a>00269 0x0059,0x0079,0x005A,0x007A,0x005A,0x007A,0x0074,0x0077,0x0079,0x017F,0x0041,0x0061,0x0041,0x0061,0x00C2,0x00E2,
|
||||
<a name="l00270"></a>00270 0x00C2,0x00E2,0x00C2,0x00E2,0x00C2,0x00E2,0x1EA0,0x1EA1,0x0102,0x0103,0x0102,0x0103,0x0102,0x0103,0x0102,0x0103,
|
||||
<a name="l00271"></a>00271 0x1EA0,0x1EA1,0x0045,0x0065,0x0045,0x0065,0x0045,0x0065,0x00CA,0x00EA,0x00CA,0x00EA,0x00CA,0x00EA,0x00CA,0x00EA,
|
||||
<a name="l00272"></a>00272 0x1EB8,0x1EB9,0x0049,0x0069,0x0049,0x0069,0x004F,0x006F,0x004F,0x006F,0x00D4,0x00F4,0x00D4,0x00F4,0x00D4,0x00F4,
|
||||
<a name="l00273"></a>00273 0x00D4,0x00F4,0x1ECC,0x1ECD,0x01A0,0x01A1,0x01A0,0x01A1,0x01A0,0x01A1,0x01A0,0x01A1,0x01A0,0x01A1,0x0055,0x0075,
|
||||
<a name="l00274"></a>00274 0x0055,0x0075,0x01AF,0x01B0,0x01AF,0x01B0,0x01AF,0x01B0,0x01AF,0x01B0,0x01AF,0x01B0,0x0059,0x0079,0x0059,0x0079,
|
||||
<a name="l00275"></a>00275 0x0059,0x0079,0x0059,0x0079,0x03B1,0x03B1,0x1F00,0x1F01,0x1F00,0x1F01,0x1F00,0x1F01,0x0391,0x0391,0x1F08,0x1F09,
|
||||
<a name="l00276"></a>00276 0x1F08,0x1F09,0x1F08,0x1F09,0x03B5,0x03B5,0x1F10,0x1F11,0x1F10,0x1F11,0x0395,0x0395,0x1F18,0x1F19,0x1F18,0x1F19,
|
||||
<a name="l00277"></a>00277 0x03B7,0x03B7,0x1F20,0x1F21,0x1F20,0x1F21,0x1F20,0x1F21,0x0397,0x0397,0x1F28,0x1F29,0x1F28,0x1F29,0x1F28,0x1F29,
|
||||
<a name="l00278"></a>00278 0x03B9,0x03B9,0x1F30,0x1F31,0x1F30,0x1F31,0x1F30,0x1F31,0x0399,0x0399,0x1F38,0x1F39,0x1F38,0x1F39,0x1F38,0x1F39,
|
||||
<a name="l00279"></a>00279 0x03BF,0x03BF,0x1F40,0x1F41,0x1F40,0x1F41,0x039F,0x039F,0x1F48,0x1F49,0x1F48,0x1F49,0x03C5,0x03C5,0x1F50,0x1F51,
|
||||
<a name="l00280"></a>00280 0x1F50,0x1F51,0x1F50,0x1F51,0x03A5,0x1F59,0x1F59,0x1F59,0x03C9,0x03C9,0x1F60,0x1F61,0x1F60,0x1F61,0x1F60,0x1F61,
|
||||
<a name="l00281"></a>00281 0x03A9,0x03A9,0x1F68,0x1F69,0x1F68,0x1F69,0x1F68,0x1F69,0x03B1,0x03B5,0x03B7,0x03B9,0x03BF,0x03C5,0x03C9,0x1F00,
|
||||
<a name="l00282"></a>00282 0x1F01,0x1F02,0x1F03,0x1F04,0x1F05,0x1F06,0x1F07,0x1F08,0x1F09,0x1F0A,0x1F0B,0x1F0C,0x1F0D,0x1F0E,0x1F0F,0x1F20,
|
||||
<a name="l00283"></a>00283 0x1F21,0x1F22,0x1F23,0x1F24,0x1F25,0x1F26,0x1F27,0x1F28,0x1F29,0x1F2A,0x1F2B,0x1F2C,0x1F2D,0x1F2E,0x1F2F,0x1F60,
|
||||
<a name="l00284"></a>00284 0x1F61,0x1F62,0x1F63,0x1F64,0x1F65,0x1F66,0x1F67,0x1F68,0x1F69,0x1F6A,0x1F6B,0x1F6C,0x1F6D,0x1F6E,0x1F6F,0x03B1,
|
||||
<a name="l00285"></a>00285 0x03B1,0x1F70,0x03B1,0x03AC,0x03B1,0x1FB6,0x0391,0x0391,0x0391,0x0391,0x007E,0x1F74,0x03B7,0x03AE,0x03B7,0x1FC6,
|
||||
<a name="l00286"></a>00286 0x0395,0x0397,0x0397,0x0060,0x0027,0x007E,0x03B9,0x03B9,0x03CA,0x03B9,0x03CA,0x0399,0x0399,0x0399,0x0060,0x0027,
|
||||
<a name="l00287"></a>00287 0x007E,0x03C5,0x03C5,0x03CB,0x03C1,0x03C1,0x03C5,0x03CB,0x03A5,0x03A5,0x03A5,0x03A1,0x0060,0x1F7C,0x03C9,0x03CE,
|
||||
<a name="l00288"></a>00288 0x03C9,0x1FF6,0x039F,0x03A9,0x03A9,0x002E,0x003C,0x003E,0x002C,0x003C,0x003E,0x002C,0x003D,0x002E,0x006F,0x003C,
|
||||
<a name="l00289"></a>00289 0x003E,0x003F,0x0030,0x0034,0x0035,0x0036,0x0037,0x0038,0x0039,0x002B,0x2212,0x003D,0x0028,0x0029,0x0030,0x0031,
|
||||
<a name="l00290"></a>00290 0x0032,0x0033,0x0034,0x0035,0x0036,0x0037,0x0038,0x0039,0x002B,0x2212,0x003D,0x0028,0x0029,0x0045,0x0043,0x0072,
|
||||
<a name="l00291"></a>00291 0x0072,0x004C,0x006D,0x004E,0x0074,0x0073,0x0057,0x002D,0x0415,0x041E,0x006D,0x006D,0x2190,0x2192,0x2194,0x0338,
|
||||
<a name="l00292"></a>00292 0x0338,0x0338,0x0338,0x0338,0x0338,0x0338,0x0338,0x0338,0x0338,0x0338,0x0338,0x0338,0x0338,0x0338,0x0338,0x0338,
|
||||
<a name="l00293"></a>00293 0x0338,0x0338,0x0338,0x0338,0x0338,0x0338,0x0338,0x0338,0x0338,0x0338,0x0338,0x0338,0x0338,0x0338,0x0338,0x0338,
|
||||
<a name="l00294"></a>00294 0x0338,0x0338,0x0338,0x0338,0x0338,0x0062,0x0066,0x0023,0x0338,0x005C,0x002F,0x4E00,0x4E8C,0x4E09,0x56DB,0x4E0A,
|
||||
<a name="l00295"></a>00295 0x4E2D,0x4E0B,0x7532,0x4E59,0x4E19,0x4E01,0x5929,0x5730,0x4EBA,0x05D9,0x05F2,0x05E9,0x05E9,0xFB49,0xFB49,0x05D0,
|
||||
<a name="l00296"></a>00296 0x05D0,0x05D0,0x05D1,0x05D2,0x05D3,0x05D4,0x05D5,0x05D6,0x05D8,0x05D9,0x05DA,0x05DB,0x05DC,0x05DE,0x05E0,0x05E1,
|
||||
<a name="l00297"></a>00297 0x05E3,0x05E4,0x05E6,0x05E7,0x05E8,0x05E9,0x05EA,0x05D5,0x05D1,0x05DB,0x05E4
|
||||
<a name="l00298"></a>00298 };
|
||||
</pre></div><hr size="1"><address style="align: right;"><small>Generated on Tue Jul 17 12:19:00 2012 for libcvautomation by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|