next up previous contents
Next: Controlling DMM Up: Accessing Masks Previous: User Code   Contents


A Simple Example: Event Selection

Suppose we want to select GTIDs 1,2,3,4 from run 111111 and GTIDs 5,6,7,8 from run 222222. This can be done by hand using a DARN bank. For example we could create darn_7.dat containing:-

*DO   DARN         7 -i(30I -I) 
#.
#.    Standard Database Header with infinite validity 
19750101        0 20380517 03331900  
       0        0        0           
19990819  6580000        0           
19750101        0 20380517 03331900  
       0        0                    
4*0                                  
10*0                                 
#.       Start of DARN bank data.
#.
         1          #. Version number
         0          #. Compression algorithm
8*0                 #. Spare
#.

-111111 1 1  #.Start run 111111, applied mask=1, result mask=1
1 2 3 4

-222222 1 1  #.Start run 222222, applied mask=1, result mask=1
5 6 7 8
Observe the following rules when creating DARN banks in this way:-

DMM can be asked to check that these rules have been followed, see section 10.4.5.

To copy just these GTIDs from input to output just requires the PEL:-

call inp
call dmm(7)
call out

Warning: this also strips off all permanent banks. If you want to keep them then construct a filter, for example:-

$enable_test 7 
$define_test 7 $line_1 '_ok_7     dmm  7;                   '  
$define_test 7 $line_1 '_is_perm  bits MAST+0,$KMAST_PERM,1;' 
$define_test 7 $line_1 'test      or   _ok_7, _is_perm;'

and then:-

call inp
call flt(7)
call out


next up previous contents
Next: Controlling DMM Up: Accessing Masks Previous: User Code   Contents
sno Guest Acct 2009-09-09