The NI_ChannelLength is a handy property, written to each channel in a TDMS file that can be read to tell you the number of samples in that channel, without having to read all the samples and do an array size operation on it. Having this in a property can also be useful for programs like DIadem or the DataFinder tookit which index these properties.
This idea is to have an option to add a few more properties built into the TDMS write operation. It would be best if this were an option given to the TDMS Open, which is off by default.
I think adding a NI_ChannelMinimum, NI_ChannelMaximum, and NI_ChannelAverage would be very helpful so that this information is available without having to read every sample, for every channel, for every group. Again the benefit can be clear when using DIadem or DataFinder and having this information be quickly available.
Of course we can do this today if we don't mind having to read every sample, perform the Min/Max/Average then write this property, but this can be a very time and memory intensive process for large files with lots of samples, channels, and groups. For channels with data types which aren't a numeric, I'd say a constant can be used, like NaN, or 0 if the data type is not a double. I think this would be most useful for channels with a numeric data type, waveform, or timestamp.