/// <summary> /// <see cref = "FramebufferUpdating" /> 이벤트를 발생시킵니다. /// Raises the <see cref="FramebufferUpdating"/> event. /// </summary> /// <param name="e"> /// The event arguments. /// </param> protected virtual void OnFramebufferUpdating(FramebufferUpdatingEventArgs e) { var ev = this.FramebufferUpdating; if (ev != null) { ev(this, e); } }
private bool FramebufferSendChanges() { var e = new FramebufferUpdatingEventArgs(); lock (this.FramebufferUpdateRequestLock) { if (this.FramebufferUpdateRequest != null) { var fbSource = this.fbSource; if (fbSource != null) { var newFramebuffer = fbSource.Capture(); if (newFramebuffer != null && newFramebuffer != this.Framebuffer) { this.Framebuffer = newFramebuffer; } } this.OnFramebufferCapturing(); this.OnFramebufferUpdating(e); if (!e.Handled) { if (this.fbuAutoCache == null || this.fbuAutoCache.Framebuffer != this.Framebuffer) { this.fbuAutoCache = this.CreateFramebufferCache(this.Framebuffer, this.logger); } e.Handled = true; e.SentChanges = this.fbuAutoCache.RespondToUpdateRequest(this); } } } return(e.SentChanges); }