code: def get_isoquant_fields(pqdb=False, poolnames=False):
      
      # FIXME when is a None database passed?
      if pqdb is None:
          return {}
      try:
          channels_psms = pqdb.get_isoquant_amountpsms_channels()
      except OperationalError:
          # FIXME what does this catch?
          return {}
      quantheader, psmsheader = OrderedDict(), OrderedDict()
      for chan_name, amnt_psms_name in channels_psms:
          quantheader[chan_name] = poolnames
          if amnt_psms_name:
              psmsheader[amnt_psms_name] = poolnames
      quantheader.update(psmsheader)
      return quantheader
docs: Returns a headerfield dict for isobaric quant channels. Channels are
      taken from DB and there isn't a pool-independent version of this yet