summaryrefslogtreecommitdiffhomepage
path: root/Tobii-EyeX/Readme.txt
blob: 2f865a38b0722527aaf1d9a4c5df5537fde4469f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
Tobii EyeX Software Development Kit for C/C++
=============================================

README

  This package contains everything a developer needs for building games
  and applications using the Tobii EyeX Engine API and the C and C++
  programming languages: the C header files for accessing the API, libraries,
  documentation, and code samples.

  Note that Tobii offers several SDK packages targeted at different programming
  languages and frameworks, so be sure to pick the one that fits your needs best.

CONTACT

  If you have problems, questions, ideas, or suggestions, please use the forums
  on the Tobii Developer Zone (link below). That's what they are for!

WEB SITE

  Visit the Tobii Developer Zone web site for the latest news and downloads:

  http://developer.tobii.com/

COMPATIBILITY

  This version of the EyeX SDK requires EyeX Engine version 1.0 or later.
  Specific features will require newer versions of the EyeX Engine as listed
  in the revision history below.

REVISION HISTORY

  2016-03-14
  Version 1.7: No changes.

  2015-11-19
  Version 1.6:
    - Removed all dependencies on the EyeXButton for activatable behavior. The
      samples using the activatable behavior now hook their own keyboard keys
      for activation, and send action commands to trigger activation. The 
      board game sample also illustrates how to trigger activation mode on.
    - Rewrote and restructured parts of the Developer Guide, and added more 
      detailed inforation about action commands for the activatable and the
      pannable behaviors.

  2015-06-12
  Version 1.5:
    - Added support for new EyeTracking state TX_STATEPATH_GAZETRACKING. Updated
      the MinimalStatusNotifications sample to include this state. Requires EyeX 
      Engine 1.4.0.
    - Added support for new states introduced with EyeX Engine 1.3.0. Some of 
      the new states replace deprecated states. The new state path names
      correspond to a logical hierarchy where a number of states are sorted 
      under so called root nodes (for example TX_STATEPATH_EYETRACKING). The 
      list below is incomplete, for a full list of available state paths and 
      their descriptions, see EyeXLiterals.h. Samples have been updated to use 
      the new states where applicable.
        
      New state                                   | Replaces deprecated state
      ------------------------------------------- | --------------------------------
      TX_STATEPATH_EYETRACKINGSCREENBOUNDS        | TX_STATEPATH_SCREENBOUNDS *)
      TX_STATEPATH_EYETRACKINGDISPLAYSIZE         | TX_STATEPATH_DISPLAYSIZE *)
      TX_STATEPATH_EYETRACKINGCONFIGURATIONSTATUS | TX_STATEPATH_CONFIGURATIONSTATUS *)
      TX_STATEPATH_ENGINEINFOVERSION              | TX_STATEPATH_ENGINEVERSION **)
      TX_STATEPATH_EYETRACKINGCURRENTPROFILENAME  | TX_STATEPATH_PROFILENAME **)
      TX_STATEPATH_EYETRACKINGPROFILES            |
      TX_STATEPATH_EYETRACKINGINFO                |
      TX_STATEPATH_EYETRACKINGINFOMODELNAME       |
      TX_STATEPATH_EYETRACKINGINFOSERIALNUMBER    |
      TX_STATEPATH_EYETRACKINGINFOFIRMWAREVERSION |

       *) The new state path is identical to the old, only the name differs. This 
          new state path is backwards compatible with older EyeX Engines.
      **) The new state path is different from the old. You may want to keep 
          using the old path for a while for compatibility with pre-1.3.0 EyeX
          Engines. 
      
    - Added support for new EyeX Engine API function: txSetCurrentProfile.
      Requires EyeX Engine 1.3.0.   
    - Added a MinimalUserProfiles sample to demonstrate how to list profiles
      and change current profile. Requires EyeX Engine 1.3.0.
    - New semantic behavior for TX_STATEPATH_USERPRESENCE state: the user will 
      be detected as present in more cases than before. The user's eyes do not 
      have to be open.
    - New enum value for the TX_STATEPATH_USERPRESENCE state: 
      TX_USERPRESENCE_UNKNOWN.

  2015-04-14
  Version 1.4: No changes. 

  2015-01-15
  Version 1.3: No changes.

  2014-12-16
  Version 1.2:
    - Added support for launching EyeX configuration tools. This function 
      requires EyeX Engine 1.1.
    - New code sample to demonstrate the EyePosition data stream.
    - New EyeX Engine API function: txGetEyeXAvailability. This function is 
      implemented in the client library and works with all Engine versions.
    - Added a check for engine availability to the MinimalStatusNotifications 
      sample app.

  2014-11-20
  Version 1.1:
    - Improved error handling in the shutdown sequence of the C samples.

  2014-10-27
  Version 1.0:
    - Client library compatible with EyeX Engine 1.0.
    - Updated the MinimalStatusNotifications sample to use asynchronous state 
      queries in the engine-connection-state-changed event handler.
    - Updated samples and documentation for the new direct click modes in 
      EyeX Interaction settings.

  2014-09-23
  Version 0.32: Client library compatible with both EyeX Engine 0.10 and 1.0.

  2014-09-05
  Version 0.31: Updated package for Tobii EyeX Engine 0.10.0:
    - Client libraries updated with some breaking API changes (see below).
    - All samples are updated to the new client libraries.
    
  2014-08-22
  Version 0.24: No changes.

  2014-06-19
  Version 0.23: Improved the readability of the API header files by expanding 
  some of the macros.

  2014-05-21
  Version 0.22: Improvements to the Developer's Guide. Bug fixes in the client 
  library.

  2014-05-07
  Version 0.21: Updated package for Tobii EyeX Engine 0.8.14:
    - Client libraries updated with some breaking API changes (see below).
    - All samples are updated to the new client libraries.
    - Improvements to the C/C++ code samples.

  2014-04-08
  Version 0.20: Updated package for Tobii EyeX Engine 0.8.11:
    - Client libraries updated with some breaking API changes (see below).
    - All samples are updated to the new client libraries.
    - MinimalFixationDataStream sample now works as expected.
    - MinimalStatusNotifications sample now also displays presence data.
    - The Developer's Guide is updated.

  2014-03-05
  Version 0.17: Changes to the custom threading and logging API. Added the
  txEnableMonoCallbacks function.

  2014-02-28
  Version 0.16: Added additional notification handlers in the
  MinimalStatusNotifications sample to show how to retrieve display size and
  screen bounds settings. Added new experimental sample to demonstrate the
  Fixation data stream.

  2014-02-26
  Version 0.15: No changes.

  2014-02-21
  Version 0.14.40: Minor improvements.

  2014-02-12
  Version 0.13.39: Bug fixes: Settings retrieval bug fixed in client library.

  2014-02-06
  Version 0.13.38: Added samples licence agreement. Added missing copyright
  texts to C++ binding.

  2014-01-03
  Version 0.13.37: This is the first official alpha release of the SDK. APIs
  may change and backward compatibility isn't guaranteed. As a rule of thumb,
  the APIs used in the samples are the most mature and less likely to change
  much.

