source: trunk/symbol_table/marker_strms.py @ 1960

Last change on this file since 1960 was 1960, checked in by ksherdy, 7 years ago

Standalone symbol table - initial check in.

File size: 1.8 KB
Line 
1class Markers():
2    spans = 0
3    starts = 0
4    ends = 0
5
6# Calculate Symbol spans
7def Classify_markers(basis_bits, markers):
8    temp1 = (basis_bits.bit_0 | basis_bits.bit_1)
9    temp2 = (basis_bits.bit_2 &~ basis_bits.bit_3)
10    temp3 = (temp2 &~ temp1)
11    temp4 = (basis_bits.bit_4 & basis_bits.bit_5)
12    temp5 = (basis_bits.bit_7 &~ basis_bits.bit_6)
13    temp6 = (temp4 & temp5)
14    temp7 = (temp3 & temp6)
15    temp8 = (basis_bits.bit_1 &~ basis_bits.bit_0)
16    temp9 = (basis_bits.bit_3 &~ basis_bits.bit_2)
17    temp10 = (temp8 & temp9)
18    temp11 = (basis_bits.bit_6 & basis_bits.bit_7)
19    temp12 = (temp4 & temp11)
20    temp13 = (temp10 & temp12)
21    temp14 = (temp7 | temp13)
22    temp15 = (basis_bits.bit_6 &~ basis_bits.bit_7)
23    temp16 = (temp4 & temp15)
24    temp17 = (temp3 & temp16)
25    temp18 = (temp14 | temp17)
26    temp19 = (basis_bits.bit_2 & basis_bits.bit_3)
27    temp20 = (temp19 &~ temp1)
28    temp21 = (basis_bits.bit_5 | temp11)
29    temp22 = (basis_bits.bit_4 & temp21)
30    temp23 = (temp20 &~ temp22)
31    temp24 = (temp18 | temp23)
32    temp25 = (temp8 &~ basis_bits.bit_2)
33    temp26 = (~temp22)
34    temp27 = (basis_bits.bit_4 | basis_bits.bit_5)
35    temp28 = (basis_bits.bit_6 | basis_bits.bit_7)
36    temp29 = (temp27 | temp28)
37    temp30 = ((basis_bits.bit_3 & temp26)|(~(basis_bits.bit_3) & temp29))
38    temp31 = (temp25 & temp30)
39    temp32 = (temp24 | temp31)
40    temp33 = (temp8 & basis_bits.bit_2)
41    temp34 = (temp33 & temp30)
42    markers.spans = (temp32 | temp34)
43
44
45# Determine Symbol starts, ends
46def Generate_markers(markers):
47    markers.starts = markers.spans &~ Advance(markers.spans)
48    markers.ends = ~markers.spans & Advance(markers.spans)
49    #ScanThru(markers.starts, markers.spans)
50    #markers.ends = ScanThru(markers.starts, markers.spans)
51
52def Main(markers):
53    Classify_markers(basis_bits, markers)
54    Generate_markers(markers)
55
Note: See TracBrowser for help on using the repository browser.