def pop_primitive_array()

in tools/cloud/vision_system_data_serializer.py [0:0]


    def pop_primitive_array(self, struct_type, length):
        dummy = struct.pack(struct_type, 0)
        alignment = self.get_alignment(len(dummy))
        aligned_size = len(dummy) * length + alignment
        if len(self.buffer) < aligned_size:
            raise Exception("out of data")
        self.last_data_size = len(dummy)
        self.realign(alignment)
        raw_bytes = self.buffer[0 : len(dummy) * length]
        self.buffer = self.buffer[len(dummy) * length :]
        self.current_position += len(dummy) * length
        return list(struct.unpack(str(length) + struct_type, raw_bytes))