/// <summary> /// Successful FindMarker request callback function. /// </summary> /// <param name="response">FindMarker response.</param> public void FindMarkerCallbackOK(WSMarkerResponse response) { DateTime now = DateTime.Now.ToUniversalTime(); Marker marker = new Marker(response.data.markerId, response.data.markerDescriptor, response.data.markerCustomData, DateTime.Parse(response.data.markerUpdateDate), now, now, DateTime.Parse(response.data.publishedFrom), DateTime.Parse(response.data.publishedTo), response.data.cacheEnabled, new MarkerDatabase(response.data.markerDatabase.id, response.data.markerDatabase.code, response.data.markerDatabase.customData, response.data.markerDatabase.cloud, now, now), response.data.arLogoEnabled); string appdatapath = RecognitionManager.GetAppDataPath(); Thread thread = new Thread(() => SaveLocalMarkerThread(marker, true, true, appdatapath, true)); thread.Start(); //SaveLocalMarker(marker, true, true); _findMarkerRequestRunning = false; Thread thread2 = new Thread(() => _dataProviderListener.FindMarkerCallback(marker)); thread2.Start(); //_dataProviderListener.FindMarkerCallback(marker); }
/// <summary> /// Successful GetMarker request callback function. /// </summary> /// <param name="response">GetMarker response.</param> public void GetMarkerCallbackOK(WSMarkerResponse response) { DateTime now = DateTime.Now.ToUniversalTime(); Marker cloudMarker = new Marker(response.data.markerId, response.data.markerDescriptor, response.data.markerCustomData, DateTime.Parse(response.data.markerUpdateDate), now, now, DateTime.Parse(response.data.publishedFrom), DateTime.Parse(response.data.publishedTo), response.data.cacheEnabled, new MarkerDatabase(response.data.markerDatabase.id, response.data.markerDatabase.code, response.data.markerDatabase.customData, response.data.markerDatabase.cloud, now, now), response.data.arLogoEnabled); if (cloudMarker.IsPublished()) { if (cloudMarker.markerDescriptor != null) { SaveLocalMarker(cloudMarker, true, _cachedMarker != null, true); } else { _localRecognitionService.SaveMarker(cloudMarker, _cachedMarker != null); } _cachedMarker = cloudMarker; _dataProviderListener.GetMarkerCallback(_cachedMarker); } else { if (_cachedMarker != null) { _localRecognitionService.DeleteMarker(_cachedMarker.markerId); } _cachedMarker = null; } _getMarkerRequestRunning = false; }