/// <summary>
        /// Releases resources associated with the object.
        /// </summary>
        /// <param name="disposing">true if the object is being disposed; false if the object is being finalized.</param>
        protected override void Dispose(Boolean disposing)
        {
            if (Disposed)
            {
                return;
            }

            if (disposing)
            {
                if (!Ultraviolet.Disposed)
                {
                    Ultraviolet.QueueWorkItem((state) =>
                    {
                        gl.DeleteProgram(((OpenGLShaderProgram)state).program);
                        gl.ThrowIfError();
                    }, this);
                }

                if (programOwnsShaders)
                {
                    SafeDispose.Dispose(vertexShader);
                    SafeDispose.Dispose(fragmentShader);
                }
            }

            base.Dispose(disposing);
        }
Exemple #2
0
        /// <summary>
        /// Releases resources associated with the object.
        /// </summary>
        /// <param name="disposing">true if the object is being disposed; false if the object is being finalized.</param>
        protected override void Dispose(Boolean disposing)
        {
            if (Disposed)
            {
                return;
            }

            if (disposing)
            {
                if (!Ultraviolet.Disposed)
                {
                    ((OpenGLUltravioletGraphics)Ultraviolet.GetGraphics()).UnbindTexture(this);
                }

                if (willNotBeSampled)
                {
                    if (!Ultraviolet.Disposed && renderbuffer != 0)
                    {
                        Ultraviolet.QueueWorkItem((state) =>
                        {
                            gl.DeleteRenderBuffers(((OpenGLRenderBuffer2D)state).renderbuffer);
                            gl.ThrowIfError();
                        }, this);
                    }
                }
                else
                {
                    SafeDispose.Dispose(texture);
                }
            }

            base.Dispose(disposing);
        }
Exemple #3
0
        /// <summary>
        /// Releases resources associated with the object.
        /// </summary>
        /// <param name="disposing">true if the object is being disposed; false if the object is being finalized.</param>
        protected override void Dispose(Boolean disposing)
        {
            if (Disposed)
            {
                return;
            }

            if (disposing)
            {
                var glname = program;
                if (glname != 0 && !Ultraviolet.Disposed)
                {
                    Ultraviolet.QueueWorkItem((state) =>
                    {
                        gl.DeleteProgram(glname);
                        gl.ThrowIfError();
                    }, this, WorkItemOptions.ReturnNullOnSynchronousExecution);
                }

                if (programOwnsShaders)
                {
                    SafeDispose.Dispose(vertexShader);
                    SafeDispose.Dispose(fragmentShader);
                }

                program = 0;
            }

            base.Dispose(disposing);
        }
        /// <summary>
        /// Releases resources associated with the object.
        /// </summary>
        /// <param name="disposing"><see langword="true"/> if the object is being disposed;
        /// <see langword="false"/> if the object is being finalized.</param>
        protected virtual void Dispose(Boolean disposing)
        {
            if (Disposed)
            {
                return;
            }

            if (disposing)
            {
                SafeDispose.Dispose(GetUI());
                SafeDispose.Dispose(GetInput());
                SafeDispose.Dispose(GetContent());
                SafeDispose.Dispose(GetPlatform());
                SafeDispose.Dispose(GetGraphics());
                SafeDispose.Dispose(GetAudio());
            }

            WaitForPendingTasks(true);

            this.Disposing = true;

            ProcessWorkItems();
            OnShutdown();

            ChangeSynchronizationContext(null);

            this.Disposed  = true;
            this.Disposing = false;

            ReleaseContext();
        }
        /// <summary>
        /// Releases resources associated with the object.
        /// </summary>
        /// <param name="disposing">true if the object is being disposed; false if the object is being finalized.</param>
        protected override void Dispose(Boolean disposing)
        {
            if (Disposed)
            {
                return;
            }

            if (samplerObjects != null)
            {
                for (int i = 0; i < samplerObjects.Length; i++)
                {
                    SafeDispose.Dispose(samplerObjects[i]);
                }
            }

            if (gl.Initialized)
            {
                gl.Uninitialize();
            }

            SDL_GL_DeleteContext(context);
            context = IntPtr.Zero;

            base.Dispose(disposing);
        }
