'Initialize the header Column objects from the table ``lines`` for a DAOphot
header.  The DAOphot header is specialized so that we just copy the entire BaseHeader
get_cols routine and modify as needed.
Parameters
lines : list
List of table lines
Returns
col : list
List of table Columns'

def get_cols(self, lines):

    if (not self.names):
        raise core.InconsistentTableError('No    column    names    found    in    DAOphot    header')
    self._set_cols_from_names()
    coldefs = self.meta['cols']
    for col in self.cols:
        (unit, fmt) = map(coldefs[col.name].get, ('unit', 'format'))
        if (unit != '##'):
            col.unit = unit
        if (fmt != '##'):
            col.format = fmt
    col_width = sum(self.col_widths, [])
    ends = np.cumsum(col_width)
    starts = (ends - col_width)
    for (i, col) in enumerate(self.cols):
        (col.start, col.end) = (starts[i], ends[i])
        col.span = (col.end - col.start)
        if hasattr(col, 'format'):
            if any(((x in col.format) for x in 'fg')):
                col.type = core.FloatType
            elif ('d' in col.format):
                col.type = core.IntType
            elif ('s' in col.format):
                col.type = core.StrType
    self.data.fill_values.append(('INDEF', '0'))
