> Is it possilbe to use arrays of float32 type in LabView or are all > arrays automatically float64? >
Right click on the array, or on the numeric within the array and under the representation menu are the numeric choices, about ten of them including float32. > I would like to create a buffer working like this: > > - grow array until some size and do not allow further processing until array > is full > - when the array is full, allow the processing to proceede and then reset > the array > size > It sounds like you can do this either with one loop or two. You have one piece of code adding to the array, and another that optionally processes and empties. If using one loop, the code would consist of the while loop with a shift register to hold and recirculate the array. The left side of the while loop would get the new data and add it to the array. The middle of the loop would test the array size and wire the results to a case statement. One frame of the case would simply pass the array through and the other would process it and reset it. The right side of the case would pass out the array and into the right shift register. This solution is what I'd use as long as processing the data is pretty quick and won't interrupt the next read too much. The two loop solution has the creation of a queue outside the loops and wire the refnum into both of them. One loop, the produces looks almost like the one in the previous paragraph except in the case where you have enough data, it would put then array into the queue element and enque it. The other loop would wait for an element to be ready to dequeue and then process it. This solution may be useful when the processing of the data takes a highly variable amount of time or would otherwise conflict with the acquisition of the data. Using the queues will add some overhead however, especially if the arrays are very large. Greg McKaskle
