Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Refactor synchronization structure #263

Open
wants to merge 13 commits into
base: develop
Choose a base branch
from
Open

Conversation

ehpor
Copy link
Collaborator

@ehpor ehpor commented Nov 6, 2024

Refactor the synchronization methods inside data streams. This makes it easier to add multiple types of synchronization per operating system.

The proposed system uses the CRTP (Curiously recurring template pattern) instead of compiler pre-directives. This makes it possible, at no runtime cost, to choose the synchronization method. This PR just adds the synchronization methods that were already implemented.

Larger scale goal is to bring catkit2 data streams closer to ImageStreamIO data streams.

This PR does not intend to change any existing code, just reorder/reformat/move it to allow for a more modular structure.

@ehpor ehpor added the refactor Refactor existing code. label Nov 6, 2024
@ehpor ehpor self-assigned this Nov 6, 2024
@ehpor ehpor force-pushed the refactor/synchronization branch 3 times, most recently from ba45577 to 5617db8 Compare November 6, 2024 20:11
@ehpor ehpor force-pushed the refactor/synchronization branch from 5617db8 to e8d00f0 Compare November 12, 2024 21:34
@raphaelpclt
Copy link
Collaborator

I am looking at it, but I am trying to familiarize myself with those concepts before approving

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
refactor Refactor existing code.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants