/// <summary> /// Get the current version of the active Fove client library. This returns "[major].[minor].[build]". /// </summary> /// <returns>A string representing the current client library version.</returns> public string GetClientVersion() { SFVR_Versions versions; _sHeadset.GetSoftwareVersions(out versions); string result = "" + versions.clientMajor + "." + versions.clientMinor + "." + versions.clientBuild; return(result); }
/// <summary> /// Force the FoveClient to reload its underlying connection to the SDK. This should never be necessary, but if /// for some reason you need to change settings and reload the base interface, here is where you would do that. /// </summary> public void ReloadFoveClient() { EFVR_ClientCapabilities capabilities = 0; if (gaze) { capabilities |= EFVR_ClientCapabilities.Gaze; } if (orientation) { capabilities |= EFVR_ClientCapabilities.Orientation; } if (position) { capabilities |= EFVR_ClientCapabilities.Position; } _sHeadset = new FVRHeadset(capabilities); Console.WriteLine("_sHeadset: " + _sHeadset); //Check the software versions and spit out an error if the client is newer than the runtime var softwareVersionOkay = _sHeadset.CheckSoftwareVersions(); if (softwareVersionOkay != EFVR_ErrorCode.None) { Debug.LogWarning("FoveInterface failed software version check"); if (softwareVersionOkay == EFVR_ErrorCode.Connect_RuntimeVersionTooOld) { SFVR_Versions versions; ReportErrorCodeIfNotNone(_sHeadset.GetSoftwareVersions(out versions), "GetSoftwareVersions"); string client = "" + versions.clientMajor + "." + versions.clientMinor + "." + versions.clientBuild; string service = "" + versions.runtimeMajor + "." + versions.runtimeMinor + "." + versions.runtimeBuild; Debug.LogError("Please update your FOVE runtime: (client - " + client + " | runtime - " + service + ")"); } } _sIsStaticInitialized = true; }