203 lines
7.1 KiB
C#
203 lines
7.1 KiB
C#
//======= Copyright (c) Stereolabs Corporation, All rights reserved. ===============
|
|
|
|
|
|
/// <summary>
|
|
/// Holds the ERROR enum returned by various high- and mid-level camera functions, and the Error2Str() method for
|
|
/// converting the errors to human-readible versions for displaying for the user.
|
|
/// </summary>
|
|
public class ZEDLogMessage
|
|
{
|
|
|
|
/// <summary>
|
|
/// Current version of the required SDK plugin as a string. Used to display errors
|
|
/// relating to a missing or mismatched SDK version.
|
|
/// </summary>
|
|
static private string zed_sdk_version
|
|
{
|
|
get
|
|
{
|
|
int major = sl.ZEDCamera.PluginVersion.Major;
|
|
int minor = sl.ZEDCamera.PluginVersion.Minor;
|
|
return "v" + major + "." + minor;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// Error categories returned by various camera functions, most often in GUIMessage.
|
|
/// See ZEDCommon.ERROR_CODE for errors straignt from the SDK.
|
|
/// </summary>
|
|
public enum ERROR
|
|
{
|
|
/// <summary>
|
|
/// The screen resolution is not 16:9.
|
|
/// </summary>
|
|
SCREEN_RESOLUTION,
|
|
/// <summary>
|
|
/// The ZED tracking could not be initialized.
|
|
/// </summary>
|
|
TRACKING_NOT_INITIALIZED,
|
|
/// <summary>
|
|
/// The camera failed to initialize.
|
|
/// </summary>
|
|
CAMERA_NOT_INITIALIZED,
|
|
/// <summary>
|
|
/// The camera has not been initialized yet.
|
|
/// </summary>
|
|
CAMERA_LOADING,
|
|
/// <summary>
|
|
/// SDK module are loading (tracking, object detection...)
|
|
/// </summary>
|
|
SDK_MODULE_LOADING,
|
|
/// <summary>
|
|
/// Could not open the camera.
|
|
/// </summary>
|
|
UNABLE_TO_OPEN_CAMERA,
|
|
/// <summary>
|
|
/// Camera detection issue.
|
|
/// </summary>
|
|
CAMERA_DETECTION_ISSUE,
|
|
/// <summary>
|
|
/// Motion sensor not detected (ZED Mini only).
|
|
/// </summary>
|
|
SENSOR_NOT_DETECTED,
|
|
/// <summary>
|
|
/// Low USB bandwidth.
|
|
/// </summary>
|
|
LOW_USB_BANDWIDTH,
|
|
/// <summary>
|
|
/// SteamVR plugin Camera Rig prefab not found.
|
|
/// </summary>
|
|
VR_CAMERA_RIG_NOT_FOUND,
|
|
/// <summary>
|
|
/// SteamVR plugin Camera Rig controller not found.
|
|
/// </summary>
|
|
VR_CAMERA_RIG_CONTROLLER_NOT_FOUND,
|
|
/// <summary>
|
|
/// A calibration file has been found but no controller/Tracker exists of the file's listed serial number.
|
|
/// </summary>
|
|
PAD_CAMERA_CALIBRATION_MISMATCH,
|
|
/// <summary>
|
|
/// The serial number of the calibration tool does not match any of the current controllers.
|
|
/// </summary>
|
|
PAD_CAMERA_CALIBRATION_NOT_FOUND,
|
|
/// <summary>
|
|
/// At least one VR controller must be detected.
|
|
/// </summary>
|
|
NOT_ENOUGH_PAD_DETECTED,
|
|
/// <summary>
|
|
/// SteamVR Unity plugin hasn't been imported.
|
|
/// </summary>
|
|
STEAMVR_NOT_INSTALLED,
|
|
/// <summary>
|
|
/// Oculus Integration Unity plugin hasn't been imported.
|
|
/// </summary>
|
|
OVR_NOT_INSTALLED,
|
|
/// <summary>
|
|
/// The ZED has been disconnected. (It was connected previously)
|
|
/// </summary>
|
|
ZED_IS_DISCONNECETD,
|
|
/// <summary>
|
|
/// The ZED SDK is not installed or a dependency is missing.
|
|
/// </summary>
|
|
SDK_NOT_INSTALLED,
|
|
/// <summary>
|
|
/// The ZED SDK is installed but it's not the version the Unity plugin requires.
|
|
/// </summary>
|
|
INCORRECT_ZED_SDK_VERSION,
|
|
/// <summary>
|
|
/// The SDK has a missing dependency.
|
|
/// </summary>
|
|
SDK_DEPENDENCIES_ISSUE,
|
|
/// <summary>
|
|
/// Scanned mesh is too small to create a Nav Mesh.
|
|
/// </summary>
|
|
NAVMESH_NOT_GENERATED,
|
|
/// <summary>
|
|
/// The tracking system could not load the spatial memory area file.
|
|
/// </summary>
|
|
TRACKING_BASE_AREA_NOT_FOUND,
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
/// Converts an ERROR enum to a string for displaying to the user. Called by various editor windows.
|
|
/// </summary>
|
|
/// <param name="error">Error type to be converted to a string.</param>
|
|
/// <returns></returns>
|
|
static public string Error2Str(ERROR error)
|
|
{
|
|
switch (error)
|
|
{
|
|
case ERROR.SCREEN_RESOLUTION:
|
|
return "Warning: Screen size should be set to 16:9 aspect ratio";
|
|
|
|
case ERROR.TRACKING_NOT_INITIALIZED:
|
|
return "Error: Unable to initialize Tracking module";
|
|
|
|
case ERROR.CAMERA_NOT_INITIALIZED:
|
|
return "Unable to open camera";
|
|
|
|
case ERROR.UNABLE_TO_OPEN_CAMERA:
|
|
return "Camera not detected";
|
|
|
|
case ERROR.CAMERA_DETECTION_ISSUE:
|
|
return "Unable to open camera";
|
|
|
|
case ERROR.SENSOR_NOT_DETECTED:
|
|
return "Camera motion sensor not detected";
|
|
|
|
case ERROR.LOW_USB_BANDWIDTH :
|
|
return "Low USB bandwidth";
|
|
|
|
case ERROR.CAMERA_LOADING:
|
|
return "Loading camera...";
|
|
|
|
case ERROR.SDK_MODULE_LOADING:
|
|
return " Loading modules...";
|
|
|
|
case ERROR.VR_CAMERA_RIG_NOT_FOUND:
|
|
return "Warning: No SteamVR [Camera Rig] object found. Make sure you attach the CameraRig SteamVR Prefab in the project to be able to use a VR controller.\n " +
|
|
"Otherwise, make sure the tracking is activated in the ZED Manager interface";
|
|
|
|
case ERROR.VR_CAMERA_RIG_CONTROLLER_NOT_FOUND:
|
|
return "Warning: At least one controller is recommended for the external camera";
|
|
|
|
case ERROR.PAD_CAMERA_CALIBRATION_MISMATCH:
|
|
return "Warning: VR Controller and ZED Camera must be calibrated before use with Stereolabs' GreenScreen Calibration tool). " +
|
|
"\n The controller/Tracker in the calibration file is not present.";
|
|
|
|
case ERROR.PAD_CAMERA_CALIBRATION_NOT_FOUND:
|
|
return "Warning: VR Controller and ZED Camera must be calibrated before use with Stereolabs' GreenScreen Calibration tool). " +
|
|
"\n No calibration file has been detected.";
|
|
|
|
case ERROR.NOT_ENOUGH_PAD_DETECTED:
|
|
return "Warning: At least one controller must be detected. Number of devices detected: ";
|
|
|
|
case ERROR.STEAMVR_NOT_INSTALLED:
|
|
return "Warning: SteamVR is not installed.";
|
|
|
|
case ERROR.OVR_NOT_INSTALLED:
|
|
return "Warning: OVR Plugin is not installed.";
|
|
|
|
case ERROR.ZED_IS_DISCONNECETD:
|
|
return "Camera disconnected";
|
|
|
|
case ERROR.SDK_NOT_INSTALLED:
|
|
return "ZED SDK not installed";
|
|
|
|
case ERROR.SDK_DEPENDENCIES_ISSUE:
|
|
return "The ZED plugin cannot be loaded. \n Please check that you have ZED SDK "+ zed_sdk_version +" installed" +
|
|
"\n\n If the problem persists, please contact our support team at support@stereolabs.com\n";
|
|
case ERROR.NAVMESH_NOT_GENERATED:
|
|
return "The NavMesh cannot be generated. Please change the settings of the Navigation Agent, or scan a wider zone.";
|
|
case ERROR.TRACKING_BASE_AREA_NOT_FOUND:
|
|
return "The tracking could not load the spatial memory area file.";
|
|
|
|
|
|
default:
|
|
return "Unknown error";
|
|
}
|
|
|
|
}
|
|
|
|
}
|