using UnityEngine; using ETSI.ARF.OpenAPI.WorldAnalysis; using static WorldAnalysisInterface; using System; //Implementation of the WorldAnalysis interface public class WorldAnalysisREST : MonoBehaviour, WorldAnalysisInterface { #region Unity_Methods /// <summary> /// Unity Awake Method /// </summary> protected void Awake() { } /// <summary> /// Unity Start Method /// </summary> protected void Start() { } /// <summary> /// Unity Update Method /// </summary> protected void Update() { } #endregion #region ARF_API public AskFrameRateResult SetPoseEstimationFramerate(string token, PoseConfigurationTrackableType type, EncodingInformationStructure encodingInformation, int minimumFramerate) { return AskFrameRateResult.NOT_SUPPORTED; ///We cannot set any framerate for tracking on ARKit and ARCore } public PoseEstimationResult GetLastPose(string token, Guid uuid, Mode_WorldAnalysis mode, out ETSI.ARF.OpenAPI.WorldAnalysis.Pose pose) { pose = null; return PoseEstimationResult.OK; } public PoseEstimationResult[] GetLastPoses(string token, Guid[] uuids, Mode_WorldAnalysis [] modes, out ETSI.ARF.OpenAPI.WorldAnalysis.Pose[] poses) { poses = null; return null; } public InformationSubscriptionResult SubscribeToPose(string token, Guid uuid, Mode_WorldAnalysis mode, PoseCallback callback, ref int validity, out Guid subscriptionUUID) { subscriptionUUID = Guid.Empty; return InformationSubscriptionResult.OK; } public InformationSubscriptionResult[] SubscribeToPoses(string token, Guid[] uuids, Mode_WorldAnalysis [] modes, PoseCallback callback, ref int validity, out Guid[] subscriptionUUIDs) { subscriptionUUIDs = null; return null; } public InformationSubscriptionResult GetSubsription(string token, Guid subscriptionUUID, out PoseCallback callback, out Guid target, out Mode_WorldAnalysis mode, out int validity) { callback = null; target = Guid.Empty; mode = Mode_WorldAnalysis.TRACKABLES_TO_DEVICE; validity = 0; return InformationSubscriptionResult.OK; } public InformationSubscriptionResult UpdateSubscription(string token, Guid subscriptionUUID, Mode_WorldAnalysis mode, int validity, PoseCallback callback) { return InformationSubscriptionResult.OK; } public InformationSubscriptionResult UnSubscribeToPose(Guid subscriptionUUID) { return InformationSubscriptionResult.OK; } public CapabilityResult GetCapabilities(string token, out Capability[] capabilities) { capabilities = null; return CapabilityResult.OK; } public CapabilityResult GetCapability(string token, Guid uuid, out bool isSupported, out TypeWorldStorage type, out Capability [] capability) { isSupported = false; type = TypeWorldStorage.UNKNOWN; capability = null; return CapabilityResult.OK; } #endregion }