Exemplo n.º 1
0
        public void UpdateFilter()
        {
            var oldFilter = m_Filter;

            DisposeHelper.Dispose(ref m_SourceFilter);

            try
            {
                var input = MakeInitialFilter()
                            .MakeTagged();

                m_Filter = m_Chain
                           .Process(input)
                           .Apply(FinalizeOutput)
                           .Compile()
                           .InitializeFilter();
            }
            catch (Exception ex)
            {
                m_Filter = HandleError(ex).Compile().InitializeFilter();
                m_Filter.AddLabel(ErrorMessage(ex));
            }
            finally
            {
                DisposeHelper.Dispose(ref oldFilter);
            }
        }