EYEX ENGINE API CHANGES

  2014-10-22
  EyeX Engine 1.0
  - No actual API changes, but functional changes related to the Activatable 
    behavior, direct click and key bindings: 
       - If EyeX Interaction is disabled, no default keys are mapped to direct click.
       - ActivationFocus and Activated events are sent simultaneously if EyeX Button 
         interaction is configured in EyeX Interaction settings.

  2014-09-05
  EyeX Engine Developer Preview 0.10.0
  - Name changes:
      TX_STATEPATH_STATE => TX_STATEPATH_EYETRACKINGSTATE
      TX_STATEPATH_PRESENCEDATA => TX_STATEPATH_USERPRESENCE
      TX_PRESENCEDATA_PRESENT => TX_USERPRESENCE_PRESENT
      txInitializeSystem => txInitializeEyeX
      txSet[Xyz]Behavior => txCreate[Xyz]Behavior
      TX_SYSTEMCOMPONENTOVERRIDEFLAG* => TX_EYEXCOMPONENTOVERRIDEFLAG*
      TX_INTERACTIONBEHAVIORTYPE* => TX_BEHAVIORTYPE*
  - Features that are tentative are now documented as "internal" and may 
    disappear in future releases.
  - txInitializeEyeX takes an additional parameter. Currently it is only a 
    placeholder, so pass in a null pointer.
  - The handle passed to txCreateContext must be initialized to TX_EMPTY_HANDLE.
  - Registration methods may no longer be called from API callbacks.
  - The ScopedConstHandle type has been removed.
  - More than one state observer can now be registered for the same state path.
  
  2014-05-07
  EyeX Engine Developer Preview 0.8.14
  - AsyncData objects are used also in query and event handlers.
  - Type of AsyncData objects is of type TX_CONSTHANDLE and should not be released.
  - The third and last parameter of txUnregisterStateChangedHandler has been removed.
  - The signature of the txInitializeSystem function has been changed.