See base class.

def _from_binary_idx_e(cls, binary_stream, content_type=None):
    """See base class."""
    #TODO don't save this here and overload later?
    #TODO confirm if this is really generic or is always a file reference
    ''' Undefined - 8
        Length of entry - 2
        Length of content - 2
        Flags - 4
        Content - variable
        VCN of child node - 8 (exists only if flag is set, aligned to a 8 byte boundary)
    '''
    repr_size = cls._REPR.size
    generic, entry_len, cont_len, flags = cls._REPR.unpack(binary_stream[:repr_size])
    vcn_child_node = (None,)

    #if content is known (filename), create a new object to represent the content
    if content_type is AttrTypes.FILE_NAME and cont_len:
        binary_content = FileName.create_from_binary(binary_stream[repr_size:repr_size+cont_len])
    else:
        binary_content = binary_stream[repr_size:repr_size+cont_len].tobytes()
    #if there is a next entry, we need to pad it to a 8 byte boundary
    if flags & IndexEntryFlags.CHILD_NODE_EXISTS:
        temp_size = repr_size + cont_len
        boundary_fix = (entry_len - temp_size) % 8
        vcn_child_node = cls._REPR_VCN.unpack(binary_stream[temp_size+boundary_fix:temp_size+boundary_fix+8])

    nw_obj = cls((generic, entry_len, cont_len, IndexEntryFlags(flags), binary_content, vcn_child_node))

    _MOD_LOGGER.debug("Attempted to unpack Index Entry from \"%s\"\nResult: %s", binary_stream.tobytes(), nw_obj)

    return nw_obj