Hi emvee,
How much delay can your application tolerate?
You are correct about the continuous and free-running clock requirement. For a generation session, you are not able to provide a gated clock to the CLK IN input. This is due to the heavily pipelined architecture that allows these boards to reach rates of 100 MS/s at 4 bytes per sample.
An incoming trigger is the way in which these boards respond to external signals, even though a generation session has an associated trigger delay. You can configure the generation to stop for exactly a predetermined number of samples by using the finite wait statement in the script ("wait 24"). However, this does not respond to any external signals.
The pause trigger is level-sensitive, meaning that the generation will pause when the trigger is asserted, then become active again when the trigger is deasserted. For example, if you are using PFI 0 as the pause trigger, then the generation will pause after PFI 0 goes high, then it will un-pause when PFI 0 goes back low.
I hope that helps,
Allen