Changing the Sequence in Texo

Software Release 6.0.3
In order to change the sequence in Texo, six actions need to be carried out:
 * 1. The sequencer be stopped by texoStopImage
 * 2. A sequence be programmed
 * 3. The sequencer be started by texoRunImage
 * 4. The sequencer be stopped by texoStopImage
 * 5. A new sequence be programmed
 * 6. The sequencer be restarted by texoRunImage

In this version of the software, it is not possible to issue the texoStopImage from within the Texo callback function. The reason being that the callback function will be part of the Texo frame collector thread, and texoStopImage tries to destroy this thread from within in, which does not work.

Therefore the above six steps would be taken inside the main thread of the program using Texo, or any other thread but not inside the callback. As a result, Texo will acquire many frames (typically 100 frames) between successive steps 3 and 4 above which takes a significant amount of time. Moreover, it is not possible to acquire a single frame using the first sequence, and then switch to the next. Around 100 frames of the first sequence will be acquired one way or another.

Having said that, the following graph shows the time required for carrying out a change of sequence (the time required for any 3 consecutive steps from above). The system specs were as follows:
 * O/S : Windows 7 Professional 32bit
 * Usuable memory: 2.95 GB
 * Processor: Intel(R) Core(TM) i7-3770 CPU @ 3.40 GHz
 * Ultrasonix PCI card revision : 3
 * Ultrasonix main board revision: 3



As can be seen the time required is roughly 400 ms. However, as the small difference between 256 and 512 scan-lines demonstrates, most of the 400 ms has nothing to do with the programming the sequence step (step 2 or 5 above), but is spent between steps 3 and 4, where the sequencer will be acquiring 100 frames of data.