code: @Nullable
    public ELEMENTTYPE take ()
    {
      final int nAvailable = m_nAvailable;
      if (nAvailable == 0)
        return null;
  
      int nIndex = m_nWritePos - nAvailable;
      if (nIndex < 0)
        nIndex += m_nCapacity;
  
      final Object ret = m_aElements[nIndex];
      m_nAvailable--;
      return GenericReflection.uncheckedCast (ret);
    }
docs: Take an element from the ring buffer.
  
  @return <code>null</code> if no more element is available or if the current
  element is <code>null</code>.