kim@wayne.UUCP (Kim Helliwell) (08/26/88)
I need help with optimizing the List Manager call, LSetCell(). This call is slow because the List Manager is set up to handle "cells" which can vary in size. It presumably has to move memory around a lot and calculate some offsets every time it is called in order to accommodate the new data. I have an application in which the size of every cell is a known constant, and it seems to me to be silly to spend extra time reallocating blocks in order to move memory around when the size of the block and the offsets are predictable in advance from the size of the list itself. So, I would like to write my own LSetCell() to optimize for my special case. I understand that I would have to allocate the DataHandle field and the array of offsets. There is also a field called MaxIndex, which appears to be needed, but I am not sure how it is used. Does anyone know what MaxIndex is for? Are there any other pitfalls I would run into in writing my own function? One possible one is what to do when columns are added to the list after data is already stored in it. Adding rows would be difficult, too, but not as much. Any others? -- "An armed society is a polite society." Kim Helliwell