def METHOD_NAME(dg, overwrite=False, nwfs=None, vrb=False, cwd=False):
    """
    run daq_to_raw on the current DataGroup
    """
    # print(dg.fileDB)
    # print(dg.fileDB.columns)
    # subs = ['geds'] # TODO: ignore other datastreams
    # chans = ['g035', 'g042'] # TODO: select a subset of detectors
    print(f'Processing {dg.fileDB.shape[0]} files ...')
    for i, row in dg.fileDB.iterrows():
        # set up I/O paths
        f_daq = f"{dg.daq_dir}/{row['daq_dir']}/{row['daq_file']}"
        f_raw = f"{dg.lh5_dir}/{row['raw_path']}/{row['raw_file']}"
        if cwd: f_raw = f"{row['raw_file']}"
        subrun = row['cycle'] if 'cycle' in row else None
        systems = dg.subsystems
        # load cmap if there is one
        if 'cmap' in row:
            cmap = row['cmap']
            if ('daq_to_raw' in dg.config and
                'ch_groups' in dg.config['daq_to_raw'] and
                'FlashCamEventDecoder' in dg.config['daq_to_raw']['ch_groups']):
                # we are going to overwrite the "default" in config with
                # the cmap, so give a nice warning
                print('overwriting default ch_groups in config file with channel map info in', cmap)
            else:
                if 'daq_to_raw' not in dg.config:
                    dg.config['daq_to_raw'] = {}
                if 'ch_groups' not in dg.config['daq_to_raw']:
                    dg.config['daq_to_raw']['ch_groups'] = {}
            ch_groups = cmap_to_ch_groups(cmap)
            dg.config['daq_to_raw']['ch_groups']['FlashCamEventDecoder'] = ch_groups
            systems = get_list_of('system', ch_groups)
            systems.append('auxs') # for FC status info
        daq_to_raw(f_daq, f_raw, config=dg.config, systems=systems, verbose=vrb,
                   n_max=nwfs, overwrite=overwrite, subrun=subrun)#, chans=chans)