| @@ 129-146 (lines=18) @@ | ||
| 126 | nxs_entry.attrs['signal'] = 'data' |
|
| 127 | return nxs_entry |
|
| 128 | ||
| 129 | def __add_nxs_data(self, nxs_file, nxs_entry, link, group_name, data): |
|
| 130 | data_entry = nxs_entry.name + '/data' |
|
| 131 | # output file path |
|
| 132 | h5file = data.backing_file.filename |
|
| 133 | ||
| 134 | if link == 'input_data': |
|
| 135 | dataset = self.__is_h5dataset(data) |
|
| 136 | if dataset: |
|
| 137 | nxs_file[data_entry] = \ |
|
| 138 | h5py.ExternalLink(os.path.abspath(h5file), dataset.name) |
|
| 139 | else: |
|
| 140 | # entry path in output file path |
|
| 141 | m_data = self.exp.meta_data.get |
|
| 142 | if not (link == 'intermediate' and |
|
| 143 | m_data('inter_path') != m_data('out_path')): |
|
| 144 | h5file = h5file.split(m_data('out_folder') + '/')[-1] |
|
| 145 | nxs_file[data_entry] = \ |
|
| 146 | h5py.ExternalLink(h5file, group_name + '/data') |
|
| 147 | ||
| 148 | def __is_h5dataset(self, data): |
|
| 149 | if isinstance(data.data, h5py.Dataset): |
|
| @@ 421-438 (lines=18) @@ | ||
| 418 | nxs_entry.attrs['signal'] = 'data' |
|
| 419 | return nxs_entry |
|
| 420 | ||
| 421 | def __add_nxs_data(self, nxs_file, nxs_entry, link, group_name, data): |
|
| 422 | data_entry = nxs_entry.name + '/data' |
|
| 423 | # output file path |
|
| 424 | h5file = data.backing_file.filename |
|
| 425 | ||
| 426 | if link == 'input_data': |
|
| 427 | dataset = self.__is_h5dataset(data) |
|
| 428 | if dataset: |
|
| 429 | nxs_file[data_entry] = \ |
|
| 430 | h5py.ExternalLink(os.path.abspath(h5file), dataset.name) |
|
| 431 | else: |
|
| 432 | # entry path in output file path |
|
| 433 | m_data = self.exp.meta_data.get |
|
| 434 | if not (link == 'intermediate' and |
|
| 435 | m_data('inter_path') != m_data('out_path')): |
|
| 436 | h5file = h5file.split(m_data('out_folder') + '/')[-1] |
|
| 437 | nxs_file[data_entry] = \ |
|
| 438 | h5py.ExternalLink(h5file, group_name + '/data') |
|
| 439 | ||