Skip to main content

Downloads Citation Badge PyPI Latest Release image DOI

Usage instructions for using the Titta class (through its TittaMex and TittaPy interfaces) are found in the Titta documentation.

Building the mex files

Run makeTittaMex.m to build the mex file. You have to do this first if you want to use Titta from Octave, mex files for Octave are no longer bundled with Titta. However, it should be as simple as running that function once, since everything needed is contained in this repository. Mex files for MATLAB (Windows and Linux) are provided in this repository.

32-bit builds are no longer supported on Windows (they have never been on Linux). The last version of Titta/TittaMex supporting 32-bit Matlab is available here.

For building the Linux mex file the default gcc version 11.2.0 included with Ubuntu 22.04 was used. (The mex file currently does not build with gcc 9.3.0 provided in the mingw64 distribution that comes with Octave 6.4.0 on Windows.) For compatibility with an earlier version of Ubuntu, either install the right GLIBCXX version or recompile following the instructions here. See this issue for more information.

Working on the source

The enclosed Titta.sln file is to be opened and built with Visual Studio 2022 (last tested with version 17.8.4).

Required environment variables

Some environment variables must be set when working on the code or building it from Visual Studio. Here are the values i used (at the time of writing):

  • MATLAB_ROOT: C:\Program Files\MATLAB\R2023b
  • PYTHON_ROOT: C:\Program Files\PsychoPy

Dependencies

readerwriterqueue

readerwriterqueue located at deps/include/readerwriterqueue is required for compiling Titta. Make sure you clone the Titta repository including all submodules so that this dependency is available.

Tobii Pro SDK

