summaryrefslogtreecommitdiffhomepage
path: root/eyeware-beam-sdk/docs/api_reference.html
diff options
context:
space:
mode:
Diffstat (limited to 'eyeware-beam-sdk/docs/api_reference.html')
-rw-r--r--eyeware-beam-sdk/docs/api_reference.html619
1 files changed, 619 insertions, 0 deletions
diff --git a/eyeware-beam-sdk/docs/api_reference.html b/eyeware-beam-sdk/docs/api_reference.html
new file mode 100644
index 0000000..7e4229a
--- /dev/null
+++ b/eyeware-beam-sdk/docs/api_reference.html
@@ -0,0 +1,619 @@
+
+
+<!DOCTYPE html>
+<html class="writer-html5" lang="en" >
+<head>
+ <meta charset="utf-8" />
+
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+
+ <title>API reference &mdash; Beam SDK 1.1.0 documentation</title>
+
+
+
+ <link rel="stylesheet" href="_static/css/theme.css" type="text/css" />
+ <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" href="_static/css/theme.css" type="text/css" />
+
+
+
+
+
+
+
+
+
+
+ <!--[if lt IE 9]>
+ <script src="_static/js/html5shiv.min.js"></script>
+ <![endif]-->
+
+
+ <script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
+ <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
+ <script src="_static/jquery.js"></script>
+ <script src="_static/underscore.js"></script>
+ <script src="_static/doctools.js"></script>
+
+ <script type="text/javascript" src="_static/js/theme.js"></script>
+
+
+ <link rel="index" title="Index" href="genindex.html" />
+ <link rel="search" title="Search" href="search.html" />
+ <link rel="next" title="Redistributing a Beam client application" href="redistribution.html" />
+ <link rel="prev" title="API overview" href="api_overview.html" />
+</head>
+
+<body class="wy-body-for-nav">
+
+
+ <div class="wy-grid-for-nav">
+
+ <nav data-toggle="wy-nav-shift" class="wy-nav-side">
+ <div class="wy-side-scroll">
+ <div class="wy-side-nav-search" style="background: #48447E" >
+
+
+
+ <a href="index.html" class="icon icon-home"> Beam SDK
+
+
+
+ </a>
+
+
+
+
+ <div class="version">
+ 1.1.0
+ </div>
+
+
+
+
+<div role="search">
+ <form id="rtd-search-form" class="wy-form" action="search.html" method="get">
+ <input type="text" name="q" placeholder="Search docs" />
+ <input type="hidden" name="check_keywords" value="yes" />
+ <input type="hidden" name="area" value="default" />
+ </form>
+</div>
+
+
+ </div>
+
+
+ <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
+
+
+
+
+
+
+ <p class="caption" role="heading"><span class="caption-text">Contents:</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="introduction.html">Introduction</a></li>
+<li class="toctree-l1"><a class="reference internal" href="getting_started.html">Getting started</a></li>
+<li class="toctree-l1"><a class="reference internal" href="api_overview.html">API overview</a></li>
+<li class="toctree-l1 current"><a class="current reference internal" href="#">API reference</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="#c">C++</a></li>
+<li class="toctree-l2"><a class="reference internal" href="#python">Python</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="redistribution.html">Redistributing a Beam client application</a></li>
+</ul>
+
+
+
+ </div>
+
+ </div>
+ </nav>
+
+ <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
+
+
+ <nav class="wy-nav-top" aria-label="top navigation">
+
+ <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
+ <a href="index.html">Beam SDK</a>
+
+ </nav>
+
+
+ <div class="wy-nav-content">
+
+ <div class="rst-content">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<div role="navigation" aria-label="breadcrumbs navigation">
+
+ <ul class="wy-breadcrumbs">
+
+ <li><a href="index.html" class="icon icon-home"></a> &raquo;</li>
+
+ <li>API reference</li>
+
+
+ <li class="wy-breadcrumbs-aside">
+
+
+ <a href="_sources/api_reference.rst.txt" rel="nofollow"> View page source</a>
+
+
+ </li>
+
+ </ul>
+
+
+ <hr/>
+</div>
+ <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
+ <div itemprop="articleBody">
+
+ <div class="toctree-wrapper compound">
+</div>
+<div class="section" id="api-reference">
+<h1>API reference<a class="headerlink" href="#api-reference" title="Permalink to this headline">¶</a></h1>
+<div class="section" id="c">
+<h2>C++<a class="headerlink" href="#c" title="Permalink to this headline">¶</a></h2>
+<dl class="cpp class">
+<dt class="sig sig-object cpp" id="_CPPv4N7eyeware13TrackerClientE">
+<span id="_CPPv3N7eyeware13TrackerClientE"></span><span id="_CPPv2N7eyeware13TrackerClientE"></span><span id="eyeware::TrackerClient"></span><span class="target" id="classeyeware_1_1_tracker_client"></span><span class="k"><span class="pre">class</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">eyeware</span></span><span class="p"><span class="pre">::</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">TrackerClient</span></span></span><a class="headerlink" href="#_CPPv4N7eyeware13TrackerClientE" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Class for connecting to the tracker server and retrieving its resulting tracking data.</p>
+<p>It establishes communication to the tracker server (Eyeware Beam application) and provides synchronous access to the data. Those synchronous calls will return the last tracking data results received from the server.</p>
+<p>A <code class="docutils literal notranslate"><span class="pre">network_error_handler</span></code> callback can be provided. If <code class="docutils literal notranslate"><span class="pre">nullptr</span></code> is used (default), the network errors are ignored and the network connection is reestablished automatically when possible by the <a class="reference internal" href="#classeyeware_1_1_tracker_client"><span class="std std-ref">TrackerClient</span></a> class instance. If a network handler is given, it will be called in case of errors (e.g., timeout). In such case, the <a class="reference internal" href="#classeyeware_1_1_tracker_client"><span class="std std-ref">TrackerClient</span></a> instance becomes invalid and needs to be recreated to reestablish connection. </p>
+<div class="breathe-sectiondef docutils container">
+<p class="breathe-sectiondef-title rubric" id="breathe-section-title-public-functions">Public Functions</p>
+<dl class="cpp function">
+<dt class="sig sig-object cpp" id="_CPPv4N7eyeware13TrackerClient13TrackerClientENSt8functionIFvRK12NetworkErrorEEEiiiPKc">
+<span id="_CPPv3N7eyeware13TrackerClient13TrackerClientENSt8functionIFvRK12NetworkErrorEEEiiiPKc"></span><span id="_CPPv2N7eyeware13TrackerClient13TrackerClientENSt8functionIFvRK12NetworkErrorEEEiiiPKc"></span><span class="target" id="classeyeware_1_1_tracker_client_1aefe73572784c73cf092d8f5bdf86c429"></span><span class="sig-name descname"><span class="n"><span class="pre">TrackerClient</span></span></span><span class="sig-paren">(</span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">function</span></span><span class="p"><span class="pre">&lt;</span></span><span class="kt"><span class="pre">void</span></span><span class="p"><span class="pre">(</span></span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">NetworkError</span></span><span class="p"><span class="pre">&amp;</span></span><span class="p"><span class="pre">)</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">network_error_handler</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="k"><span class="pre">nullptr</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">network_connection_timeout_ms</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="n"><span class="pre">DEFAULT_NETWORK_TIMEOUTS_IN_MS</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">tracking_info_network_timeout_ms</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="n"><span class="pre">DEFAULT_NETWORK_TIMEOUTS_IN_MS</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">base_communication_port</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="n"><span class="pre">DEFAULT_BASE_COMMUNICATION_PORT</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="kt"><span class="pre">char</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n sig-param"><span class="pre">hostname</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="s"><span class="pre">&quot;127.0.0.1&quot;</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N7eyeware13TrackerClient13TrackerClientENSt8functionIFvRK12NetworkErrorEEEiiiPKc" title="Permalink to this definition">¶</a><br /></dt>
+<dd><dl class="field-list simple">
+<dt class="field-odd">Parameters</dt>
+<dd class="field-odd"><ul class="simple">
+<li><p><strong>network_error_handler</strong> – An optional callback function for managing connection to the server errors. </p></li>
+<li><p><strong>network_connection_timeout_ms</strong> – The time period (in ms) for an attempt to connect to the server, after which the network connection is treated as broken. </p></li>
+<li><p><strong>tracking_info_network_timeout_ms</strong> – The time period (in ms) for an attempt to obtain tracking info from the server, after which the network connection is treated as broken. </p></li>
+<li><p><strong>base_communication_port</strong> – Base connection port to the server. The instance may use base_communication_port+1 as well. </p></li>
+<li><p><strong>hostname</strong> – The hostname of the server to obtain tracking results from. Typically the same PC, thus “127.0.0.1”. </p></li>
+</ul>
+</dd>
+</dl>
+</dd></dl>
+
+<dl class="cpp function">
+<dt class="sig sig-object cpp" id="_CPPv4NK7eyeware13TrackerClient20get_screen_gaze_infoEv">
+<span id="_CPPv3NK7eyeware13TrackerClient20get_screen_gaze_infoEv"></span><span id="_CPPv2NK7eyeware13TrackerClient20get_screen_gaze_infoEv"></span><span id="eyeware::TrackerClient::get_screen_gaze_infoC"></span><span class="target" id="classeyeware_1_1_tracker_client_1a025aeeb10f2d88a9bfc08b2d6dd3f1f6"></span><a class="reference internal" href="#_CPPv4N7eyeware14ScreenGazeInfoE" title="eyeware::ScreenGazeInfo"><span class="n"><span class="pre">ScreenGazeInfo</span></span></a><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">get_screen_gaze_info</span></span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK7eyeware13TrackerClient20get_screen_gaze_infoEv" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Retrieves the most recent screen gaze tracking result. </p>
+</dd></dl>
+
+<dl class="cpp function">
+<dt class="sig sig-object cpp" id="_CPPv4NK7eyeware13TrackerClient18get_head_pose_infoEv">
+<span id="_CPPv3NK7eyeware13TrackerClient18get_head_pose_infoEv"></span><span id="_CPPv2NK7eyeware13TrackerClient18get_head_pose_infoEv"></span><span id="eyeware::TrackerClient::get_head_pose_infoC"></span><span class="target" id="classeyeware_1_1_tracker_client_1ab63d66b99442845116e09fbdbe6f26c8"></span><a class="reference internal" href="#_CPPv4N7eyeware12HeadPoseInfoE" title="eyeware::HeadPoseInfo"><span class="n"><span class="pre">HeadPoseInfo</span></span></a><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">get_head_pose_info</span></span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK7eyeware13TrackerClient18get_head_pose_infoEv" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Retrieves the most recent head pose tracking result. </p>
+</dd></dl>
+
+<dl class="cpp function">
+<dt class="sig sig-object cpp" id="_CPPv4NK7eyeware13TrackerClient9connectedEv">
+<span id="_CPPv3NK7eyeware13TrackerClient9connectedEv"></span><span id="_CPPv2NK7eyeware13TrackerClient9connectedEv"></span><span id="eyeware::TrackerClient::connectedC"></span><span class="target" id="classeyeware_1_1_tracker_client_1a4638f8235d523abf1edf81eff1c089af"></span><span class="kt"><span class="pre">bool</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">connected</span></span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK7eyeware13TrackerClient9connectedEv" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Whether this client is currently connected to the tracker server or not.</p>
+<p><dl class="simple">
+<dt><strong>Since</strong></dt><dd><p>1.1.0 </p>
+</dd>
+</dl>
+</p>
+</dd></dl>
+
+</div>
+</dd></dl>
+
+<dl class="cpp struct">
+<dt class="sig sig-object cpp" id="_CPPv4N7eyeware12HeadPoseInfoE">
+<span id="_CPPv3N7eyeware12HeadPoseInfoE"></span><span id="_CPPv2N7eyeware12HeadPoseInfoE"></span><span id="eyeware::HeadPoseInfo"></span><span class="target" id="structeyeware_1_1_head_pose_info"></span><span class="k"><span class="pre">struct</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">eyeware</span></span><span class="p"><span class="pre">::</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">HeadPoseInfo</span></span></span><a class="headerlink" href="#_CPPv4N7eyeware12HeadPoseInfoE" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Represents information of the head pose, for a given time instant. </p>
+<div class="breathe-sectiondef docutils container">
+<p class="breathe-sectiondef-title rubric" id="breathe-section-title-public-members">Public Members</p>
+<dl class="cpp var">
+<dt class="sig sig-object cpp" id="_CPPv4N7eyeware12HeadPoseInfo9transformE">
+<span id="_CPPv3N7eyeware12HeadPoseInfo9transformE"></span><span id="_CPPv2N7eyeware12HeadPoseInfo9transformE"></span><span id="eyeware::HeadPoseInfo::transform__AffineTransform3D"></span><span class="target" id="structeyeware_1_1_head_pose_info_1a8f1e2a9408649e40ea587294862c1ccb"></span><a class="reference internal" href="#_CPPv4N7eyeware17AffineTransform3DE" title="eyeware::AffineTransform3D"><span class="n"><span class="pre">AffineTransform3D</span></span></a><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">transform</span></span></span><a class="headerlink" href="#_CPPv4N7eyeware12HeadPoseInfo9transformE" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Head pose, defined at the nose tip, with respect to the World Coordinate System (WCS). </p>
+</dd></dl>
+
+<dl class="cpp var">
+<dt class="sig sig-object cpp" id="_CPPv4N7eyeware12HeadPoseInfo7is_lostE">
+<span id="_CPPv3N7eyeware12HeadPoseInfo7is_lostE"></span><span id="_CPPv2N7eyeware12HeadPoseInfo7is_lostE"></span><span id="eyeware::HeadPoseInfo::is_lost__b"></span><span class="target" id="structeyeware_1_1_head_pose_info_1a18dcb2d80d1d3fddd4491a2bc416a596"></span><span class="kt"><span class="pre">bool</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">is_lost</span></span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="k"><span class="pre">true</span></span><a class="headerlink" href="#_CPPv4N7eyeware12HeadPoseInfo7is_lostE" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Indicates if tracking of the head is lost, i.e., if false, the user is not being tracked. </p>
+</dd></dl>
+
+<dl class="cpp var">
+<dt class="sig sig-object cpp" id="_CPPv4N7eyeware12HeadPoseInfo17track_session_uidE">
+<span id="_CPPv3N7eyeware12HeadPoseInfo17track_session_uidE"></span><span id="_CPPv2N7eyeware12HeadPoseInfo17track_session_uidE"></span><span id="eyeware::HeadPoseInfo::track_session_uid__uint64_t"></span><span class="target" id="structeyeware_1_1_head_pose_info_1a39166d56f6c26ee84eaab1b3719c3b17"></span><span class="n"><span class="pre">uint64_t</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">track_session_uid</span></span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="m"><span class="pre">0</span></span><a class="headerlink" href="#_CPPv4N7eyeware12HeadPoseInfo17track_session_uidE" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Indicates the ID of the session of uninterrupted consecutive tracking. </p>
+</dd></dl>
+
+</div>
+</dd></dl>
+
+<dl class="cpp struct">
+<dt class="sig sig-object cpp" id="_CPPv4N7eyeware14ScreenGazeInfoE">
+<span id="_CPPv3N7eyeware14ScreenGazeInfoE"></span><span id="_CPPv2N7eyeware14ScreenGazeInfoE"></span><span id="eyeware::ScreenGazeInfo"></span><span class="target" id="structeyeware_1_1_screen_gaze_info"></span><span class="k"><span class="pre">struct</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">eyeware</span></span><span class="p"><span class="pre">::</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">ScreenGazeInfo</span></span></span><a class="headerlink" href="#_CPPv4N7eyeware14ScreenGazeInfoE" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Represents information of a person gaze intersection with a single screen, for a given time instant. Screen gaze coordinates are expressed in pixels with respect to the top-left corner of the screen. </p>
+<div class="breathe-sectiondef docutils container">
+<p class="breathe-sectiondef-title rubric" id="breathe-section-title-public-members">Public Members</p>
+<dl class="cpp var">
+<dt class="sig sig-object cpp" id="_CPPv4N7eyeware14ScreenGazeInfo9screen_idE">
+<span id="_CPPv3N7eyeware14ScreenGazeInfo9screen_idE"></span><span id="_CPPv2N7eyeware14ScreenGazeInfo9screen_idE"></span><span id="eyeware::ScreenGazeInfo::screen_id__uint32_t"></span><span class="target" id="structeyeware_1_1_screen_gaze_info_1ad427676f590efdc0cd82ad41639e5fef"></span><span class="n"><span class="pre">uint32_t</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">screen_id</span></span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="m"><span class="pre">0</span></span><a class="headerlink" href="#_CPPv4N7eyeware14ScreenGazeInfo9screen_idE" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>ID of the screen, to differentiate in case of a multiscreen setup. </p>
+</dd></dl>
+
+<dl class="cpp var">
+<dt class="sig sig-object cpp" id="_CPPv4N7eyeware14ScreenGazeInfo1xE">
+<span id="_CPPv3N7eyeware14ScreenGazeInfo1xE"></span><span id="_CPPv2N7eyeware14ScreenGazeInfo1xE"></span><span id="eyeware::ScreenGazeInfo::x__uint32_t"></span><span class="target" id="structeyeware_1_1_screen_gaze_info_1aba0e75218ac2f19c5604f954c036a822"></span><span class="n"><span class="pre">uint32_t</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">x</span></span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="m"><span class="pre">0</span></span><a class="headerlink" href="#_CPPv4N7eyeware14ScreenGazeInfo1xE" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>The horizontal screen coordinate for the gaze intersection. </p>
+</dd></dl>
+
+<dl class="cpp var">
+<dt class="sig sig-object cpp" id="_CPPv4N7eyeware14ScreenGazeInfo1yE">
+<span id="_CPPv3N7eyeware14ScreenGazeInfo1yE"></span><span id="_CPPv2N7eyeware14ScreenGazeInfo1yE"></span><span id="eyeware::ScreenGazeInfo::y__uint32_t"></span><span class="target" id="structeyeware_1_1_screen_gaze_info_1ae1f63dc0829b0acb65bb0f0ac176eeb3"></span><span class="n"><span class="pre">uint32_t</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">y</span></span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="m"><span class="pre">0</span></span><a class="headerlink" href="#_CPPv4N7eyeware14ScreenGazeInfo1yE" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>The vertical screen coordinate for the gaze intersection. </p>
+</dd></dl>
+
+<dl class="cpp var">
+<dt class="sig sig-object cpp" id="_CPPv4N7eyeware14ScreenGazeInfo10confidenceE">
+<span id="_CPPv3N7eyeware14ScreenGazeInfo10confidenceE"></span><span id="_CPPv2N7eyeware14ScreenGazeInfo10confidenceE"></span><span id="eyeware::ScreenGazeInfo::confidence__TrackingConfidence"></span><span class="target" id="structeyeware_1_1_screen_gaze_info_1ac21d4b6d7736207e0fa6beee8060583f"></span><a class="reference internal" href="#_CPPv4N7eyeware18TrackingConfidenceE" title="eyeware::TrackingConfidence"><span class="n"><span class="pre">TrackingConfidence</span></span></a><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">confidence</span></span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><a class="reference internal" href="#_CPPv4N7eyeware18TrackingConfidenceE" title="eyeware::TrackingConfidence"><span class="n"><span class="pre">TrackingConfidence</span></span></a><span class="p"><span class="pre">::</span></span><a class="reference internal" href="#_CPPv4N7eyeware18TrackingConfidence10UNRELIABLEE" title="eyeware::TrackingConfidence::UNRELIABLE"><span class="n"><span class="pre">UNRELIABLE</span></span></a><a class="headerlink" href="#_CPPv4N7eyeware14ScreenGazeInfo10confidenceE" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>The confidence of the tracking result. </p>
+</dd></dl>
+
+<dl class="cpp var">
+<dt class="sig sig-object cpp" id="_CPPv4N7eyeware14ScreenGazeInfo7is_lostE">
+<span id="_CPPv3N7eyeware14ScreenGazeInfo7is_lostE"></span><span id="_CPPv2N7eyeware14ScreenGazeInfo7is_lostE"></span><span id="eyeware::ScreenGazeInfo::is_lost__b"></span><span class="target" id="structeyeware_1_1_screen_gaze_info_1a15c0c134c265dc146f04322978ae7321"></span><span class="kt"><span class="pre">bool</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">is_lost</span></span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="k"><span class="pre">true</span></span><a class="headerlink" href="#_CPPv4N7eyeware14ScreenGazeInfo7is_lostE" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Tracking status that tells if the other values are dependable. </p>
+</dd></dl>
+
+</div>
+</dd></dl>
+
+<dl class="cpp enum">
+<dt class="sig sig-object cpp" id="_CPPv4N7eyeware18TrackingConfidenceE">
+<span id="_CPPv3N7eyeware18TrackingConfidenceE"></span><span id="_CPPv2N7eyeware18TrackingConfidenceE"></span><span class="target" id="namespaceeyeware_1a097388946959c7c0b8aa1ca8fb136377"></span><span class="k"><span class="pre">enum</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">eyeware</span></span><span class="p"><span class="pre">::</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">TrackingConfidence</span></span></span><a class="headerlink" href="#_CPPv4N7eyeware18TrackingConfidenceE" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Realibility measure for obtained tracking results. </p>
+<p><em>Values:</em></p>
+<dl class="cpp enumerator">
+<dt class="sig sig-object cpp" id="_CPPv4N7eyeware18TrackingConfidence10UNRELIABLEE">
+<span id="_CPPv3N7eyeware18TrackingConfidence10UNRELIABLEE"></span><span id="_CPPv2N7eyeware18TrackingConfidence10UNRELIABLEE"></span><span class="target" id="namespaceeyeware_1a097388946959c7c0b8aa1ca8fb136377a6e257e645974b9086ed66e9465e2d80c"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">UNRELIABLE</span></span></span><a class="headerlink" href="#_CPPv4N7eyeware18TrackingConfidence10UNRELIABLEE" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+<dl class="cpp enumerator">
+<dt class="sig sig-object cpp" id="_CPPv4N7eyeware18TrackingConfidence3LOWE">
+<span id="_CPPv3N7eyeware18TrackingConfidence3LOWE"></span><span id="_CPPv2N7eyeware18TrackingConfidence3LOWE"></span><span class="target" id="namespaceeyeware_1a097388946959c7c0b8aa1ca8fb136377a41bc94cbd8eebea13ce0491b2ac11b88"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">LOW</span></span></span><a class="headerlink" href="#_CPPv4N7eyeware18TrackingConfidence3LOWE" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+<dl class="cpp enumerator">
+<dt class="sig sig-object cpp" id="_CPPv4N7eyeware18TrackingConfidence6MEDIUME">
+<span id="_CPPv3N7eyeware18TrackingConfidence6MEDIUME"></span><span id="_CPPv2N7eyeware18TrackingConfidence6MEDIUME"></span><span class="target" id="namespaceeyeware_1a097388946959c7c0b8aa1ca8fb136377ac87f3be66ffc3c0d4249f1c2cc5f3cce"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">MEDIUM</span></span></span><a class="headerlink" href="#_CPPv4N7eyeware18TrackingConfidence6MEDIUME" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+<dl class="cpp enumerator">
+<dt class="sig sig-object cpp" id="_CPPv4N7eyeware18TrackingConfidence4HIGHE">
+<span id="_CPPv3N7eyeware18TrackingConfidence4HIGHE"></span><span id="_CPPv2N7eyeware18TrackingConfidence4HIGHE"></span><span class="target" id="namespaceeyeware_1a097388946959c7c0b8aa1ca8fb136377ab89de3b4b81c4facfac906edf29aec8c"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">HIGH</span></span></span><a class="headerlink" href="#_CPPv4N7eyeware18TrackingConfidence4HIGHE" title="Permalink to this definition">¶</a><br /></dt>
+<dd></dd></dl>
+
+</dd></dl>
+
+<dl class="cpp struct">
+<dt class="sig sig-object cpp" id="_CPPv4N7eyeware17AffineTransform3DE">
+<span id="_CPPv3N7eyeware17AffineTransform3DE"></span><span id="_CPPv2N7eyeware17AffineTransform3DE"></span><span id="eyeware::AffineTransform3D"></span><span class="target" id="structeyeware_1_1_affine_transform3_d"></span><span class="k"><span class="pre">struct</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">eyeware</span></span><span class="p"><span class="pre">::</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">AffineTransform3D</span></span></span><a class="headerlink" href="#_CPPv4N7eyeware17AffineTransform3DE" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Representation of a 3D affine transform, composed by a rotation matrix and a translation vector as A = [R | t], where</p>
+<p>R = [c_00, c_01, c_02 c_10, c_11, c_12 c_20, c_21, c_22],</p>
+<p>t = [c_03, c_13, c_23]. </p>
+<div class="breathe-sectiondef docutils container">
+<p class="breathe-sectiondef-title rubric" id="breathe-section-title-public-members">Public Members</p>
+<dl class="cpp var">
+<dt class="sig sig-object cpp" id="_CPPv4N7eyeware17AffineTransform3D8rotationE">
+<span id="_CPPv3N7eyeware17AffineTransform3D8rotationE"></span><span id="_CPPv2N7eyeware17AffineTransform3D8rotationE"></span><span id="eyeware::AffineTransform3D::rotation__Matrix3x3"></span><span class="target" id="structeyeware_1_1_affine_transform3_d_1a290cfcfe2b1aaf5099fc293a4faf048d"></span><a class="reference internal" href="#_CPPv4N7eyeware9Matrix3x3E" title="eyeware::Matrix3x3"><span class="n"><span class="pre">Matrix3x3</span></span></a><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">rotation</span></span></span><a class="headerlink" href="#_CPPv4N7eyeware17AffineTransform3D8rotationE" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Rotation matrix component. </p>
+</dd></dl>
+
+<dl class="cpp var">
+<dt class="sig sig-object cpp" id="_CPPv4N7eyeware17AffineTransform3D11translationE">
+<span id="_CPPv3N7eyeware17AffineTransform3D11translationE"></span><span id="_CPPv2N7eyeware17AffineTransform3D11translationE"></span><span id="eyeware::AffineTransform3D::translation__Vector3D"></span><span class="target" id="structeyeware_1_1_affine_transform3_d_1a91c151c0c3997e95e6318b0f3e568e10"></span><a class="reference internal" href="#_CPPv4N7eyeware8Vector3DE" title="eyeware::Vector3D"><span class="n"><span class="pre">Vector3D</span></span></a><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">translation</span></span></span><a class="headerlink" href="#_CPPv4N7eyeware17AffineTransform3D11translationE" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Translation vector component. </p>
+</dd></dl>
+
+</div>
+</dd></dl>
+
+<dl class="cpp type">
+<dt class="sig sig-object cpp" id="_CPPv4N7eyeware9Matrix3x3E">
+<span id="_CPPv3N7eyeware9Matrix3x3E"></span><span id="_CPPv2N7eyeware9Matrix3x3E"></span><span class="target" id="namespaceeyeware_1ad52224695b9eea0b3bc1a09917544888"></span><span class="k"><span class="pre">using</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">eyeware</span></span><span class="p"><span class="pre">::</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">Matrix3x3</span></span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="kt"><span class="pre">float</span></span><span class="p"><span class="pre">[</span></span><span class="m"><span class="pre">3</span></span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">[</span></span><span class="m"><span class="pre">3</span></span><span class="p"><span class="pre">]</span></span><a class="headerlink" href="#_CPPv4N7eyeware9Matrix3x3E" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Matrix of 3x3, implemented as an array of arrays (row-major).</p>
+<p><div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">Matrix3x3</span> <span class="n">my_matrix</span><span class="p">;</span> <span class="o">//</span> <span class="n">Assume</span> <span class="n">a</span> <span class="n">Matrix3x3</span> <span class="n">instance</span> <span class="ow">is</span> <span class="n">available</span>
+<span class="nb">int</span> <span class="n">row</span> <span class="o">=</span> <span class="mi">1</span><span class="p">;</span>
+<span class="nb">int</span> <span class="n">col</span> <span class="o">=</span> <span class="mi">2</span><span class="p">;</span>
+<span class="nb">float</span> <span class="n">coefficient</span> <span class="o">=</span> <span class="n">my_matrix</span><span class="p">[</span><span class="n">row</span><span class="p">][</span><span class="n">col</span><span class="p">];</span>
+</pre></div>
+</div>
+ </p>
+</dd></dl>
+
+<dl class="cpp struct">
+<dt class="sig sig-object cpp" id="_CPPv4N7eyeware8Vector3DE">
+<span id="_CPPv3N7eyeware8Vector3DE"></span><span id="_CPPv2N7eyeware8Vector3DE"></span><span id="eyeware::Vector3D"></span><span class="target" id="structeyeware_1_1_vector3_d"></span><span class="k"><span class="pre">struct</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">eyeware</span></span><span class="p"><span class="pre">::</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">Vector3D</span></span></span><a class="headerlink" href="#_CPPv4N7eyeware8Vector3DE" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>Representation of a 3D vector or 3D point. </p>
+<div class="breathe-sectiondef docutils container">
+<p class="breathe-sectiondef-title rubric" id="breathe-section-title-public-members">Public Members</p>
+<dl class="cpp var">
+<dt class="sig sig-object cpp" id="_CPPv4N7eyeware8Vector3D1xE">
+<span id="_CPPv3N7eyeware8Vector3D1xE"></span><span id="_CPPv2N7eyeware8Vector3D1xE"></span><span id="eyeware::Vector3D::x__float"></span><span class="target" id="structeyeware_1_1_vector3_d_1a7d0eb10afff81c559cc0ca58dfa82340"></span><span class="kt"><span class="pre">float</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">x</span></span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="m"><span class="pre">0.0f</span></span><a class="headerlink" href="#_CPPv4N7eyeware8Vector3D1xE" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>x coordinate. </p>
+</dd></dl>
+
+<dl class="cpp var">
+<dt class="sig sig-object cpp" id="_CPPv4N7eyeware8Vector3D1yE">
+<span id="_CPPv3N7eyeware8Vector3D1yE"></span><span id="_CPPv2N7eyeware8Vector3D1yE"></span><span id="eyeware::Vector3D::y__float"></span><span class="target" id="structeyeware_1_1_vector3_d_1afc7031340e87e2f57c4954cb96ff37b2"></span><span class="kt"><span class="pre">float</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">y</span></span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="m"><span class="pre">0.0f</span></span><a class="headerlink" href="#_CPPv4N7eyeware8Vector3D1yE" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>y coordinate. </p>
+</dd></dl>
+
+<dl class="cpp var">
+<dt class="sig sig-object cpp" id="_CPPv4N7eyeware8Vector3D1zE">
+<span id="_CPPv3N7eyeware8Vector3D1zE"></span><span id="_CPPv2N7eyeware8Vector3D1zE"></span><span id="eyeware::Vector3D::z__float"></span><span class="target" id="structeyeware_1_1_vector3_d_1aa76a966fc9937a5417ac8ac32b900e2e"></span><span class="kt"><span class="pre">float</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">z</span></span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="m"><span class="pre">0.0f</span></span><a class="headerlink" href="#_CPPv4N7eyeware8Vector3D1zE" title="Permalink to this definition">¶</a><br /></dt>
+<dd><p>z coordinate. </p>
+</dd></dl>
+
+</div>
+</dd></dl>
+
+</div>
+<div class="section" id="python">
+<h2>Python<a class="headerlink" href="#python" title="Permalink to this headline">¶</a></h2>
+<dl class="py class">
+<dt class="sig sig-object py" id="eyeware.client.TrackerClient">
+<em class="property"><span class="pre">class</span> </em><span class="sig-prename descclassname"><span class="pre">eyeware.client.</span></span><span class="sig-name descname"><span class="pre">TrackerClient</span></span><a class="headerlink" href="#eyeware.client.TrackerClient" title="Permalink to this definition">¶</a></dt>
+<dd><p>Class for connecting to the tracker server and retrieving its resulting tracking data.</p>
+<p>It establishes communication to the tracker server (Eyeware Beam application) and provides synchronous access to the data.
+Those synchronous calls will return the last tracking data results received from the server.</p>
+<p>A <code class="docutils literal notranslate"><span class="pre">network_error_handler</span></code> callback can be provided.
+If <code class="docutils literal notranslate"><span class="pre">None</span></code> is used (default), the network errors are ignored and the network connection is reestablished automatically when possible by the <code class="docutils literal notranslate"><span class="pre">TrackerClient</span></code> class instance.
+If a network handler is given, it will be called in case of errors (e.g., timeout).
+In such case, the <code class="docutils literal notranslate"><span class="pre">TrackerClient</span></code> instance becomes invalid and needs to be recreated to reestablish connection.</p>
+<dl class="field-list simple">
+<dt class="field-odd">Parameters</dt>
+<dd class="field-odd"><ul class="simple">
+<li><p><strong>network_error_handler</strong> (<em>Callable</em>) – An optional callback function for managing connection to the server errors.</p></li>
+<li><p><strong>network_connection_timeout_ms</strong> (<em>int</em>) – The time period (in ms) for an attempt to connect to the server, after which the network connection is treated as broken.</p></li>
+<li><p><strong>tracking_info_network_timeout_ms</strong> (<em>int</em>) – The time period (in ms) for an attempt to obtain tracking info from the server, after which the network connection is treated as broken.</p></li>
+<li><p><strong>base_communication_port</strong> (<em>int</em>) – Base connection port to the server. The instance may use base_communication_port+1 as well.</p></li>
+<li><p><strong>hostname</strong> (<em>str</em>) – The hostname of the server to obtain tracking results from. Typically the same PC, thus “127.0.0.1”.</p></li>
+</ul>
+</dd>
+</dl>
+<dl class="py property">
+<dt class="sig sig-object py" id="eyeware.client.TrackerClient.connected">
+<em class="property"><span class="pre">property</span> </em><span class="sig-name descname"><span class="pre">connected</span></span><a class="headerlink" href="#eyeware.client.TrackerClient.connected" title="Permalink to this definition">¶</a></dt>
+<dd><p>Whether this client is currently connected to the tracker server or not.</p>
+<div class="versionadded">
+<p><span class="versionmodified added">New in version 1.1.0.</span></p>
+</div>
+</dd></dl>
+
+<dl class="py method">
+<dt class="sig sig-object py" id="eyeware.client.TrackerClient.get_head_pose_info">
+<span class="sig-name descname"><span class="pre">get_head_pose_info</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">self</span></span><span class="p"><span class="pre">:</span></span> <span class="n"><a class="reference internal" href="#eyeware.client.TrackerClient" title="eyeware.client.TrackerClient"><span class="pre">eyeware.client.TrackerClient</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">eyeware::HeadPoseInfo</span></span></span><a class="headerlink" href="#eyeware.client.TrackerClient.get_head_pose_info" title="Permalink to this definition">¶</a></dt>
+<dd><p>Retrieves the most recent head pose tracking result.</p>
+</dd></dl>
+
+<dl class="py method">
+<dt class="sig sig-object py" id="eyeware.client.TrackerClient.get_screen_gaze_info">
+<span class="sig-name descname"><span class="pre">get_screen_gaze_info</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">self</span></span><span class="p"><span class="pre">:</span></span> <span class="n"><a class="reference internal" href="#eyeware.client.TrackerClient" title="eyeware.client.TrackerClient"><span class="pre">eyeware.client.TrackerClient</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">eyeware::ScreenGazeInfo</span></span></span><a class="headerlink" href="#eyeware.client.TrackerClient.get_screen_gaze_info" title="Permalink to this definition">¶</a></dt>
+<dd><p>Retrieves the most recent screen gaze tracking result.</p>
+</dd></dl>
+
+</dd></dl>
+
+<dl class="py class">
+<dt class="sig sig-object py" id="eyeware.client.HeadPoseInfo">
+<em class="property"><span class="pre">class</span> </em><span class="sig-prename descclassname"><span class="pre">eyeware.client.</span></span><span class="sig-name descname"><span class="pre">HeadPoseInfo</span></span><a class="headerlink" href="#eyeware.client.HeadPoseInfo" title="Permalink to this definition">¶</a></dt>
+<dd><p>Represents information of the head pose, for a given time instant.</p>
+<dl class="py property">
+<dt class="sig sig-object py" id="eyeware.client.HeadPoseInfo.is_lost">
+<em class="property"><span class="pre">property</span> </em><span class="sig-name descname"><span class="pre">is_lost</span></span><a class="headerlink" href="#eyeware.client.HeadPoseInfo.is_lost" title="Permalink to this definition">¶</a></dt>
+<dd><p>Indicates if tracking of the head is lost, i.e., if <code class="docutils literal notranslate"><span class="pre">False</span></code>, the user is not being tracked.</p>
+</dd></dl>
+
+<dl class="py property">
+<dt class="sig sig-object py" id="eyeware.client.HeadPoseInfo.track_session_uid">
+<em class="property"><span class="pre">property</span> </em><span class="sig-name descname"><span class="pre">track_session_uid</span></span><a class="headerlink" href="#eyeware.client.HeadPoseInfo.track_session_uid" title="Permalink to this definition">¶</a></dt>
+<dd><p>Indicates the ID of the session of uninterrupted consecutive tracking.</p>
+</dd></dl>
+
+<dl class="py property">
+<dt class="sig sig-object py" id="eyeware.client.HeadPoseInfo.transform">
+<em class="property"><span class="pre">property</span> </em><span class="sig-name descname"><span class="pre">transform</span></span><a class="headerlink" href="#eyeware.client.HeadPoseInfo.transform" title="Permalink to this definition">¶</a></dt>
+<dd><p>Head pose, defined at the nose tip, with respect to the World Coordinate System (WCS).</p>
+</dd></dl>
+
+</dd></dl>
+
+<dl class="py class">
+<dt class="sig sig-object py" id="eyeware.client.ScreenGazeInfo">
+<em class="property"><span class="pre">class</span> </em><span class="sig-prename descclassname"><span class="pre">eyeware.client.</span></span><span class="sig-name descname"><span class="pre">ScreenGazeInfo</span></span><a class="headerlink" href="#eyeware.client.ScreenGazeInfo" title="Permalink to this definition">¶</a></dt>
+<dd><p>Represents information of a person gaze intersection with a single screen, for a given time instant.
+Screen gaze coordinates are expressed in pixels with respect to the top-left corner of the screen.</p>
+<dl class="py property">
+<dt class="sig sig-object py" id="eyeware.client.ScreenGazeInfo.confidence">
+<em class="property"><span class="pre">property</span> </em><span class="sig-name descname"><span class="pre">confidence</span></span><a class="headerlink" href="#eyeware.client.ScreenGazeInfo.confidence" title="Permalink to this definition">¶</a></dt>
+<dd><p>The confidence of the tracking result.</p>
+</dd></dl>
+
+<dl class="py property">
+<dt class="sig sig-object py" id="eyeware.client.ScreenGazeInfo.is_lost">
+<em class="property"><span class="pre">property</span> </em><span class="sig-name descname"><span class="pre">is_lost</span></span><a class="headerlink" href="#eyeware.client.ScreenGazeInfo.is_lost" title="Permalink to this definition">¶</a></dt>
+<dd><p>Tracking status that tells if the other values are dependable.</p>
+</dd></dl>
+
+<dl class="py property">
+<dt class="sig sig-object py" id="eyeware.client.ScreenGazeInfo.screen_id">
+<em class="property"><span class="pre">property</span> </em><span class="sig-name descname"><span class="pre">screen_id</span></span><a class="headerlink" href="#eyeware.client.ScreenGazeInfo.screen_id" title="Permalink to this definition">¶</a></dt>
+<dd><p>ID of the screen, to differentiate in case of a multiscreen setup.</p>
+</dd></dl>
+
+<dl class="py property">
+<dt class="sig sig-object py" id="eyeware.client.ScreenGazeInfo.x">
+<em class="property"><span class="pre">property</span> </em><span class="sig-name descname"><span class="pre">x</span></span><a class="headerlink" href="#eyeware.client.ScreenGazeInfo.x" title="Permalink to this definition">¶</a></dt>
+<dd><p>The horizontal screen coordinate for the gaze intersection.</p>
+</dd></dl>
+
+<dl class="py property">
+<dt class="sig sig-object py" id="eyeware.client.ScreenGazeInfo.y">
+<em class="property"><span class="pre">property</span> </em><span class="sig-name descname"><span class="pre">y</span></span><a class="headerlink" href="#eyeware.client.ScreenGazeInfo.y" title="Permalink to this definition">¶</a></dt>
+<dd><p>The vertical screen coordinate for the gaze intersection.</p>
+</dd></dl>
+
+</dd></dl>
+
+<dl class="py class">
+<dt class="sig sig-object py" id="eyeware.client.TrackingConfidence">
+<em class="property"><span class="pre">class</span> </em><span class="sig-prename descclassname"><span class="pre">eyeware.client.</span></span><span class="sig-name descname"><span class="pre">TrackingConfidence</span></span><a class="headerlink" href="#eyeware.client.TrackingConfidence" title="Permalink to this definition">¶</a></dt>
+<dd><blockquote>
+<div><p>Realibility measure for obtained tracking results.</p>
+</div></blockquote>
+<p>Members:</p>
+<blockquote>
+<div><p>UNRELIABLE</p>
+<p>LOW</p>
+<p>MEDIUM</p>
+<p>HIGH</p>
+</div></blockquote>
+</dd></dl>
+
+<dl class="py class">
+<dt class="sig sig-object py" id="eyeware.client.AffineTransform3D">
+<em class="property"><span class="pre">class</span> </em><span class="sig-prename descclassname"><span class="pre">eyeware.client.</span></span><span class="sig-name descname"><span class="pre">AffineTransform3D</span></span><a class="headerlink" href="#eyeware.client.AffineTransform3D" title="Permalink to this definition">¶</a></dt>
+<dd><p>Representation of a 3D affine transform, composed by a rotation matrix and a translation vector as A = [R | t], where</p>
+<p>R = [c_00, c_01, c_02 c_10, c_11, c_12 c_20, c_21, c_22],</p>
+<p>t = [c_03, c_13, c_23].</p>
+<dl class="py property">
+<dt class="sig sig-object py" id="eyeware.client.AffineTransform3D.rotation">
+<em class="property"><span class="pre">property</span> </em><span class="sig-name descname"><span class="pre">rotation</span></span><a class="headerlink" href="#eyeware.client.AffineTransform3D.rotation" title="Permalink to this definition">¶</a></dt>
+<dd><p>Rotation matrix component.</p>
+</dd></dl>
+
+<dl class="py property">
+<dt class="sig sig-object py" id="eyeware.client.AffineTransform3D.translation">
+<em class="property"><span class="pre">property</span> </em><span class="sig-name descname"><span class="pre">translation</span></span><a class="headerlink" href="#eyeware.client.AffineTransform3D.translation" title="Permalink to this definition">¶</a></dt>
+<dd><p>Translation vector component.</p>
+</dd></dl>
+
+</dd></dl>
+
+<dl class="py class">
+<dt class="sig sig-object py" id="eyeware.client.Vector3D">
+<em class="property"><span class="pre">class</span> </em><span class="sig-prename descclassname"><span class="pre">eyeware.client.</span></span><span class="sig-name descname"><span class="pre">Vector3D</span></span><a class="headerlink" href="#eyeware.client.Vector3D" title="Permalink to this definition">¶</a></dt>
+<dd><p>Representation of a 3D vector or 3D point.</p>
+<dl class="py property">
+<dt class="sig sig-object py" id="eyeware.client.Vector3D.x">
+<em class="property"><span class="pre">property</span> </em><span class="sig-name descname"><span class="pre">x</span></span><a class="headerlink" href="#eyeware.client.Vector3D.x" title="Permalink to this definition">¶</a></dt>
+<dd><p>x coordinate.</p>
+</dd></dl>
+
+<dl class="py property">
+<dt class="sig sig-object py" id="eyeware.client.Vector3D.y">
+<em class="property"><span class="pre">property</span> </em><span class="sig-name descname"><span class="pre">y</span></span><a class="headerlink" href="#eyeware.client.Vector3D.y" title="Permalink to this definition">¶</a></dt>
+<dd><p>y coordinate.</p>
+</dd></dl>
+
+<dl class="py property">
+<dt class="sig sig-object py" id="eyeware.client.Vector3D.z">
+<em class="property"><span class="pre">property</span> </em><span class="sig-name descname"><span class="pre">z</span></span><a class="headerlink" href="#eyeware.client.Vector3D.z" title="Permalink to this definition">¶</a></dt>
+<dd><p>z coordinate.</p>
+</dd></dl>
+
+</dd></dl>
+
+<div class="admonition note">
+<p class="admonition-title">Note</p>
+<p>Matrix and vector types, such as the rotation and translation properties of <code class="docutils literal notranslate"><span class="pre">AffineTransform3D</span></code>, can be transformed to NumPy arrays efficiently.
+This is useful for using tracking data and coordinates in your application.
+Example:</p>
+<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="c1"># Receive an AffineTransform3D instance</span>
+<span class="n">head_pose</span> <span class="o">=</span> <span class="n">tracker</span><span class="o">.</span><span class="n">get_head_pose_info</span><span class="p">()</span>
+<span class="c1"># Transform the tracking information to standard NumPy arrays</span>
+<span class="kn">import</span> <span class="nn">numpy</span> <span class="k">as</span> <span class="nn">np</span>
+<span class="n">rotation_numpy</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">(</span><span class="n">head_pose</span><span class="o">.</span><span class="n">rotation</span><span class="p">,</span> <span class="n">copy</span><span class="o">=</span><span class="kc">False</span><span class="p">)</span>
+<span class="n">translation_numpy</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">(</span><span class="n">head_pose</span><span class="o">.</span><span class="n">translation</span><span class="p">,</span> <span class="n">copy</span><span class="o">=</span><span class="kc">False</span><span class="p">)</span>
+<span class="c1"># Now we can manipulate tracking information to do several things:</span>
+<span class="c1"># draw tracking coordinates on the screen, save them for statistics/heatmaps,</span>
+<span class="c1"># perform arithmetic operations on them, trigger interactive behaviors based on thresholds, etc.</span>
+</pre></div>
+</div>
+</div>
+</div>
+</div>
+
+
+ </div>
+
+ </div>
+ <footer>
+ <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
+ <a href="redistribution.html" class="btn btn-neutral float-right" title="Redistributing a Beam client application" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
+ <a href="api_overview.html" class="btn btn-neutral float-left" title="API overview" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
+ </div>
+
+ <hr/>
+
+ <div role="contentinfo">
+ <p>
+ &#169; Copyright 2021, Eyeware Tech SA.
+
+ </p>
+ </div>
+
+
+
+ Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a
+
+ <a href="https://github.com/readthedocs/sphinx_rtd_theme">theme</a>
+
+ provided by <a href="https://readthedocs.org">Read the Docs</a>.
+
+</footer>
+ </div>
+ </div>
+
+ </section>
+
+ </div>
+
+
+ <script type="text/javascript">
+ jQuery(function () {
+ SphinxRtdTheme.Navigation.enable(true);
+ });
+ </script>
+
+
+
+
+
+
+</body>
+</html> \ No newline at end of file