'The Header section consists of at least 4, but possibly
5 lines.  This is tricky because sometimes the 4th line
is blank (in which case the 5th line consists of the
data_kind) or the 4th line consists of the data_kind (in
which case the 5th line is blank).'

def _is_vtk_header(self, fh, subtype):

    data_kinds = ['STRUCTURED_GRID', 'POLYDATA', 'UNSTRUCTURED_GRID']
    def check_data_kind(line):
        for data_kind in data_kinds:
            if (line.find(data_kind) >= 0):
                return True
        return False
    line = get_next_line(fh)
    if (line.find('vtk') < 0):
        return False
    line = get_next_line(fh)
    line = get_next_line(fh)
    if (line.find(subtype) < 0):
        return False
    line = get_next_line(fh)
    if line:
        return check_data_kind(line)
    line = get_next_line(fh)
    if line:
        return check_data_kind(line)
    return False
