code: private void _encodeBase64 (final char ch, final ByteBuffer out)
    {
      if (!m_bBase64mode)
        out.put (m_nShift);
      m_bBase64mode = true;
      m_nBitsToOutput += 16;
      while (m_nBitsToOutput >= 6)
      {
        m_nBitsToOutput -= 6;
        m_nSextet += (ch >> m_nBitsToOutput);
        m_nSextet &= 0x3F;
        out.put (m_aBase64.getChar (m_nSextet));
        m_nSextet = 0;
      }
      m_nSextet = (ch << (6 - m_nBitsToOutput)) & 0x3F;
    }
docs: <p>
  Writes the bytes necessary to encode a character in <i>base 64 mode</i>.
  All bytes which are fully determined will be written. The fields
  <code>bitsToOutput</code> and <code>sextet</code> are used to remember the
  bytes not yet fully determined.
  </p>
  
  @param out
  @param ch