public virtual ByteArrayBuffer ToWriteBuffer(Pointer4 pointer)
        {
            ByteArrayBuffer buffer = new ByteArrayBuffer(pointer.Length());

            _writeBuffer.MergeChildren(this, pointer.Address(), WriteBufferOffset());
            WriteObjectClassID(buffer, ClassMetadata().GetID());
            buffer.WriteByte(HandlerRegistry.HandlerVersion);
            buffer.WriteInt(AspectCount());
            buffer.WriteBitMap(_nullBitMap);
            _writeBuffer.TransferContentTo(buffer);
            return(buffer);
        }