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

Derived net cams for simultaneous net cams #25

Open
wants to merge 7 commits into
base: master
Choose a base branch
from

Conversation

gabs1234
Copy link

I'm not 100% I didn't beak something here. Some unit tests would be pretty nice in this case.

Derived cameras take the names of shared lib cams you have installed in uca. e.g. mock -> netmock.
Maybe should we add some sort of minimum amount of derived net cams in the build settings ?

Meson builds as many net cameras as there are shared libs in uca
install folder. Networking functions remain in uca net, remote
properties are handled in derived classes.
Forgot to add in previous commit
@MarcusZuber
Copy link
Member

Good idea, but unfortunately we do not have the plugins installed on the server running the net-instance.
Do you think there is a chance to build the subclass in runtime? Somehow the net creates its interface also at runtime when it connects to the "remote" camera

@gabs1234
Copy link
Author

Ok, so indeed having a default or minimum number of derived classes as a build parameter would be necessary. Like this you'll get derived net cams even if you don't have any shared lib camera plugins installed.

I'm not sure I follow why you'd like to build the subclasses in runtime ? Currently, the code for the derived classes is built at build time, and the remote camera properties are instantiated at runtime, just like before, but in seperate derived classes.

(I just hated the idea of having net-derived-x classes so I made a meson script that replaces the x with installed camera names)

Only meson supports this for now
@MarcusZuber
Copy link
Member

The plugins are usually not installed on the "client" side, so reading libuca*.so does not make sense.
I'm currently experimenting with subclassing the net-camera in the class_init and registering the remote properties only in the sub-classes, but I'm not yet satisfied. But then we would not need compile-time copies of the classes. I will proceed with this in January.

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.

2 participants