Fove SDK  v0.18.0
FOVE C++ API Documentation

Introduction

This is the documentation for the FOVE C++ API.

This API allows client applications to interface with the FOVE runtime system, including headsets, eye tracking, position tracking, and the compositor.

Also included is a "Research API", which is intended specifically for researchers where the laboratory environment is fully controlled. The research features are not inteded for use by games.

An example of using this API can be found at https://github.com/FoveHMD/FoveCppSample

The C++ API wraps, and includes the FOVE C API. Items within the Fove namespace are part of the wrapper, though many are simply typedefs. Items outside the namespace are part of the C API, though in C++ mode, more features may be added (such as default values for struct members).

The main place to get started is looking at the following classes: Fove::Headset Fove::Compositor

Installation

To use the API, simply drop FoveAPI.h into you project and include it. After that point you will be able to use all capabilities listed here.

To link, simply add the FOVE shared library (or DLL on Windows) to the link libraries for your project.

Requirements

This API requires C++11 or later

Backwards Compatibility

Except where noted (see fove_Headset_getResearchHeadset), the FOVE systen maintains backwards compatibility with old clients.

For example, a v0.15.0 client can talk a a v0.16.0 server.

Forwards compatibility is not provided: if you compile against v0.16.0, end users on older runtimes must update before using.

ABI compatibility is not kept between different versions of this API. This is something we may consider in the future. A client built against v0.15.0 of this API must be recompiled to use v0.16.0 (instead of simply swapping out the new shared library).