03-16-2006 08:27 PM
03-17-2006 05:50 AM
03-17-2006 04:04 PM
03-20-2006 07:42 AM
But one of the things that the Chart History buffer handles is to act like a circular buffer, overwriting old stale data as new data comes in. As far as I've been able to determine, Queues can't do that. Instead, a queue will either grow its size and write the new data into the new space or else it will ignore the new data and return an error. I haven't found an option that lets you leave the queue at the same size and overwrite the oldest data with the new data coming in.
In the past I've used LabVIEW RT where the RTFIFO offers such an option, and I don't understand why queues don't support it. I'll grant that the default behavior for a queue should be NOT to overwrite, but an explicit option would be very useful.
Probably an even better wishlist item would be a new set of functions called Circular Buffer. Underneath, it could be implemented similarly to either Queues or RTFIFO's. Additional accessor functions would be provided to allow random access rather than purely sequential access. The ability to request an array of elements rather than a single one at a time should also be supported.
In the meantime, someone on this forum posted a tip a few weeks ago. He (she?) would create a subvi that used an actual Waveform Chart as the circular buffer. The extra trick was to hide the chart on so there wouldn't be slowdowns to draw the chart data n the front panel. Ah yes, see the response by rpursley8 in this thread.
-Kevin P.
03-20-2006 08:44 AM