Exemple #6
0
 /// <summary>
 /// Releases resources associated with this object.
 /// </summary>
 /// <param name="disposing"><see langword="true"/> if the object is being disposed; <see langword="false"/> if the object is being finalized.</param>
 private void Dispose(Boolean disposing)
 {
     if (disposing && !disposed)
     {
         SafeDispose.Dispose(spriteBatch);
     }
     disposed = true;
 }
Exemple #7
0
 /// <summary>
 /// Releases resources associated with this object.
 /// </summary>
 /// <param name="disposing"><see langword="true"/> if the object is being disposed; <see langword="false"/> if the object is being finalized.</param>
 protected override void Dispose(Boolean disposing)
 {
     if (disposing && !Disposed)
     {
         SafeDispose.Dispose(screenStacks);
     }
     base.Dispose(disposing);
 }
Exemple #8
0
 protected override void Dispose(Boolean disposing)
 {
     if (disposing)
     {
         SafeDispose.Dispose(content);
     }
     base.Dispose(disposing);
 }
Exemple #9
0
 /// <summary>
 /// Releases resources associated with the object.
 /// </summary>
 /// <param name="disposing"><see langword="true"/> if the object is being disposed; <see langword="false"/> if the object is being finalized.</param>
 protected virtual void Dispose(Boolean disposing)
 {
     if (disposing)
     {
         SafeDispose.Dispose(txtWriter);
         SafeDispose.Dispose(strWriter);
     }
 }
Exemple #10
0
 /// <summary>
 /// Releases resources associated with the object.
 /// </summary>
 /// <param name="disposing"><see langword="true"/> if the object is being disposed; <see langword="false"/> if the object is being finalized.</param>
 protected override void Dispose(Boolean disposing)
 {
     if (disposing)
     {
         SafeDispose.Dispose(texture);
     }
     base.Dispose(disposing);
 }
 /// <inheritdoc/>
 protected override void Dispose(Boolean disposing)
 {
     if (disposing)
     {
         SafeDispose.Dispose(escMenuDialog);
     }
     base.Dispose(disposing);
 }
Exemple #12
0
 /// <inheritdoc/>
 protected override void Dispose(Boolean disposing)
 {
     if (disposing)
     {
         SafeDispose.Dispose(screen);
     }
     base.Dispose(disposing);
 }
Exemple #13
0
 protected override void Dispose(Boolean disposing)
 {
     if (disposing)
     {
         SafeDispose.Dispose(songPlayer);
         SafeDispose.Dispose(contentManager);
     }
     base.Dispose(disposing);
 }
Exemple #14
0
 /// <inheritdoc/>
 protected override void Dispose(Boolean disposing)
 {
     if (disposing)
     {
         SafeDispose.Dispose(this.view);
         SafeDispose.Dispose(this.localContent);
     }
     base.Dispose(disposing);
 }
 /// <inheritdoc/>
 protected override void Dispose(Boolean disposing)
 {
     if (disposing)
     {
         SafeDispose.Dispose(compositor);
     }
     SDL.DestroyWindow(ptr);
     base.Dispose(disposing);
 }
Exemple #16
0
 /// <inheritdoc/>
 protected override void Dispose(Boolean disposing)
 {
     if (disposing)
     {
         SafeDispose.Dispose(spriteBatch);
         SafeDispose.Dispose(content);
         SafeDispose.Dispose(blankTexture);
     }
     base.Dispose(disposing);
 }
Exemple #17
0
 /// <inheritdoc/>
 protected override void Dispose(Boolean disposing)
 {
     if (disposing)
     {
         SafeDispose.Dispose(renderTarget);
         SafeDispose.Dispose(colorBuffer);
         SafeDispose.Dispose(depthBuffer);
         SafeDispose.Dispose(stencilBuffer);
     }
     base.Dispose(disposing);
 }
Exemple #18
0
        /// <inheritdoc/>
        protected override void Dispose(Boolean disposing)
        {
            if (disposing)
            {
                SafeDispose.Dispose(spriteBatch);
                SafeDispose.Dispose(renderTargetPool);

                registeredElements.Clear();
            }
            base.Dispose(disposing);
        }
Exemple #19
0
 /// <inheritdoc/>
 protected override void Dispose(Boolean disposing)
 {
     if (disposing)
     {
         // We created the texture, so it isn't managed by the ContentManager.
         // We own it, so we need to dispose of it ourselves!
         SafeDispose.Dispose(texture);
         SafeDispose.Dispose(content);
     }
     base.Dispose(disposing);
 }
