| @@ 91-108 (lines=18) @@ | ||
| 88 | nxs_entry.attrs['signal'] = 'data' |
|
| 89 | return nxs_entry |
|
| 90 | ||
| 91 | def __add_nxs_data(self, nxs_file, nxs_entry, link, group_name, data): |
|
| 92 | data_entry = nxs_entry.name + '/data' |
|
| 93 | # output file path |
|
| 94 | h5file = data.backing_file.filename |
|
| 95 | ||
| 96 | if link == 'input_data': |
|
| 97 | dataset = self.__is_h5dataset(data) |
|
| 98 | if dataset: |
|
| 99 | nxs_file[data_entry] = \ |
|
| 100 | h5py.ExternalLink(os.path.abspath(h5file), dataset.name) |
|
| 101 | else: |
|
| 102 | # entry path in output file path |
|
| 103 | m_data = self.exp.meta_data.get |
|
| 104 | if not (link == 'intermediate' and |
|
| 105 | m_data('inter_path') != m_data('out_path')): |
|
| 106 | h5file = h5file.split(m_data('out_folder') + '/')[-1] |
|
| 107 | nxs_file[data_entry] = \ |
|
| 108 | h5py.ExternalLink(h5file, group_name + '/data') |
|
| 109 | ||
| 110 | def __is_h5dataset(self, data): |
|
| 111 | if isinstance(data.data, h5py.Dataset): |
|
| @@ 367-384 (lines=18) @@ | ||
| 364 | nxs_entry.attrs['signal'] = 'data' |
|
| 365 | return nxs_entry |
|
| 366 | ||
| 367 | def __add_nxs_data(self, nxs_file, nxs_entry, link, group_name, data): |
|
| 368 | data_entry = nxs_entry.name + '/data' |
|
| 369 | # output file path |
|
| 370 | h5file = data.backing_file.filename |
|
| 371 | ||
| 372 | if link == 'input_data': |
|
| 373 | dataset = self.__is_h5dataset(data) |
|
| 374 | if dataset: |
|
| 375 | nxs_file[data_entry] = \ |
|
| 376 | h5py.ExternalLink(os.path.abspath(h5file), dataset.name) |
|
| 377 | else: |
|
| 378 | # entry path in output file path |
|
| 379 | m_data = self.exp.meta_data.get |
|
| 380 | if not (link == 'intermediate' and |
|
| 381 | m_data('inter_path') != m_data('out_path')): |
|
| 382 | h5file = h5file.split(m_data('out_folder') + '/')[-1] |
|
| 383 | nxs_file[data_entry] = \ |
|
| 384 | h5py.ExternalLink(h5file, group_name + '/data') |
|
| 385 | ||