@classmethod<EOL><INDENT>def parse_type(self, hdat, dataobj=None):<DEDENT>
try:    dataobj = dataobj.dataobj<EOL>except Exception: pass<EOL>dtype = np.asarray(dataobj).dtype if dataobj else self.default_type()<EOL>if   hdat and '<STR_LIT:type>'  in hdat: dtype = np.dtype(hdat['<STR_LIT:type>'])<EOL>elif hdat and '<STR_LIT>' in hdat: dtype = np.dtype(hdat['<STR_LIT>'])<EOL>return dtype<EOL>
Parses the dtype out of the header data or the array, depending on which is given; if both,
  then the header-data overrides the array; if neither, then np.float32.