Exemple #20
0
 /// <inheritdoc/>
 protected override void Dispose(Boolean disposing)
 {
     if (disposing)
     {
         foreach (var device in devices)
         {
             SafeDispose.Dispose(device);
         }
     }
     base.Dispose(disposing);
 }
        /// <summary>
        /// Releases resources associated with the object.
        /// </summary>
        /// <param name="disposing">true if the object is being disposed; false if the object is being finalized.</param>
        protected override void Dispose(bool disposing)
        {
            if (Disposed)
            {
                return;
            }

            SafeDispose.Dispose(nativesurf);

            base.Dispose(disposing);
        }
        /// <summary>
        /// Clean up any resources being used.
        /// </summary>
        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
        protected override void Dispose(Boolean disposing)
        {
            if (disposing)
            {
                SafeDispose.Dispose(components);
                SafeDispose.Dispose(uv);

                timingLogic = null;
            }
            base.Dispose(disposing);
        }
Exemple #23
0
        /// <inheritdoc/>
        protected override void Dispose(Boolean disposing)
        {
            disposed = true;

            if (disposing)
            {
                SafeDispose.Dispose(source);
            }

            base.Dispose(disposing);
        }
        /// <summary>
        /// Clean up any resources being used.
        /// </summary>
        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
        protected override void Dispose(Boolean disposing)
        {
            if (disposing)
            {
                SafeDispose.Dispose(tickTimer);
                SafeDispose.Dispose(components);
                SafeDispose.Dispose(uv);

                hostcore = null;
            }
            base.Dispose(disposing);
        }
Exemple #25
0
 /// <inheritdoc/>
 protected override void Dispose(Boolean disposing)
 {
     if (disposing)
     {
         SafeDispose.Dispose(rbufferDepth);
         SafeDispose.Dispose(rbufferColor);
         SafeDispose.Dispose(rtarget);
         SafeDispose.Dispose(spriteBatch);
         SafeDispose.Dispose(content);
     }
     base.Dispose(disposing);
 }
Exemple #26
0
 /// <summary>
 /// Clean up any resources being used.
 /// </summary>
 /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
 protected override void Dispose(bool disposing)
 {
     if (disposing)
     {
         if (uv != null && !uv.Disposed)
         {
             DestroyUltravioletWindow();
         }
         SafeDispose.Dispose(components);
     }
     base.Dispose(disposing);
 }
Exemple #27
0
        /// <summary>
        /// Releases resources associated with this object.
        /// </summary>
        /// <param name="disposing"><see langword="true"/> if the object is being disposed; <see langword="false"/> if the object is being finalized.</param>
        private void Dispose(Boolean disposing)
        {
            if (disposing && !disposed)
            {
                foreach (var kvp in screenStacks)
                {
                    kvp.Value.Dispose();
                }

                SafeDispose.Dispose(spriteBatch);
            }

            disposed = true;
        }
        /// <summary>
        /// Releases resources associated with the object.
        /// </summary>
        /// <param name="disposing"><see langword="true"/> if the object is being disposed; <see langword="false"/> if the object is being finalized.</param>
        protected override void Dispose(Boolean disposing)
        {
            if (Disposed)
            {
                return;
            }

            if (ownsTexture)
            {
                SafeDispose.Dispose(texture);
            }

            base.Dispose(disposing);
        }
Exemple #29
0
        protected override void Dispose(Boolean disposing)
        {
            if (disposing)
            {
                for (int i = 0; i < soundEffectPlayers.Length; i++)
                {
                    SafeDispose.Dispose(soundEffectPlayers[i]);
                }

                SafeDispose.Dispose(spriteBatch);
                SafeDispose.Dispose(content);
            }
            base.Dispose(disposing);
        }
        /// <inheritdoc/>
        protected override void Dispose(Boolean disposing)
        {
            if (disposing)
            {
                SafeDispose.Dispose(rtSceneDepthStencil);
                SafeDispose.Dispose(rtSceneColor);
                SafeDispose.Dispose(rtScene);

                SafeDispose.Dispose(rtInterfaceDepthStencil);
                SafeDispose.Dispose(rtInterfaceColor);
                SafeDispose.Dispose(rtInterface);

                SafeDispose.Dispose(rtCompositionColor);
                SafeDispose.Dispose(rtComposition);

                SafeDispose.Dispose(spriteBatch);
            }
            base.Dispose(disposing);
        }