Skip to content

Commit 6321675

Browse files
committed
Add virtual field attributes to serialized objects
1 parent ee9bf98 commit 6321675

1 file changed

Lines changed: 11 additions & 0 deletions

File tree

src/nexusformat/nexus/tree.py

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3329,11 +3329,15 @@ def serialize(self):
33293329
'target': self._target,
33303330
'filename': self._filename,
33313331
'mode': self._mode,
3332+
'proxy': self._proxy,
33323333
'abspath': self._abspath,
33333334
'soft': self._soft,
33343335
'dtype': str(self.dtype),
33353336
'shape': self.shape,
33363337
'value': self._value,
3338+
'vpath': self._vpath,
3339+
'vfiles': self._vfiles,
3340+
'vshape': self._vshape,
33373341
'h5opts': self._h5opts,
33383342
'entries': None,
33393343
'attrs': {k: v._value for k, v in self.attrs.items()}}
@@ -3348,6 +3352,7 @@ def deserialize(cls, serialized_field):
33483352
obj._target = serialized_field['target']
33493353
obj._filename = serialized_field['filename']
33503354
obj._mode = serialized_field['mode']
3355+
obj._proxy = serialized_field['proxy']
33513356
obj._abspath = serialized_field['abspath']
33523357
obj._soft = serialized_field['soft']
33533358
if 'link' in serialized_field['class']:
@@ -3359,6 +3364,10 @@ def deserialize(cls, serialized_field):
33593364
obj._h5opts = serialized_field['h5opts']
33603365
obj._attrs = AttrDict(obj)
33613366
obj._attrs._setattrs(serialized_field['attrs'])
3367+
if target_cls == NXvirtualfield:
3368+
obj._vpath = serialized_field['vpath']
3369+
obj._vfiles = serialized_field['vfiles']
3370+
obj._vshape = serialized_field['vshape']
33623371
return obj
33633372

33643373
def __iter__(self):
@@ -5038,6 +5047,7 @@ def serialize(self):
50385047
'target': self._target,
50395048
'filename': self._filename,
50405049
'mode': self._mode,
5050+
'proxy': self._proxy,
50415051
'abspath': self._abspath,
50425052
'soft': self._soft,
50435053
'entries': entries,
@@ -5053,6 +5063,7 @@ def deserialize(cls, serialized_group):
50535063
obj._target = serialized_group['target']
50545064
obj._filename = serialized_group['filename']
50555065
obj._mode = serialized_group['mode']
5066+
obj._proxy = serialized_group['proxy']
50565067
obj._abspath = serialized_group['abspath']
50575068
obj._soft = serialized_group['soft']
50585069
if 'link' in serialized_group['class']:

0 commit comments

Comments
 (0)