| 2775 | |
| 2776 | # Set the array |
| 2777 | def set(self, values): |
| 2778 | assert (values is not None), "Invalid values parameter!" |
| 2779 | if values is None: |
| 2780 | raise ValueError("Invalid values parameter!") |
| 2781 | |
| 2782 | assert ((self._buffer.offset + self.fbe_offset) <= self._buffer.size), "Model is broken!" |
| 2783 | if (self._buffer.offset + self.fbe_offset) > self._buffer.size: |
| 2784 | return 0 |
| 2785 | |
| 2786 | size = 0 |
| 2787 | self._model.fbe_offset = self.fbe_offset |
| 2788 | for i in range(min(len(values), self._size)): |
| 2789 | offset = self._model.set(values[i]) |
| 2790 | self._model.fbe_shift(offset) |
| 2791 | size += offset |
| 2792 | return size |
| 2793 | |
| 2794 | |
| 2795 | # Fast Binary Encoding vector final model |