Exemple #1
0
        /// <summary>
        /// Releases unmanaged and - optionally - managed resources
        /// </summary>
        /// <param name="disposeManaged"><c>true</c> to release both managed and unmanaged resources; <c>false</c> to release
        /// only unmanaged resources.</param>
        protected virtual void Dispose(bool disposeManaged)
        {
            if (!disposeManaged)
            {
                return;
            }

            if (_lightManager != null)
            {
                _lightManager.Dispose();
            }

            if (_refractionManager != null)
            {
                _refractionManager.Dispose();
            }

            if (_sb != null && !_sb.IsDisposed)
            {
                _sb.Dispose();
            }

            if (_drawBufferToWindowSprite != null && !_drawBufferToWindowSprite.IsDisposed)
            {
                _drawBufferToWindowSprite.Dispose();
            }
        }
Exemple #2
0
        /// <summary>
        /// Releases unmanaged and - optionally - managed resources
        /// </summary>
        /// <param name="disposeManaged"><c>true</c> to release both managed and unmanaged resources; <c>false</c> to release
        /// only unmanaged resources.</param>
        protected virtual void Dispose(bool disposeManaged)
        {
            if (!disposeManaged)
            {
                return;
            }

            // Dispose the RenderImage
            try
            {
                if (_ri != null && !_ri.IsDisposed)
                {
                    _ri.Dispose();
                }
            }
            catch (Exception ex)
            {
                const string errmsg = "Failed to dispose `{0}` in `{1}`. Exception: {2}";
                if (log.IsWarnEnabled)
                {
                    log.WarnFormat(errmsg, _ri, this, ex);
                }
                Debug.Fail(string.Format(errmsg, _ri, this, ex));
            }

            // Dispose the SpriteBatch
            try
            {
                if (_sb != null && !_sb.IsDisposed)
                {
                    _sb.Dispose();
                }
            }
            catch (Exception ex)
            {
                const string errmsg = "Failed to dispose `{0}` in `{1}`. Exception: {2}";
                if (log.IsWarnEnabled)
                {
                    log.WarnFormat(errmsg, _ri, this, ex);
                }
                Debug.Fail(string.Format(errmsg, _ri, this, ex));
            }
        }