To update the Tobii Pro C SDK used to build Titta against, you need to manually put the some files in the right place.

  1. Before you do so, for Windows, the tobii_research.dll needs to be renamed to tobii_research_v2.dll (N.B. version 1 is static, you'll never have to update this) not clash with the dll for SDK version 1.x. To do so, open an x64 Native tools command prompt for Visual Studio and run the tools\change_dll_name.py script on the downloaded dll.
  2. And before you do so, for Linux, the soname for tobii_research.so.2.x.x needs to be changed to tobii_research.so.2 as it is not interchangable with tobii_research.so.1 and we need to ensure the right version is loaded (N.B. version 1 is static, you'll never have to update tobii_research.so.1.11.0). To do so, issue: patchelf --set-soname libtobii_research.so.2 libtobii_research.so.2.x.x, where libtobii_research.so.2.x.x is the file to modify.
  3. The *.h include files are placed in \SDK_wrapper\deps\include\SDKv2 (you don't need to touch \SDKv1, it won't be updated).
  4. The Windows tobii_research_v2.lib link library generated in step 1 is placed in \SDK_wrapper\deps\lib.
  5. The *.dll and *.so files are placed in the respective output directories, \SDK_wrapper\TittaMex\64\Windows and \SDK_wrapper\TittaMex\64\Linux, respectively. For Linux, create symbolic links of tobii_research.so.2.x.x to tobii_research.so.2 and tobii_research.so.

PsychoPy and PyBind11

Please note that the code for the Python wrapper is currently not actively maintained and will not build as is now. However, assuming its updated, the following steps will build the code:

  1. Make sure the PsychoPy version you want to work with is installed.
  2. Make sure the PYTHON_ROOT environment variable is set to the location of your PsychoPy installation.
  3. Install PyBind11: in the root folder of your PsychoPy installation, execute python -m pip install pybind11. Alternatively, install pybind11 through a package manager like vcpkg.
  4. As per here, make sure you have the Python Development workload for visual studio installed. Note however that you can unselect the Python 3 installation, the web tools and the miniconda installation that it by default installs, as we will be using the PsychoPy installation's Python environment. Check the "Python native development tools" option.

Set up the Python environment for Visual Studio Python integration

Last, visual studio needs to be able to find your PsychoPy's Python environment. To do so, add a new Python environment, choose existing environment, and point it to the root of your PsychoPy install. In my case, that is C:\Program Files\PsychoPy.

Enabling native debugging

To be able to debug both the Python and C++ side of things with PsychoPy, you must install the debug symbols for the Python installation. This is done through the installer normally, but we don't have an option to do that with PyschoPy. So we have to add them manually. Here's how:

  1. For 64bit Python 3.8.10 (what I am using in the current example), navigate to this download location.
  2. Download all *_d.msi and *_pdb.msi files there (might be overkill, but better have them all).
  3. Open a cmd with admin privileges, navigate to your download location.
  4. Execute for each file a command like: core_d.msi TARGETDIR="C:\Program Files\PsychoPy", where the TARGETDIR is set to the location of your PsychoPy installation.

Metadata

Release files for TittaPy 2.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for TittaPy 2.1.0
File
tittapy-2.1.0-cp315-cp315-win_amd64.whl CPython 3.15 CPython 3.15 Windows x86-64 Details
tittapy-2.1.0-cp315-cp315-manylinux_2_34_x86_64.whl CPython 3.15 CPython 3.15 Linux glibc 2.34+ x86-64 Details
tittapy-2.1.0-cp315-cp315-macosx_14_0_arm64.whl CPython 3.15 CPython 3.15 macOS 14.0+ ARM64 Details
tittapy-2.1.0-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
tittapy-2.1.0-cp314-cp314-manylinux_2_34_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.34+ x86-64 Details
tittapy-2.1.0-cp314-cp314-macosx_14_0_arm64.whl CPython 3.14 CPython 3.14 macOS 14.0+ ARM64 Details
tittapy-2.1.0-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
tittapy-2.1.0-cp313-cp313-manylinux_2_34_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.34+ x86-64 Details
tittapy-2.1.0-cp313-cp313-macosx_14_0_arm64.whl CPython 3.13 CPython 3.13 macOS 14.0+ ARM64 Details
tittapy-2.1.0-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
tittapy-2.1.0-cp312-cp312-manylinux_2_34_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.34+ x86-64 Details
tittapy-2.1.0-cp312-cp312-macosx_14_0_arm64.whl CPython 3.12 CPython 3.12 macOS 14.0+ ARM64 Details
tittapy-2.1.0-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
tittapy-2.1.0-cp311-cp311-manylinux_2_34_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.34+ x86-64 Details
tittapy-2.1.0-cp311-cp311-macosx_14_0_arm64.whl CPython 3.11 CPython 3.11 macOS 14.0+ ARM64 Details
tittapy-2.1.0-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
tittapy-2.1.0-cp310-cp310-manylinux_2_34_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.34+ x86-64 Details
tittapy-2.1.0-cp310-cp310-macosx_14_0_arm64.whl CPython 3.10 CPython 3.10 macOS 14.0+ ARM64 Details

Total release size: 99.1 MB

Release files / tittapy-2.1.0-cp315-cp315-win_amd64.whl

Download URL tittapy-2.1.0-cp315-cp315-win_amd64.whl
Size 2.4 MB
Tags CPython 3.15 Windows x86-64
SHA-256 checksum
How to use checksums
9f07f9beda888ac8ebfc7c4a4590e51363f6e487e5b3a6cea73ac7e08a0776ca
BLAKE2b-256 checksum
How to use checksums
36089150b363ffde6e3019b0967faf4ad67b416895ac6c911644130eb39a7ce0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / tittapy-2.1.0-cp315-cp315-manylinux_2_34_x86_64.whl

Download URL tittapy-2.1.0-cp315-cp315-manylinux_2_34_x86_64.whl
Size 13.5 MB
Tags CPython 3.15 Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
20f7d937cb0f9642f5eb16037264fcb18573160e17977d3ad01c4ed844c4c402
BLAKE2b-256 checksum
How to use checksums
6ca21760119f0a548d5f29f27a723af9c8a212753ed6ee4491a876f77f47a7c9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / tittapy-2.1.0-cp315-cp315-macosx_14_0_arm64.whl

Download URL tittapy-2.1.0-cp315-cp315-macosx_14_0_arm64.whl
Size 677.0 kB
Tags CPython 3.15 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
2d76d6aae05f51c70dcc3da88e0d8b57c1359ffc05032b4354b52d76b0c6925c
BLAKE2b-256 checksum
How to use checksums
e7ced7e11a3c72a10661869a667d7fb8c2e2432054bd1e7a0c9be2147de5b2f0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / tittapy-2.1.0-cp314-cp314-win_amd64.whl

Download URL tittapy-2.1.0-cp314-cp314-win_amd64.whl
Size 2.4 MB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
97fcd63c53baff55278ada74906dc579870d16e96df94fb0aa1b3d7e061e422a
BLAKE2b-256 checksum
How to use checksums
7e78e5e4451c654b0a4ace26c57282f69fecadd6b59e1e08be6f03aa19488ac4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / tittapy-2.1.0-cp314-cp314-manylinux_2_34_x86_64.whl

Download URL tittapy-2.1.0-cp314-cp314-manylinux_2_34_x86_64.whl
Size 13.5 MB
Tags CPython 3.14 Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
15126e5a39b40c515c2b481044fbde3eda348e0a919fbba83686f71b66273bb0
BLAKE2b-256 checksum
How to use checksums
ce4f545323e6dbd2625ebd08dc7f5a6c7d341163a2015dddab3c950653b51e71
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / tittapy-2.1.0-cp314-cp314-macosx_14_0_arm64.whl

Download URL tittapy-2.1.0-cp314-cp314-macosx_14_0_arm64.whl
Size 676.5 kB
Tags CPython 3.14 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
92668dbd6b72b7cce91543512cda2aacf056f6cf703e3153a37dd01cc2063b53
BLAKE2b-256 checksum
How to use checksums
16842ea483f97a7ff4ad0d3a2c22b4ac672ce4740bfbd8c309d6a79be17ff08a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / tittapy-2.1.0-cp313-cp313-win_amd64.whl

Download URL tittapy-2.1.0-cp313-cp313-win_amd64.whl
Size 2.4 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
9ec7c599818e7e4cc7079ff1aec596fa7d327f4932f987fe10a6e1783d894c31
BLAKE2b-256 checksum
How to use checksums
d128b978fda2c874926dcd0c018fd98a0a9b2ebb5e2b547bb7467c161d805a53
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / tittapy-2.1.0-cp313-cp313-manylinux_2_34_x86_64.whl

Download URL tittapy-2.1.0-cp313-cp313-manylinux_2_34_x86_64.whl
Size 13.5 MB
Tags CPython 3.13 Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
d18d08f5c20a402f4db1f69dd7ff1e46bc6819b35da139e6fd215656816182d7
BLAKE2b-256 checksum
How to use checksums
0e922b61e869de677ab17a938c13b363f622cd2daeb2c26fb75968a2d74af8da
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / tittapy-2.1.0-cp313-cp313-macosx_14_0_arm64.whl

Download URL tittapy-2.1.0-cp313-cp313-macosx_14_0_arm64.whl
Size 675.4 kB
Tags CPython 3.13 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
cdd8bfce51043b46f77b63ff46b449327768ca9a9faafdd33c60775e4fc291bc
BLAKE2b-256 checksum
How to use checksums
a01773d7ccf470d045b60fef3675d9ea7ac78193d6ab9dd0248a045ce3f48e87
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / tittapy-2.1.0-cp312-cp312-win_amd64.whl

Download URL tittapy-2.1.0-cp312-cp312-win_amd64.whl
Size 2.4 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
01982e773c4025b2ea8369feea78c2ff51ea8a8826770f52d851e7d95c7c097e
BLAKE2b-256 checksum
How to use checksums
a244e616fee69af3f5f311fa8e1309fbce0e70cfe7b9cb1026004e9db75df1e5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / tittapy-2.1.0-cp312-cp312-manylinux_2_34_x86_64.whl

Download URL tittapy-2.1.0-cp312-cp312-manylinux_2_34_x86_64.whl
Size 13.5 MB
Tags CPython 3.12 Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
ddb712afccc5daaeef4875409ce393ab5ded2239b153ac1fd7e17453a86ff7a3
BLAKE2b-256 checksum
How to use checksums
393e732fe1a736ae5a50b808a9212e91388d009a7785b17adec0d1522f20e837
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / tittapy-2.1.0-cp312-cp312-macosx_14_0_arm64.whl

Download URL tittapy-2.1.0-cp312-cp312-macosx_14_0_arm64.whl
Size 675.2 kB
Tags CPython 3.12 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
4b732d6f356a2e7fc53f80bb673d50f57f8fd063c2191cbd5f429ea4465bd74d
BLAKE2b-256 checksum
How to use checksums
f83693bb0386da4b95dc11c7072170535ed2430afbc49f4d4d414af713c147e2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / tittapy-2.1.0-cp311-cp311-win_amd64.whl

Download URL tittapy-2.1.0-cp311-cp311-win_amd64.whl
Size 2.4 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
98d6684082cb20a86e4da8231e4a456b5f928d65789e8f0143cd13d616856148
BLAKE2b-256 checksum
How to use checksums
01f3d6ab2f7568765969f96d3d357707ea32bb134d9e73f29a2b4982f16fabcc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / tittapy-2.1.0-cp311-cp311-manylinux_2_34_x86_64.whl

Download URL tittapy-2.1.0-cp311-cp311-manylinux_2_34_x86_64.whl
Size 13.3 MB
Tags CPython 3.11 Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
c7269d305f698e0ac93ad33ace14c20d6c5fa96c2c748aca1be2814ab638027b
BLAKE2b-256 checksum
How to use checksums
d77634be1e1e15f5c2c75cd550113fef4bd807bd13d97b4486c77d3464b92476
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / tittapy-2.1.0-cp311-cp311-macosx_14_0_arm64.whl

Download URL tittapy-2.1.0-cp311-cp311-macosx_14_0_arm64.whl
Size 671.5 kB
Tags CPython 3.11 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
df22e2d92937d035dde9b7fa48a3064b3a3a5159f98f36a13a316911283555a8
BLAKE2b-256 checksum
How to use checksums
c649205be879dacb9353b746f45f36c77934283a7bb4ad5439967a001f456d54
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / tittapy-2.1.0-cp310-cp310-win_amd64.whl

Download URL tittapy-2.1.0-cp310-cp310-win_amd64.whl
Size 2.4 MB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
475c6fc42dfa0ecf3e4aac8825ab44238b1c67eea93e22bc1ec1915949104cc3
BLAKE2b-256 checksum
How to use checksums
c5990f0485498a88c04f68ed755c6ecfc4016b7b23f2fa384baf38b2ce008651
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / tittapy-2.1.0-cp310-cp310-manylinux_2_34_x86_64.whl

Download URL tittapy-2.1.0-cp310-cp310-manylinux_2_34_x86_64.whl
Size 13.3 MB
Tags CPython 3.10 Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
b038d4f9a80f4cbd3b516cdda2d5885316bd4b72fa80644e6044f75e35fc295d
BLAKE2b-256 checksum
How to use checksums
39586f510e8ee091a22350394007c9d9092eb918261497da7bae6990f58c1d1b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / tittapy-2.1.0-cp310-cp310-macosx_14_0_arm64.whl

Download URL tittapy-2.1.0-cp310-cp310-macosx_14_0_arm64.whl
Size 669.6 kB
Tags CPython 3.10 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
14513dd1697802daf5120da91f97f034a4ff1c243ff7948b7dd22a7450f6b43d
BLAKE2b-256 checksum
How to use checksums
a8c3df6d0dad5fd604f9e1bf612a321865f82198e632e6d81fd2b32dd1d37931
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page