Andrea,
here we go...
Attached please find a sample project which won't be executable in the current state it is (saved back from 8.5 to 8.2), but this isn't important.
The project simply shows how to cover your requirements.
At first you need to replace the SineWave block in the simulink model by an inport.
The inport number shown in the Simulink environment is related to the 1D array of the base-rate-loop.vi.
The index of the inport in the 1D array is the number shown in Simulink - 1.
For example: Inport number in Simulink is 1. The relating index number in LabVIEW is 0.
In the sequence "Read Code" in the _base rate loop.vi I've added a specific user code which provides the signal generation. The way it works is a bit different than your approach, because I've used point by point operations. Using those functions you may use the entire signal generation framework directly in the base-rate-loop.
If this is not the one you are looking for, the 2nd option would be to have 2 VIs. One VI for the waveform generation and another VI which is reading index by index the waveform array. The communication between those two VIs needs to be established by using RT FIFO.
The communication between Host and Driver, respectively base rate loop.vi, is implemented in a very easy manner -> Shared Variable with the attributes network-published and RT FIFO enabled. You may replace the SVs by TCP IP or whatever you are thinking of.
If you have any further questions, please come by.
Thanks,
ThSa