Fove SDK  v0.16.0
Public Member Functions | Static Public Member Functions | List of all members
Fove::Headset Class Reference

Main API for using headsets. More...

#include <FoveAPI.h>

Inheritance diagram for Fove::Headset:
Inheritance graph
[legend]
Collaboration diagram for Fove::Headset:
Collaboration graph
[legend]

Public Member Functions

 Headset ()=default
 Creates an empty headset. More...
 
 Headset (Fove_Headset &headset)
 Creates a headset from an existing C API object. More...
 
 Headset (Headset &&other)
 Move constructs a headset. More...
 
 ~Headset ()
 Destroys the headset, releasing any resources. More...
 
Result< EyecheckEyesClosed ()
 Wraps fove_Headset_checkEyesClosed()
 
Result< EyecheckEyesTracked ()
 Wraps fove_Headset_checkEyesTracked()
 
Result checkSoftwareVersions ()
 Wraps fove_Headset_checkSoftwareVersions()
 
Result< CompositorcreateCompositor ()
 Creates a new compositor object.
 
Result destroy ()
 Destroys the headset, releasing resources. More...
 
Result ensureEyeTrackingCalibration ()
 Wraps fove_Headset_ensureEyeTrackingCalibration()
 
Result< Stereo< Matrix44 > > getEyeToHeadMatrices ()
 Wraps fove_Headset_getEyeToHeadMatrices()
 
Result< GazeConvergenceDatagetGazeConvergence ()
 Wraps fove_Headset_getGazeConvergence()
 
Result< Stereo< GazeVector > > getGazeVectors ()
 Wraps fove_Headset_getGazeVectors()
 
Result< Stereo< Vec2 > > getGazeVectors2D ()
 Wraps fove_Headset_getGazeVectors2D()
 
Result< HeadsetHardwareInfogetHeadsetHardwareInfo ()
 Wraps fove_Headset_getHardwareInfo()
 
Result< float > getIOD ()
 Wraps fove_Headset_getIOD()
 
Result< PosegetLatestPose ()
 Wraps fove_Headset_getLatestPose()
 
Result< Stereo< Matrix44 > > getProjectionMatricesLH (const float zNear, const float zFar)
 Wraps fove_Headset_getProjectionMatricesLH()
 
Result< Stereo< Matrix44 > > getProjectionMatricesRH (const float zNear, const float zFar)
 Wraps fove_Headset_getProjectionMatricesRH()
 
Result< Stereo< ProjectionParams > > getRawProjectionValues ()
 Wraps fove_Headset_getRawProjectionValues()
 
Result< ResearchHeadsetgetResearchHeadset (const ResearchCapabilities caps)
 Creates a new research headet. More...
 
Result< VersionsgetSoftwareVersions ()
 Wraps fove_Headset_getSoftwareVersions()
 
Result< bool > isEyeTrackingCalibrated ()
 Wraps fove_Headset_isEyeTrackingCalibrated()
 
Result< bool > isEyeTrackingCalibrating ()
 Wraps fove_Headset_isEyeTrackingCalibrating()
 
Result< bool > isEyeTrackingEnabled ()
 Wraps fove_Headset_isEyeTrackingEnabled()
 
Result< bool > isEyeTrackingReady ()
 Wraps fove_Headset_isEyeTrackingReady()
 
Result< bool > isHardwareConnected ()
 Wraps fove_Headset_isHardwareConnected()
 
Result< bool > isHardwareReady ()
 Wraps fove_Headset_isHardwareReady()
 
Result< bool > isMotionReady ()
 Wraps fove_Headset_isMotionReady()
 
Result< bool > isPositionReady ()
 Wraps fove_Headset_isPositionReady()
 
Headsetoperator= (Headset &&other)
 Destroys the existing headset if any, then moves the one referenced by other, if any, into this object. More...
 
Result startEyeTrackingCalibration (const bool restartIfRunning)
 Wraps fove_Headset_startEyeTrackingCalibration()
 
Result stopEyeTrackingCalibration ()
 Wraps fove_Headset_stopEyeTrackingCalibration()
 
Result tareOrientationSensor ()
 Wraps fove_Headset_tareOrientationSensor()
 
Result tarePositionSensors ()
 Wraps fove_Headset_tarePositionSensors()
 
Result waitForNextEyeFrame ()
 Wraps fove_Headset_waitForNextEyeFrame()
 
- Public Member Functions inherited from Fove::Object< Fove_Headset >
Fove_HeadsetgetCObject () const
 Returns the underlying C type which the caller can use to invoke the C API directly, or null if not valid.
 
bool isValid () const
 Returns true if this object is non-empty. More...
 

Static Public Member Functions

static Result< Headsetcreate (const ClientCapabilities capabilities)
 Creates a new headset object with the given capabitilies.
 

Detailed Description

Main API for using headsets.

This class is a wrapper around the C API's Fove_Headset, and is the main class of the FOVE API.

Constructor & Destructor Documentation

◆ Headset() [1/3]

Fove::Headset::Headset ( )
default

Creates an empty headset.

Please use Headset::create() to create a valid headset.

See also
Headset::create

◆ Headset() [2/3]

Fove::Headset::Headset ( Fove_Headset headset)

Creates a headset from an existing C API object.

This is not normally invoked directly, rather Headset::create(), which wraps this, is typically used.

See also
Headset::create

◆ Headset() [3/3]

Fove::Headset::Headset ( Headset &&  other)

Move constructs a headset.

Parameters
otherMay be empty or non-empty. By return, it will be empty.

◆ ~Headset()

Fove::Headset::~Headset ( )

Destroys the headset, releasing any resources.

Since an error cannot be returned, any error from fove_Headset_destroy will be logged.

Here is the call graph for this function:

Member Function Documentation

◆ destroy()

Result Fove::Headset::destroy ( )

Destroys the headset, releasing resources.

Afer this call, this object will be in an empty state and future calls will fail. This is handled by the destructor, usually the user doesn't need to call this.

Here is the call graph for this function:

◆ getResearchHeadset()

Result<ResearchHeadset> Fove::Headset::getResearchHeadset ( const ResearchCapabilities  caps)

Creates a new research headet.

Keep in mind the research API is meant for researcher use and not for general purpose software. Using this function will limit backwards compatibility.

Here is the call graph for this function:

◆ operator=()

Headset& Fove::Headset::operator= ( Headset &&  other)

Destroys the existing headset if any, then moves the one referenced by other, if any, into this object.

Parameters
otherMay be empty or non-empty. By return, it will be empty.
Here is the call graph for this function: