Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
self.mdf.configure(write_fragment_size=split_size)
compression = self.convert_compression.currentIndex()
file_name, _ = QtWidgets.QFileDialog.getSaveFileName(
self,
"Select output measurement file",
"",
f"{filter};;All files (*.*)",
filter,
)
if file_name:
file_name = Path(file_name).with_suffix(suffix)
progress = setup_progress(
parent=self,
title="Converting measurement",
message=f'Converting "{self.file_name}" from {self.mdf.version} to {version}',
icon_name="convert",
)
# convert self.mdf
target = self.mdf.convert
kwargs = {"version": version}
mdf = run_thread_with_progress(
self,
target=target,
kwargs=kwargs,
factor=50,
offset=0,
def scramble(self, event):
count = self.files_list.count()
delta = 100 / count
progress = setup_progress(
parent=self,
title="Scrambling measurements",
message=f'Scrambling "{count}" files',
icon_name="scramble",
)
files = self._prepare_files(progress)
source_files = [Path(self.files_list.item(row).text()) for row in range(count)]
for i, (file, source_file) in enumerate(zip(files, source_files)):
progress.setLabelText(f"Scrambling file {i+1} of {count}")
target = MDF.scramble
kwargs = {
"name": file,
split_size = 0
compression = self.stack_compression.currentIndex()
output_file_name, _ = QtWidgets.QFileDialog.getSaveFileName(
self,
"Select output measurement file",
"",
f"{filter};;All files (*.*)",
filter,
)
if output_file_name:
output_file_name = Path(output_file_name).with_suffix(suffix)
progress = setup_progress(
parent=self,
title=f"{operation} measurements",
message=f"{operation} files and saving to {version} format",
icon_name="stack",
)
files = self._prepare_files(progress)
target = func
kwargs = {
"files": files,
"outversion": version,
"callback": self.update_progress,
"sync": sync,
"add_samples_origin": add_samples_origin,
}
split_size = 0
compression = self.concatenate_compression.currentIndex()
output_file_name, _ = QtWidgets.QFileDialog.getSaveFileName(
self,
"Select output measurement file",
"",
f"{filter};;All files (*.*)",
filter,
)
if output_file_name:
output_file_name = Path(output_file_name).with_suffix(suffix)
progress = setup_progress(
parent=self,
title=f"{operation} measurements",
message=f"{operation} files and saving to {version} format",
icon_name="stack",
)
files = self._prepare_files(progress)
target = func
kwargs = {
"files": files,
"outversion": version,
"callback": self.update_progress,
"sync": sync,
"add_samples_origin": add_samples_origin,
}
dbc_files.append(item.text())
ignore_invalid_signals = (
self.ignore_invalid_signals_csv.checkState() == QtCore.Qt.Checked
)
single_time_base = self.single_time_base_can.checkState() == QtCore.Qt.Checked
time_from_zero = self.time_from_zero_can.checkState() == QtCore.Qt.Checked
empty_channels = self.empty_channels_can.currentText()
raster = self.export_raster.value()
time_as_date = self.can_time_as_date.checkState() == QtCore.Qt.Checked
count = self.files_list.count()
delta = 100 / count
progress = setup_progress(
parent=self,
title="Extract CAN logging from measurements to CSV",
message=f'Extracting CAN logging from "{count}" files',
icon_name="csv",
)
files = self._prepare_files(progress)
source_files = [Path(self.files_list.item(row).text()) for row in range(count)]
for i, (file, source_file) in enumerate(zip(files, source_files)):
progress.setLabelText(f"Extracting CAN logging from file {i+1} of {count}")
if not isinstance(file, MDF):
# open file
self.mdf.configure(write_fragment_size=split_size)
compression = self.cut_compression.currentIndex()
file_name, _ = QtWidgets.QFileDialog.getSaveFileName(
self,
"Select output measurement file",
"",
f"{filter};;All files (*.*)",
filter,
)
if file_name:
file_name = Path(file_name).with_suffix(suffix)
progress = setup_progress(
parent=self,
title="Cutting measurement",
message=f'Cutting "{self.file_name}" from {start}s to {stop}s',
icon_name="cut",
)
# cut self.mdf
target = self.mdf.cut
kwargs = {
"start": start,
"stop": stop,
"whence": whence,
"version": version,
"time_from_zero": time_from_zero,
}
self.mdf.configure(write_fragment_size=split_size)
compression = self.filter_compression.currentIndex()
file_name, _ = QtWidgets.QFileDialog.getSaveFileName(
self,
"Select output measurement file",
"",
f"{filter};;All files (*.*)",
filter,
)
if file_name:
file_name = Path(file_name).with_suffix(suffix)
progress = setup_progress(
parent=self,
title="Filtering measurement",
message=f'Filtering selected channels from "{self.file_name}"',
icon_name="filter",
)
# filtering self.mdf
target = self.mdf.filter
kwargs = {"channels": channels, "version": version}
mdf = run_thread_with_progress(
self,
target=target,
kwargs=kwargs,
factor=66,
offset=0,
def scramble(self, event):
progress = setup_progress(
parent=self,
title="Scrambling measurement",
message=f'Scrambling "{self.file_name}"',
icon_name="scramble",
)
# scrambling self.mdf
target = MDF.scramble
kwargs = {"name": self.file_name, "callback": self.update_progress}
mdf = run_thread_with_progress(
self, target=target, kwargs=kwargs, factor=100, offset=0, progress=progress,
)
if mdf is TERMINATED:
progress.cancel()
single_time_base = self.single_time_base.checkState() == QtCore.Qt.Checked
time_from_zero = self.time_from_zero.checkState() == QtCore.Qt.Checked
use_display_names = self.use_display_names.checkState() == QtCore.Qt.Checked
empty_channels = self.empty_channels.currentText()
mat_format = self.mat_format.currentText()
raster = self.export_raster.value()
oned_as = self.oned_as.currentText()
reduce_memory_usage = self.reduce_memory_usage.checkState() == QtCore.Qt.Checked
compression = self.export_compression.currentText()
time_as_date = self.time_as_date.checkState() == QtCore.Qt.Checked
count = self.files_list.count()
delta = 100 / count
progress = setup_progress(
parent=self,
title="Exporting measurements",
message=f'Exporting "{count}" files to {export_type}',
icon_name="export",
)
files = self._prepare_files(progress)
source_files = [Path(self.files_list.item(row).text()) for row in range(count)]
if export_type == "csv":
suffix = ".csv"
elif export_type == "hdf5":
suffix = ".hdf"
elif export_type == "mat":
suffix = ".mat"
elif export_type == "parquet":
raster = self.raster.value()
split = self.resample_split.checkState() == QtCore.Qt.Checked
if split:
split_size = int(self.resample_split_size.value() * 1024 * 1024)
else:
split_size = 0
compression = self.resample_compression.currentIndex()
time_from_zero = self.resample_time_from_zero.checkState() == QtCore.Qt.Checked
count = self.files_list.count()
delta = 100 / count
progress = setup_progress(
parent=self,
title="Resampling measurements",
message=f'Resampling "{count}" files',
icon_name="convert",
)
files = self._prepare_files(progress)
source_files = [Path(self.files_list.item(row).text()) for row in range(count)]
for i, (file, source_file) in enumerate(zip(files, source_files)):
if isinstance(raster, str):
progress.setLabelText(
f'Resampling file {i+1} of {count} using "{raster}" as raster'
)
else: