Hi, I have a subvi which manages a circular buffer using unitialised shift registers. I want to manage multiple independant circular buffers. I can make the subvi reentrant, but then I need to place individual instances of the subvi to handle multiple buffers. Furthermore, read and write operations must be handled by the same instance on the diagram, in order to access the same buffer. The calling vi looks after a variable number of data sets, identified by an id - I want to select the circular buffer to access based on the id. One possibility is to place instances of a reentrant version of the subvi in the frames of a case structure - howevever these means the calling vi must know beforehand how many instances there will be, and ther
e is still the issue of read/write access having to occur at the same place.
Another alternative might be to pass the buffer (an array) and associated data (read/write positions etc) to the subvi, but I am wary of introducing copies of the arrays.
Is there an elegant way around this in labview (7)?
Ian