Skip to content

Move ImageMetadata.h from MMDevice to MMCore#845

Merged
marktsuchida merged 4 commits intomicro-manager:mainfrom
marktsuchida:move-image-metadata
Feb 19, 2026
Merged

Move ImageMetadata.h from MMDevice to MMCore#845
marktsuchida merged 4 commits intomicro-manager:mainfrom
marktsuchida:move-image-metadata

Conversation

@marktsuchida
Copy link
Copy Markdown
Member

@marktsuchida marktsuchida commented Feb 19, 2026

Closes #797.

Use of the ImageMetadata.h classes in MMDevice and the device adapters have been replaced by MM::CameraImageMetadata (#843).

ImageMetadata.h remains part of the MMCore API.

Among other things, this allows independent evolution of the device interface and the MMCore API.

Retire the Metadata class (and associated tag and exception classes)
from MMDevice. The API (with excpetion throwing and unnecessary member
functions) is not suitable for device use, and we have replaced it with
MM::CameraImageMetadata.

Keep it in MMCore (presumably where it originally resided, a very long
time ago), where it is part of the MMCore API.

Move unit tests involving Metadata to MMCore:
- MMCore ImageMetadata-Tests.cpp renamed to ImageMetadataTags-Tests.cpp
- MMDevice Metadata-Tests.cpp split into
    - MMDevice CameraImageMetadata-Tests.cpp
    - MMCore ImageMetadata-Tests.cpp
(Assisted by Claude Code; any errors are mine.)
@marktsuchida marktsuchida marked this pull request as ready for review February 19, 2026 22:32
MMDEVICE_* -> MMCORE_*, move the latter to a new common header, and
switch to C++14 [[deprecated]] for deprecation.
@marktsuchida marktsuchida merged commit 40b9e21 into micro-manager:main Feb 19, 2026
16 checks passed
@marktsuchida marktsuchida deleted the move-image-metadata branch February 19, 2026 22:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Move ImageMetadata.h from MMDevice (back) to MMCore

1 participant