Seeking reccomendation: libPlugin or older style for writing new plugins? Future maintainability and support aspects.

Typically: "How do I... ", "How can I... " questions
Post Reply
rishi
Posts: 2
Joined: 15 Apr 2020, 13:16

Seeking reccomendation: libPlugin or older style for writing new plugins? Future maintainability and support aspects.

Post by rishi »

Greetings,

I seek to port some functionality (a line-following grader for an embedded systems course) from the Python Remote API to a plugin. I'm new to C++, following earlier posts on this forum I've installed Qt. But the new generation plugins seem to not use qmake at all. Hence, I have these questions:
1) Which of the two styles will be easier to get off the ground?
2) What codebase will be easier to maintain and expand? Since I anticipate a longer lifetime for this plugin I'll write.
3) What is Coppelia's stance on libPlugin? For instance, will all plugins be eventually ported over to libPlugin?

Thanks in advance, and wishing y'all great success in all the cool things y'all do!

fferri
Posts: 1230
Joined: 09 Sep 2013, 19:28

Re: Seeking reccomendation: libPlugin or older style for writing new plugins? Future maintainability and support aspects

Post by fferri »

libPlugin's architecture is more difficult to understand, but in the long run it is easier to write and maintain.

Plain C API is simple but verbose and lower level.

Already discussed also here: Develop plugin for Coppelia Sim using LibPlugin.

About qmake integration: it is definitely possible to compile a libPlugin-based project using qmake, just figure out how to run the stubsGen command as a pre-build step (i.e. before actual compilation). Maybe this can help.

Speaking about numbers: something less than half of the plugins use libPlugin.

rishi
Posts: 2
Joined: 15 Apr 2020, 13:16

Re: Seeking reccomendation: libPlugin or older style for writing new plugins? Future maintainability and support aspects

Post by rishi »

I had seen that post, and was what prompted me to ask this question in the first place. After you and Florent conversed for a while trying to sort things out, coppelia just jumped in said, you know what, there's this option older too, why don't you try it out, was a bit confusing. I'll try libPlugin out, I've decided to stick with, thanks for your input and contributions to the community.

Post Reply