Skip to content

Commit 71e8562

Browse files
Merge branch 'NWBEP0004_reviews_2' of https://github.com/catalystneuro/ndx-microscopy into NWBEP0004_reviews_2
2 parents d07043e + 2b8cb45 commit 71e8562

File tree

4 files changed

+31
-17
lines changed

4 files changed

+31
-17
lines changed

spec/ndx-microscopy.extensions.yaml

Lines changed: 13 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -310,6 +310,15 @@ groups:
310310
VolumetricImagingSpace object containing metadata about the region of physical space this imaging data
311311
was recorded from.
312312

313+
- neurodata_type_def: MicroscopyStaticImageContainer
314+
neurodata_type_inc: NWBDataInterface
315+
default_name: MicroscopyStaticImageContainer
316+
doc: A container of many MicroscopyStaticImage objects.
317+
groups:
318+
- neurodata_type_inc: MicroscopyStaticImage
319+
doc: MicroscopyStaticImage object containing imaging data for a single channel scan.
320+
quantity: "+"
321+
313322
- neurodata_type_def: MicroscopySeries
314323
neurodata_type_inc: TimeSeries
315324
doc:
@@ -378,29 +387,22 @@ groups:
378387
default_name: MultiPlaneMicroscopyContainer
379388
doc:
380389
Imaging data acquired over several depths, regularly or irregularly spaced; for instance, when using an
381-
electrically tunable lens. Each depth scan is stored in a separate PlanarMicroscopySeries or PlanarMicroscopyStaticImage object.
390+
electrically tunable lens. Each depth scan is stored in a separate PlanarMicroscopySeries object.
382391
groups:
383392
- neurodata_type_inc: PlanarMicroscopySeries
384393
doc: PlanarMicroscopySeries object(s) containing imaging data for a single depth scan.
385-
quantity: "*"
386-
- neurodata_type_inc: PlanarMicroscopyStaticImage
387-
doc: PlanarMicroscopyStaticImage object(s) containing imaging data for a single depth scan.
388-
quantity: "*"
394+
quantity: "+"
389395

390396
- neurodata_type_def: MultiChannelMicroscopyContainer
391397
neurodata_type_inc: NWBDataInterface
392398
default_name: MultiChannelMicroscopyContainer
393399
doc:
394400
Imaging data acquired over several channels; for instance, when using multiple excitation wavelengths
395-
or multiple indicators. Each channel is stored in a separate PlanarMicroscopySeries, VolumetricMicroscopySeries,
396-
PlanarMicroscopyStaticImage or VolumetricMicroscopyStaticImage.
401+
or multiple indicators. Each channel is stored in a separate PlanarMicroscopySeries or VolumetricMicroscopySeries.
397402
groups:
398403
- neurodata_type_inc: MicroscopySeries
399404
doc: MicroscopySeries object containing imaging data for a single channel scan.
400-
quantity: "*"
401-
- neurodata_type_inc: MicroscopyStaticImage
402-
doc: MicroscopyStaticImage object containing imaging data for a single channel scan.
403-
quantity: "*"
405+
quantity: "+"
404406

405407
- neurodata_type_def: SegmentationContainer
406408
neurodata_type_inc: NWBDataInterface

src/pynwb/ndx_microscopy/__init__.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,7 @@
5858
MicroscopyStaticImage = get_class("MicroscopyStaticImage", extension_name)
5959
PlanarMicroscopyStaticImage = get_class("PlanarMicroscopyStaticImage", extension_name)
6060
VolumetricMicroscopyStaticImage = get_class("VolumetricMicroscopyStaticImage", extension_name)
61+
MicroscopyStaticImageContainer = get_class("MicroscopyStaticImageContainer", extension_name)
6162
MicroscopySeries = get_class("MicroscopySeries", extension_name)
6263
PlanarMicroscopySeries = get_class("PlanarMicroscopySeries", extension_name)
6364
VolumetricMicroscopySeries = get_class("VolumetricMicroscopySeries", extension_name)
@@ -97,6 +98,7 @@
9798
"MicroscopyStaticImage",
9899
"PlanarMicroscopyStaticImage",
99100
"VolumetricMicroscopyStaticImage",
101+
"MicroscopyStaticImageContainer",
100102
"MultiPlaneMicroscopyContainer",
101103
"MultiChannelMicroscopyContainer",
102104
"MicroscopyResponseSeries",

