def data_available(self, device_sn, format, files):
        if "raw" != format: return files
        processed = []
        result = []
        try:
            for file in files:
                _log.info("TcxPlugin: processing %s.", file)
                try:
                    dir = self.tcx_output_dir % {"device_id": hex(device_sn)}
                    if not os.path.exists(dir): os.makedirs(dir)
                    files = export_tcx(device_sn, file, dir)
                    result.extend(files)
                    processed.append(file)
                except Exception:
                    _log.warning("Failed to process %s. Maybe a datatype is unimplemented?", file, exc_info=True)
            plugin.publish_data(device_sn, "tcx", result)
        finally:
            return processed
dataset/ETHPy150Open braiden/python-ant-downloader/antd/tcx.py/TcxPlugin.data_available/original