[pdal] Point cloud viewer in QGIS

Martin Dobias wonder.sk at gmail.com
Mon Jul 6 12:29:24 PDT 2020


On Mon, Jul 6, 2020 at 9:07 PM Howard Butler <howard at hobu.co> wrote:
>
> No plan for a PDAL C API. Just extra stuff to manage for little benefit. PDAL's C++ API has been quite stable since about 1.6 or 1.7 release. More specifically, if you use higher level APIs like the PipelineManager or PipelineExecutor, they will insulate you from API changes. We have done our best to preserve pipeline behavior and syntax throughout releases, as this is the real definition of PDAL activity. This also conveniently gives other language implementors (Python, Java, Julia, Matlab) a mechanism to drive PDAL without having to deeply implement a large API surface.

Is there a way for me to tell which APIs are high level and which
aren't? For example, classes like LasReader, PointTable, PointViewSet?

I am a bit worried that without guaranteed API stability we may run
into trouble easily - even safely looking changes such as adding a new
private member variable or a new virtual method may change ABI and
then cause crashes if a newer version of PDAL would be released and
dependent QGIS code would not get recompiled... For example Qt library
has policies (like using d-pointers everywhere) and extensive tests to
make sure the ABI does not get broken between releases...

Regards
Martin


More information about the pdal mailing list