[QGIS-Developer] Developing a plugin and a Python library at the same time

Pedro Camargo veigacamargo at gmail.com
Sun Dec 3 13:49:30 PST 2017


Hi Luigi,
                My problem goes a little beyond that, as I want to have the
underlying API call capable of updating my GUI, while also able to run from
a Python shell outside QGIS (and with possibly no PyQt installed).

Cheers,
Pedro

On Mon, Dec 4, 2017 at 7:17 AM, Luigi Pirelli <luipir at gmail.com> wrote:

> recently Nyall started to move (in 3.x) some Processing base GUI
> classes to C++ to avoid GUI lock in case of MT context when the Python
> interpreter is locked... check this PR
> https://github.com/qgis/QGIS/pull/5761
> fits your problem... as far as I understood.
>
> cheers
> Luigi Pirelli
>
> ************************************************************
> **************************************
> * LinkedIn: https://www.linkedin.com/in/luigipirelli
> * Stackexchange: http://gis.stackexchange.com/users/19667/luigi-pirelli
> * GitHub: https://github.com/luipir
> * Mastering QGIS 2nd Edition:
> * https://www.packtpub.com/big-data-and-business-
> intelligence/mastering-qgis-second-edition
> * Hire me: http://goo.gl/BYRQKg
> ************************************************************
> **************************************
>
>
> On 3 December 2017 at 21:34, Pedro Camargo <veigacamargo at gmail.com> wrote:
> > Hello developers,
> >
> >    This question might not be exactly for this forum (maybe
> > StackOverflow!?!), but since I am doing the development for QGIS, I
> guess it
> > makes sense being here.
> >
> > Some background:
> >
> >    A while ago, I started developing AequilibraE, which is a plugin for
> > transportation modelers/forecasters (plus some additional GIS tools that
> > help in that type of work).
> >
> > As time progressed, I have re-factored all the GUI to work on a threaded
> > fashion when running algorithms and have worked on releasing the GIL for
> the
> > transportation-specific algorithms, which allows me to multi-thread the
> > procedures.
> >
> > I have also worked quite a bit on the underlying library that contains
> the
> > transportation-specific procedures, which allows people to just integrate
> > those procedures in other workflows.
> >
> > Lastly, I have started developing a large number of unittests for that
> > underlying library
> >
> > The problem:
> >
> >    I want to use the same (multi-threaded) API calls I provide for the
> > Python users through the underlying library in the GUI, so I don't have
> to
> > duplicate the same threading procedure, but at the same time I do want to
> > keep the GUI being updated.
> >
> > Has somebody worked on a problem like this?  I would really appreciate
> some
> > reference I could study from, as I have not found a good solution for
> this
> > problem yet.
> >
> > Cheers,
> > Pedro
> >
> >
> > _______________________________________________
> > QGIS-Developer mailing list
> > QGIS-Developer at lists.osgeo.org
> > List info: https://lists.osgeo.org/mailman/listinfo/qgis-developer
> > Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-developer
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/qgis-developer/attachments/20171204/749b0662/attachment.html>


More information about the QGIS-Developer mailing list