| @@ 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): |
|
| @@ 399-416 (lines=18) @@ | ||
| 396 | nxs_entry.attrs['signal'] = 'data' |
|
| 397 | return nxs_entry |
|
| 398 | ||
| 399 | def __add_nxs_data(self, nxs_file, nxs_entry, link, group_name, data): |
|
| 400 | data_entry = nxs_entry.name + '/data' |
|
| 401 | # output file path |
|
| 402 | h5file = data.backing_file.filename |
|
| 403 | ||
| 404 | if link == 'input_data': |
|
| 405 | dataset = self.__is_h5dataset(data) |
|
| 406 | if dataset: |
|
| 407 | nxs_file[data_entry] = \ |
|
| 408 | h5py.ExternalLink(os.path.abspath(h5file), dataset.name) |
|
| 409 | else: |
|
| 410 | # entry path in output file path |
|
| 411 | m_data = self.exp.meta_data.get |
|
| 412 | if not (link == 'intermediate' and |
|
| 413 | m_data('inter_path') != m_data('out_path')): |
|
| 414 | h5file = h5file.split(m_data('out_folder') + '/')[-1] |
|
| 415 | nxs_file[data_entry] = \ |
|
| 416 | h5py.ExternalLink(h5file, group_name + '/data') |
|
| 417 | ||