public StreamingManager(ISceneResourceRequestHandler requestHandler, IStreamingGoManager streamingGo, StreamingData sceneDescription, ScenesLightmapData.MeshRecords scenesLightmapRecords, ScenesIndoorCullData.IndoorCullRecords scenesIndoorCullRecords, WorldCompositionParam param, int preloadSceneCount) { _requestHandler = requestHandler; _sceneDescription = sceneDescription; _scenesLightmapRecords = scenesLightmapRecords; _scenesIndoorCullRecords = scenesIndoorCullRecords; _concurrentCount = preloadSceneCount; _worldComposition = new WorldCompositionManager(this, param); _streamingGo = streamingGo ?? new StreamingGoByScene(); _streamingGo.SetResourceHandler(this); _triggerObjectManager = SingletonManager.Get <TriggerObjectManager>(); if (_sceneDescription != null) { var count = _sceneDescription.Scenes.Count; for (int i = 0; i < count; i++) { _sceneIndex.Add(_sceneDescription.Scenes[i].SceneName, i); } } _requestHandler.SceneLoaded += SceneLoaded; _requestHandler.SceneUnloaded += SceneUnloaded; _requestHandler.GoLoaded += GoLoaded; _requestHandler.GoUnloaded += GoUnloaded; }
public StreamingManager(ISceneResourceRequestHandler requestHandler, IStreamingGoManager streamingGo, StreamingData sceneDescription, WorldCompositionParam param, int preloadSceneCount) { _requestHandler = requestHandler; _sceneDescription = sceneDescription; _concurrentCount = preloadSceneCount; _worldComposition = new WorldCompositionManager(this, param); _streamingGo = streamingGo ?? new StreamingGoByScene(); _streamingGo.SetResourceHandler(this); if (_sceneDescription != null) { var count = _sceneDescription.Scenes.Count; for (int i = 0; i < count; i++) { _sceneIndex.Add(_sceneDescription.Scenes[i].SceneName, i); } } _requestHandler.SceneLoaded += SceneLoaded; _requestHandler.SceneUnloaded += SceneUnloaded; _requestHandler.GoLoaded += GoLoaded; _requestHandler.GoUnloaded += GoUnloaded; }
protected void Add(StreamingData <EXTRA> data) { try { using (locker.WriterLock()) { this.streams.Add(data); } } catch (ApplicationException ex) { ErrorCode.LockFailedError.Throw(ex); } }
public StreamingManager(ResourceRequestCache requestHandler, StreamingData sceneDescription) { _requestHandler = requestHandler; _sceneDescription = sceneDescription; var count = _sceneDescription.Scenes.Count; for (int i = 0; i < count; i++) { _sceneIndex.Add(_sceneDescription.Scenes[i].SceneName, i); } _requestHandler.SceneLoaded += SceneLoaded; _requestHandler.SceneUnloaded += SceneUnloaded; }
public void Add(HttpResponse response, AuthenticationData authData, Character chara, Action onRemoved) { this.Remove(s => s.ExtraData.Id == chara.Id); var data = new StreamingData <CharacterCache> { AuthData = authData, Response = response, ExtraData = chara.ToCache(), }; if (onRemoved != null) { data.Removed += (sender, e) => onRemoved(); } this.Add(data); }
public void Add(HttpResponse response, Action onRemoved) { this.CleanAbortedResponses(); var data = new StreamingData <object> { AuthData = null, Response = response, ExtraData = null, }; if (onRemoved != null) { data.Removed += (sender, e) => onRemoved(); } this.Add(data); }
public override void ParseConfig(string xml) { Data = XmlConfigParser <StreamingData> .Load(xml); var count = Data.Scenes.Count; for (int i = 0; i < count; i++) { var scene = Data.Scenes[i]; scene.Index = i; var goCount = scene.Objects.Count; for (int j = 0; j < goCount; j++) { scene.Objects[j].ConvertFromSerialization(scene); scene.Objects[j].Index = j; } } }
/// <summary> /// Настройка видео-аудио конфигурации /// </summary> public static async Task <string> SetStreamConfigFromBody([FromBody] StreamingData data) { _logger.Info("[SetStreamConfigFromBody] Method started"); try { using var xmlData = Converters.ToStringContent(data, "StreamingChannel"); var response = await WebClient.Client.PutAsync("Streaming/channels/101", xmlData).Result.Content.ReadAsStringAsync(); var jsonResponse = Converters.XmlToJson(response); var responseData = JsonConvert.DeserializeObject <CamResponses>(jsonResponse); _logger.Info("[SetTimeFromBody] Method has complete"); return($"{responseData.responseStatus.StatusString,-10} Request url {responseData.responseStatus.RequestUrl}"); } catch (Exception e) { _logger.Error($"[SetStreamConfigFromBody] Method failed. \nError message: {e.Message}"); return(e.Message); } }
public override void ParseConfig(string xml) { StreamingScene scene = StreamingSerialization.DeserializeByString <StreamingScene>(xml); //StreamingScene scene = XmlConfigParser<StreamingScene>.Load(xml); foreach (var obj in scene.Objects) { foreach (var compData in obj.CompDataList) { compData.monoClassFullName.GetTypeByStr(); } } if (Data == null) { Data = new StreamingData(); } Data.AddScene(scene); }
public override void ParseConfig(string xml) { Data = XmlConfigParser <StreamingData> .Load(xml); }
private void Handler(object sender, StreamingData e) { _exporter.Export(new[] { e }); }