/// <summary> /// /// </summary> /// <param name="saea"></param> public void SetBuffer(IBufferHandler bufferHandler) { int offset = -1; if (m_freeOffset.TryPop(out offset)) { bufferHandler.SetBuffer(m_bufferBlock, offset, m_bufferSize); } else { throw new InvalidOperationException("No more free offset on this BufferManager."); } }
/// <summary> /// /// </summary> /// <param name="bufferHandler"></param> public void FreeBuffer(IBufferHandler bufferHandler) { m_freeOffset.Push(bufferHandler.Offset); bufferHandler.SetBuffer(null, 0, 0); }