[Qgis-developer] implement data provider in python?

G. Allegri giohappy at gmail.com
Wed Aug 29 02:02:06 PDT 2012


Hi Barry,
" you can't write data providers in Python". This is the point: I wonder if
this is in absolute or it is in this moment. Given Qgis can load python and
C++ plugins, I wondered if a similar thing could be achieved for data
providers. I can imagine two ways:

 - extend the data provider registry to load python modules and then extend
the data provider class to make it call the data provider interface methods
both on Python and C++ providers (doesn't the plugins loader/registry do
something similar?)
 - write a generic C++ data provider that acts as a proxy to the actual
python data provider.

I don't know how hard it would be, but I can't find any technical barrier...

My use case are two.
One is to have "dynamic layers", in the sense I explained in a previous
email. Let's say I have some code that does clustering on some data source.
I would like to expose it as "live", meaning that it appears as any other
static layer, but it's processed realtime.
The other is having the possibility to bridge, easily, any kind of data
source, using python as an adapter.

giovanni



2012/8/29 Barry Rowlingson <b.rowlingson at lancaster.ac.uk>

> I have a vague memory that the python data provider idea was
> considered a while ago. I was thinking about how one could get direct
> access from Qgis to R spatial data sets stored in R's binary files.
> One method would have been to write a provider in python that used Rpy
> to bridge to R, but wasn't possible because you can't write data
> providers in Python. It could be done in C by linking to R's C
> library, but at that point I lost interest and used a looser coupling
> to get my R data into Qgis.
>
> The argument then went that if the provider was designed to access a
> file it would be a better idea to write a GDAL/OGR driver, then even
> people outside QGIS could use it. Obviously that would have to be
> C/C++ though.
>
> And then I think everyone got bored and went back to doing things.
>
> Do you have a specific use-case?
>
> On Wed, Aug 29, 2012 at 8:01 AM, G. Allegri <giohappy at gmail.com> wrote:
> > Anybody interested in developing the concept and evaluating its
> feasibility?
> > I'm considering the possibility to sponsor it.
> >
> > giovanni
> >
> > Sent from Nexus
> >
> > Il giorno 28/ago/2012 00:11, "G. Allegri" <giohappy at gmail.com> ha
> scritto:
> >>
> >> AFAIK it isn't possible to register a python script as a dataprovider.
> >> Maybe it sounds odd, but I think it would interesting if we could have
> it.
> >> Has it been ever considered? How hard would it be to implement it?
> >>
> >> Giovanni
> >>
> >> Sent from Nexus
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/qgis-developer/attachments/20120829/a6b652de/attachment.html>


More information about the Qgis-developer mailing list