iTrace - Downloads

iTrace Eclipse v0.1.0 Documentation

Software Dependencies
  • Windows 10 x64
  • Eclipse Photon/2019
  • Java
  • iTrace Core v0.1.0
System Requirements

System requirements for using the iTrace Eclipse Plugin are the same as the requirements for the eye tracker you intend to use. Please refer to your tracker vendor's documentation for exact specifications.

Installing iTrace Eclipse
  1. In Eclipse, click Help → Install New Software
  2. Add a new site for iTrace
  3. Select the iTrace plugin from the uncategorized section of available software
  4. Proceed through the installation screens until the iTrace plugin is installed
    • If you see the security warning regarding the plugin being unsigned, it is safe to click Install anyway
  5. Restart the Eclipse IDE
Uninstalling iTrace Eclipse
  1. In Eclipse, click Help → About Eclipse → Installation Details
  2. Find the iTrace Eclipse Plugin in the list of installed software and select it
  3. Click Uninstall
  4. Restart the Eclipse IDE

Basic Usage

  1. Open Eclipse
  2. Open the source code project to use during the study
  3. Connect to Core
  4. Use iTrace Core to Start Tracking
  5. Use iTrace Core to Stop Tracking
  6. Disconnect from the Core
    • You MUST disconnect the iTrace Eclipse plugin before closing Eclipse the output data is complete

This iTrace Eclipse plugin requires iTrace Core v0.1.0 to be downloaded and installed before you use the extension.

For help with installing the iTrace Eclipse plugin, please read the Installing the iTrace Eclipse Plugin document for instructions.

Viewing the iTrace Eclipse Plugin Window

If the iTrace Eclipse Plugin window is not visible, you can open it using the following steps:

  1. In the Eclipse menu go to Window → Perspective → Open Perspective and click Other
  2. In the Open Perspective Menu select iTrace Eclipse Plugin from the list of available perspectives
  3. Click Open
Once the iTrace Eclipse Plugin window is open you can dock it in the editor and it should remain visible on subsequent launches of the Eclipse IDE.

Changing the Socket Port

If you have changed the Socket communicate port number in the iTrace Core application, you will need to set the iTrace Eclipse plugin socket to listen for data on the same port number. You can edit the socket port number setting using the following steps:

  1. In the Eclipse menu go to Window and click Preferences
  2. From the Eclipse preferences window click on iTrace Eclipse Plugin
  3. Change the socket port number to your desired value (must be between 1025 and 65535)
  4. Click Apply
Changes to the socket port setting go into effect when the Connect to Core button is clicked on the iTrace Eclipse Plugin. If iTrace Core and the iTrace Eclipse Plugin socket port values are not the same, the tools will not be able to communicate.

Connecting to iTrace Core

With the iTrace Core open, the iTrace Eclipse Plugin can be connected by clicking the Connect to Core button found on the iTrace Eclipse Plugin window. When the iTrace Eclipse Plugin is successfully connected, the button text will change to Disconnect.

NOTE: iTrace Core must be running before attempting to connect the iTrace Eclipse Plugin and both applications must be using same socket port setting value.

Connecting to iTrace Core

To start a tracking session, ensure that the iTrace Eclipse Plugin is connected and then click the Start Tracking button on the iTrace Core application. When the session is complete, click Stop Tracking on the iTrace Core application. If you intend to start another tracking session, it is NOT necessary to disconnect the iTrace Eclipse Plugin from iTrace Core. A new session can be started by clicking Start Tracking again on iTrace Core.

Connecting to iTrace Core

When you are completely finished with data collection from your subject, stop the tracker using the iTrace Core application and then click Disconnect on the iTrace Eclipse plugin.

NOTE: Closing Eclipse without disconnecting will leave you with invalid XML.

Other Features

The highlight tokens feature highlights the source code tokens being viewed on the screen in real time while tracking. This feature is not intended for use during an actual study and is only intended as a demo feature.

All data generated by the iTrace Eclipse Plugin is stored in an XML format. Each file name begins with itrace_eclipse_ and ends with a UTC Unix format timestamp in milliseconds to indicate the start of the session. This timestamp is used to pair plugin data with the corresponding iTrace Core data.

An example output file would look something like this: itrace_eclipse_1551994182719.xml

IDE Plugin XML Format

                        <itrace_plugin session_id="">
                            <environment screen_width="" screen_height="" plugin_type="" />
                                    <response event_id="" plugin_time="[timestamp_milli]" x="" y="" gaze_target="" gaze_target_type="" source_file_path="" source_file_line="" source_file_col="" editor_line_height="" editor_font_height="" editor_line_base_x="" editor_line_base_y="" />

itrace_plugin tag attributes:

  • session_id → unique identifier for a recording session

environment_tag attributes

  • screen_width → width of display in pixels used for the study
  • screen_height → height of display in pixels used for the study
  • plugin_type → plugin used to record gaze data

response attributes

  • event_id → synchronizing id from core data (provided by Core)
  • plugin_time → timestamp for data being recorded by tracker as a UTC Unix style timestamp in milliseconds
  • x → screen based x coordinate (provided by Core)
  • y → screen based y coordinate (provided by Core)
  • gaze_target → UI element or source code file under gaze
  • gaze_target_type → type of source code file or UI element
  • source_file_path → file path of open source code file under gaze
  • source_file_line → line in open source code file under gaze
  • source_file_col → col in open source code file under gaze
  • editor_line_height → size of editor line
  • editor_font_height → font height in editor
  • editor_line_base_x → line base x in editor
  • editor_line_base_y → line base y in editor