Example #1
0
        public void Dispose()
        {
            AlembicStream.s_streams.Remove(this);
            if (m_abcTreeRoot != null)
            {
                m_abcTreeRoot.Dispose();
                m_abcTreeRoot = null;
            }

            if (abcIsValid)
            {
                m_context.Destroy();
            }
        }
Example #2
0
        public void Dispose()
        {
            AlembicStream.s_Streams.Remove(this);
            if (alembicTreeRoot != null)
            {
                alembicTreeRoot.Dispose();
                alembicTreeRoot = null;
            }

            if (AbcIsValid())
            {
                AbcAPI.aiDestroyContext(m_Context);
                m_Context = default(AbcAPI.aiContext);
            }
        }
        // --- method overrides ---

        protected override void Dispose(bool disposing)
        {
            if (disposing)
            {
                if (_alembicTreeRoot != null)
                {
                    _alembicTreeRoot.Dispose();
                    _alembicTreeRoot = null;
                }
            }

            if (AbcIsValid())
            {
                if (m_updateBegan)
                {
                    AbcAPI.aiUpdateSamplesEnd(m_abc);
                }
                AbcAPI.aiDestroyContext(m_abc);
                m_abc = default(AbcAPI.aiContext);
            }

            base.Dispose(disposing);
        }