Example #1
0
    def Parse(buffer: io.BytesIO, length: int = 0):
        if (isinstance(buffer, io.BytesIO) is not True):
            raise TypeError("Expecting  buffer type  but {0} given".format(
                type(buffer)))
        #Start bytes parsing
        header = None
        current_pos = buffer.tell()
        buffer.seek(0, io.SEEK_END)
        length_from_pos = buffer.tell()
        buffer.seek(current_pos, io.SEEK_SET)

        if (length_from_pos > 0):
            reader = BinaryReader(buffer)
            major_value = buffer.Read8Bits()
            minor_value = buffer.Read8Bits()
            build_value = buffer.Read16Bits()

            version = Version(major_value, minor_value, build_value)

            header = Header(version=version, )

        return header