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

Interface abstraction #28

Draft
wants to merge 3 commits into
base: main
Choose a base branch
from

Conversation

Craftplacer
Copy link
Collaborator

@Craftplacer Craftplacer commented Nov 7, 2024

Resolves #18
Resolves #23

@Craftplacer
Copy link
Collaborator Author

Craftplacer commented Nov 7, 2024

Key changes of this pull request so far:

  • SaneIsolate is split into implementation of Sane (SaneNative) and a class for managing the isolate itself (SaneIsolate)
    • SaneDevice with text info and methods were introduced, list of known device types is also available at SaneDeviceTypes
  • Sane is now an abstract interface with properly documented members, the implementation became SaneSync
    • SaneSync is used by SaneIsolate similar to before, sharing code.
  • Name lookup for SANE devices was replaced with just handing out the pointer address (which is only visible if you know the NativeSaneDevice type)

@Jupi007
Copy link
Collaborator

Jupi007 commented Nov 7, 2024

Why did you replaced SaneHandle with a simple int? I prefer the class encapsulation of that concept.

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.

Document code Proposal to encapsulate device access to a dedicated class
2 participants