src/pynwb/ndx_microscopy/testing/_mock.py

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -419,17 +419,29 @@ def mock_PlanarMicroscopyStaticImage(
419419
return planar_microscopy_static_image
420420

421421

422+
def mock_MicroscopyStaticImageContainer(
423+
*,
424+
microscopy_static_images: Optional[List[ndx_microscopy.MicroscopyStaticImage]] = None,
425+
name: Optional[str] = None,
426+
) -> ndx_microscopy.MicroscopyStaticImageContainer:
427+
container_name = name or name_generator("MicroscopyStaticImageContainer")
428+
429+
microscopy_static_image_container = ndx_microscopy.MicroscopyStaticImageContainer(
430+
name=container_name,
431+
microscopy_static_images=microscopy_static_images,
432+
)
433+
return microscopy_static_image_container
434+
435+
422436
def mock_MultiPlaneMicroscopyContainer(
423437
*,
424438
planar_microscopy_series: Optional[List[ndx_microscopy.PlanarMicroscopySeries]] = None,
425-
planar_microscopy_static_images: Optional[List[ndx_microscopy.PlanarMicroscopyStaticImage]] = None,
426439
name: Optional[str] = None,
427440
) -> ndx_microscopy.MultiPlaneMicroscopyContainer:
428441
container_name = name or name_generator("MultiPlaneMicroscopyContainer")
429442
multi_plane_microscopy_container = ndx_microscopy.MultiPlaneMicroscopyContainer(
430443
name=container_name,
431444
planar_microscopy_series=planar_microscopy_series,
432-
planar_microscopy_static_images=planar_microscopy_static_images,
433445
)
434446

435447
return multi_plane_microscopy_container
@@ -438,15 +450,13 @@ def mock_MultiPlaneMicroscopyContainer(
438450
def mock_MultiChannelMicroscopyContainer(
439451
*,
440452
microscopy_series: Optional[List[ndx_microscopy.MicroscopySeries]] = None,
441-
microscopy_static_images: Optional[List[ndx_microscopy.MicroscopyStaticImage]] = None,
442453
name: Optional[str] = None,
443454
) -> ndx_microscopy.MultiChannelMicroscopyContainer:
444455
container_name = name or name_generator("MultiChannelMicroscopyContainer")
445456

446457
multi_channel_microscopy_container = ndx_microscopy.MultiChannelMicroscopyContainer(
447458
name=container_name,
448459
microscopy_series=microscopy_series,
449-
microscopy_static_images=microscopy_static_images,
450460
)
451461
return multi_channel_microscopy_container
452462

src/pynwb/tests/test_constructors.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -221,7 +221,7 @@ def test_constructor_planar_microscopy_static_image():
221221
)
222222

223223

224-
def test_constructor_multi_plane_microscopy_container_with_series():
224+
def test_constructor_multi_plane_microscopy_container():
225225
from ndx_ophys_devices.testing import mock_Indicator
226226

227227
microscopy_channel = mock_MicroscopyChannel(indicator=mock_Indicator(name="Indicator1"))
@@ -278,7 +278,7 @@ def test_constructor_multi_channel_microscopy_container_with_series():
278278
assert multi_channel_microscopy_container.name == "MultiChannelPlanarMicroscopySeriesContainer"
279279

280280

281-
def test_constructor_multi_channel_microscopy_container_with_static_images():
281+
def test_constructor_microscopy_static_images_container():
282282
from ndx_ophys_devices.testing import mock_Indicator
283283

284284
microscopy_channel = mock_MicroscopyChannel(indicator=mock_Indicator(name="Indicator1"))

0 commit comments

Comments
 (0)