1
2
3diagram {
4
5Scheduler;
6SpectrumChannel;
7
8Scheduler => SpectrumChannel [label="at 0.001s: StartRx(signal1)"] {
9  SpectrumChannel => LteSpectrumPhy [label="StartRx(interferer)"] {
10    LteSpectrumPhy => LteInterference  [label="AddSignal()"];
11  }
12}
13
14Scheduler => SpectrumChannel [label="at 0.001s: StartRx(signal2)"] {
15  SpectrumChannel => LteSpectrumPhy [label="at 0.001s: StartRx(signal2)"] {
16    LteSpectrumPhy => LteInterference  [label="AddSignal(signal2)"];
17    LteSpectrumPhy => LteInterference  [label="StartRx(signal2)"];
18    LteSpectrumPhy => Scheduler  [label="Schedule (EndRx)"];
19  }
20}
21
22Scheduler => SpectrumChannel [label="at 0.001s: StartRx(signal3)"] {
23  SpectrumChannel => LteSpectrumPhy [label="StartRx(signal3)"] {
24    LteSpectrumPhy => LteInterference  [label="AddSignal(signal3)"];
25  }
26}
27
28Scheduler => LteSpectrumPhy [label="at 0.002s: EndRx()"] {
29  LteSpectrumPhy => LteInterference  [label="EndRx()"] {
30    LteInterference => LteCqiSinrChunkProcessor [label="EvaluateSinrChunk()"];
31    LteInterference => LteCqiSinrChunkProcessor [label="End()"] {
32      LteCqiSinrChunkProcessor => LtePhy [label="GenerateCqiFeedback(SINR of signal2)"]
33    }
34  }
35}
36
37}