Slot: Added assert to check destination (a.k.a. result) array dtype matches output slot dtype.
OpFilterLabels: Avoid an unecessary temporary array.
Added assert: MetaDict.assignFrom() param must be another MetaDict
operator.py: Added an assertion to ensure setupOutputs() is overriden when the operator requires it.
operator.py: Added a convenience function to disconnect an operator from all its downstream partners.
Added OpCrosshairMarkers
Override setupOutputs in a test operator to satisfy the new assert in operator.py
Comment.
OpDenseLabelArray.NonzeroBlocks now returns the bounding box of all labels instead of the entire array.
OpDenseLabelArray: Fix crash in NonzeroBlock slot if no nonzero values are present.
slot: If a 'not ready' 'problem slot' can't be identified, still give a useful error message.
jsonConfig.Namespace: Implemented __str__
slot: Changed an error message.
JsonConfig: Allow spaces in field names, which will be converted to underscores in the output namespace.
Added OpReorderAxes and test.
This will eventually replace Op5ifyer because it is:
- more flexible (output axes can be fewer than 5)
- shorter and simpler
- cleaner (follows modern lazyflow syntax and naming conventions)
- more efficient (avoids unecessary copies)
- has a clearer name
Merge branch 'axis-reorder'
OpReorderAxes: Provide original_axes and original_shape metadata.
OpH5WriterBigDataset: Use gzip compression instead of lzf, which is only used by h5py.
OpH5WriterBigDataset: Minor cleanups (unused variables).
tests: Added testMultislotResize.py
(I don't remember when or why I wrote this test, but it passes, so why not add it...)
stype: ArrayLike.setupMetaForValue uses isinstance() instead of hasattr()