This function generates the table-header
element that appears at the top of each page of the table.
There are two logical rows, each of which may be multiple
physical rows. We use the virtual method Row.fo() to render these two logical rows; see Section 29, “class Row: Abstract class for logical
rows” for that method's interface.
# - - - f o T a b l e H e a d e r
def foTableHeader(s, cbcHist):
'''Generate the table-header element with the table headings.
[ (s is a sox.Sox instance) and
(cbcHist is a lib.CbcHist instance) ->
s +:= a table-header child representing the running heads
from cbcHist ]
'''
#-- 1
# [ s +:= an open table-header element
# header := that element ]
header = s.start('table-header')
#-- 2
# [ s +:= cbcHist.keyRow as one or more table-row elements ]
cbcHist.keyRow.fo(s, lib.MAX_PHYS_COLS)
#-- 3
# [ s +:= closing tag for header ]
header.end()