1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
  | Quintiq file version 2.0 
 |  #parent: #root 
 |  Method GetLink (Real rand) as LibOpt_Link 
 |  { 
 |    TextBody: 
 |    [* 
 |      result := null( LibOpt_Link ); 
 |      cumulative_weight := 0.0; 
 |      traverse( this, LinkProbability, link, 
 |                isnull( result ) 
 |                and link.Weight() > 0 ) 
 |      { 
 |        cumulative_weight := cumulative_weight + link.Weight(); 
 |        if( rand <= cumulative_weight ) 
 |        { 
 |          result := link; 
 |        } 
 |      } 
 |       
 |      return result; 
 |    *] 
 |  } 
 |  
  |