To avoid copying data more than necessary, it would be useful to have to the 'Elements' array (of type T2DBooleanArray). It must not be a direct (but readonly!) access to the FElements field, but some pointer to the raw 2D data would be nice. With the current implementation this is not possible due to the fact that the definition:
T2DBooleanArray = array of array of Boolean;
don't yield a linear data field. This would not only result in a more compact memory (with less fragmentation and faster operation), but also increase the usability.
To avoid copying data more than necessary, it would be useful to have to the 'Elements' array (of type T2DBooleanArray). It must not be a direct (but readonly!) access to the FElements field, but some pointer to the raw 2D data would be nice. With the current implementation this is not possible due to the fact that the definition:
T2DBooleanArray = array of array of Boolean;
don't yield a linear data field. This would not only result in a more compact memory (with less fragmentation and faster operation), but also increase the usability.