def METHOD_NAME(self, tb, dd, wf, auxwf):
    """
    Fill LH5 table from waveform and digitizer data
    """
    i_chan = tb.loc
    # Fill basic digitizer data
    tb['channel'].nda[i_chan] = dd.GetID()
    tb['energy'].nda[i_chan] = dd.GetEnergy()
    tb['timestamp'].nda[i_chan] = dd.GetTimeStamp()
    tb['index'].nda[i_chan] = dd.GetIndex()
    # fill waveform
    tb['waveform']['t0'].nda[i_chan] = wf.GetTOffset()
    wf_dat = np.asarray(wf.GetVectorData())
    wf_tb = tb['waveform']['values'].nda[i_chan, :]
    if len(wf_dat)<len(wf_tb):
        wf_tb[:len(wf_dat)] = wf_dat[:]
        wf_tb[len(wf_dat):] = 0
    else:
        wf_tb[:] = wf_dat[:len(wf_tb)]
    # fill auxwaveform, if applicable
    if auxwf:
        tb['auxwaveform']['t0'].nda[i_chan] = auxwf.GetTOffset()
        auxwf_dat = np.asarray(auxwf.GetVectorData())
        auxwf_tb = tb['auxwaveform']['values'].nda[i_chan, :]
        if len(auxwf_dat)<len(auxwf_tb):
            auxwf_tb[:len(auxwf_dat)] = auxwf_dat[:]
            auxwf_tb[len(auxwf_dat):] = 0
        else:
            auxwf_tb[:] = auxwf_dat[:len(auxwf_tb)]