def METHOD_NAME(self, event_data_bytes):
    self.decoded_values["board"] = np.frombuffer(event_data_bytes[0:2], dtype=np.uint16)[0]
    self.decoded_values["channel"] = np.frombuffer(event_data_bytes[2:4], dtype=np.uint16)[0]
    self.decoded_values["timestamp"] = np.frombuffer(event_data_bytes[4:12], dtype=np.uint64)[0]
    if self.e_type == "uncalibrated":
        self.decoded_values["energy"] = np.frombuffer(event_data_bytes[12:14], dtype=np.uint16)[0]
        self.decoded_values["energy_short"] = np.frombuffer(event_data_bytes[14:16], dtype=np.uint16)[0]
        self.decoded_values["flags"] = np.frombuffer(event_data_bytes[16:20], np.uint32)[0]
        self.decoded_values["num_samples"] = np.frombuffer(event_data_bytes[20:24], dtype=np.uint32)[0]
        self.decoded_values["waveform"] = np.frombuffer(event_data_bytes[24:], dtype=np.uint16)
    elif self.e_type == "calibrated":
        self.decoded_values["energy"] = np.frombuffer(event_data_bytes[12:20], dtype=np.float64)[0]
        self.decoded_values["energy_short"] = np.frombuffer(event_data_bytes[20:22], dtype=np.uint16)[0]
        self.decoded_values["flags"] = np.frombuffer(event_data_bytes[22:26], np.uint32)[0]
        self.decoded_values["num_samples"] = np.frombuffer(event_data_bytes[26:30], dtype=np.uint32)[0]
        self.decoded_values["waveform"] = np.frombuffer(event_data_bytes[30:], dtype=np.uint16)
    else:
        raise TypeError("Invalid e_type! Valid e_type's: uncalibrated, calibrated")
    return self.assemble_data_row()