[pdal-commits] [PDAL/PDAL] 032467: Isolate plugins and their dependencies, starting w...
GitHub
noreply at github.com
Mon Oct 20 08:39:55 PDT 2014
Branch: refs/heads/pcl-submodule
Home: https://github.com/PDAL/PDAL
Commit: 032467739af9fa4502caa5691ded88da4175aa5d
https://github.com/PDAL/PDAL/commit/032467739af9fa4502caa5691ded88da4175aa5d
Author: Bradley J Chambers <brad.chambers at gmail.com>
Date: 2014-10-20 (Mon, 20 Oct 2014)
Changed paths:
M CMakeLists.txt
M apps/CMakeLists.txt
M apps/pdal.cpp
M cmake/pdal_targets.cmake
M include/pdal/Drivers.hpp
M include/pdal/Filters.hpp
R include/pdal/Kernel.hpp
R include/pdal/PCLConversions.hpp
M include/pdal/StageFactory.hpp
R include/pdal/drivers/pcd/Common.hpp
R include/pdal/drivers/pcd/Reader.hpp
R include/pdal/drivers/pcd/Writer.hpp
R include/pdal/drivers/pcd/point_types.hpp
R include/pdal/drivers/pclvisualizer/PCLVisualizer.hpp
M include/pdal/filters/Decimation.hpp
R include/pdal/filters/PCLBlock.hpp
R include/pdal/kernel/Application.hpp
M include/pdal/kernel/Delta.hpp
M include/pdal/kernel/Diff.hpp
R include/pdal/kernel/Ground.hpp
M include/pdal/kernel/Info.hpp
M include/pdal/kernel/Kernel.hpp
A include/pdal/kernel/KernelFactory.hpp
A include/pdal/kernel/KernelInfo.hpp
A include/pdal/kernel/Kernels.hpp
R include/pdal/kernel/PCL.hpp
M include/pdal/kernel/Pipeline.hpp
M include/pdal/kernel/Random.hpp
M include/pdal/kernel/Translate.hpp
R include/pdal/kernel/View.hpp
M include/pdal/pdal_macros.hpp
R include/stubs/pcl/console/print.h
R include/stubs/pcl/filters/voxel_grid.h
R include/stubs/pcl/for_each_type.h
R include/stubs/pcl/io/impl/pcd_io.hpp
R include/stubs/pcl/io/pcd_io.h
R include/stubs/pcl/pcl_config.h
R include/stubs/pcl/pipeline/pipeline.h
R include/stubs/pcl/point_traits.h
R include/stubs/pcl/point_types.h
R include/stubs/pcl/visualization/pcl_visualizer.h
R include/stubs/pcl/visualization/point_cloud_color_handlers.h
M pdal_defines.h.in
A plugins/CMakeLists.txt
A plugins/pcl/CMakeLists.txt
A plugins/pcl/PCLConversions.hpp
A plugins/pcl/drivers/PCLVisualizer.cpp
A plugins/pcl/drivers/PCLVisualizer.hpp
A plugins/pcl/drivers/PcdCommon.cpp
A plugins/pcl/drivers/PcdCommon.hpp
A plugins/pcl/drivers/PcdReader.cpp
A plugins/pcl/drivers/PcdReader.hpp
A plugins/pcl/drivers/PcdWriter.cpp
A plugins/pcl/drivers/PcdWriter.hpp
A plugins/pcl/drivers/point_types.hpp
A plugins/pcl/filters/PCLBlock.cpp
A plugins/pcl/filters/PCLBlock.hpp
A plugins/pcl/kernel/Ground.cpp
A plugins/pcl/kernel/Ground.hpp
A plugins/pcl/kernel/PCL.cpp
A plugins/pcl/kernel/PCL.hpp
A plugins/pcl/kernel/Smooth.cpp
A plugins/pcl/kernel/Smooth.hpp
A plugins/pcl/kernel/View.cpp
A plugins/pcl/kernel/View.hpp
A plugins/pcl/pipeline/PCLPipeline.cpp
A plugins/pcl/pipeline/PCLPipeline.h
A plugins/pcl/pipeline/PCLPipeline.hpp
M src/CMakeLists.txt
M src/FileUtils.cpp
M src/StageFactory.cpp
M src/drivers/oci/OciReader.cpp
M src/drivers/oci/Writer.cpp
R src/drivers/pcd/Common.cpp
R src/drivers/pcd/Reader.cpp
R src/drivers/pcd/Writer.cpp
R src/drivers/pclvisualizer/PCLVisualizer.cpp
M src/drivers/pgpointcloud/PgReader.cpp
M src/drivers/pgpointcloud/Reader.cpp
M src/drivers/pgpointcloud/Writer.cpp
M src/drivers/sqlite/SQLiteReader.cpp
M src/drivers/sqlite/SQLiteWriter.cpp
M src/drivers/text/Writer.cpp
M src/filters/Decimation.cpp
R src/filters/PCLBlock.cpp
R src/kernel/Application.cpp
M src/kernel/Delta.cpp
M src/kernel/Diff.cpp
R src/kernel/Ground.cpp
M src/kernel/Info.cpp
A src/kernel/Kernel.cpp
A src/kernel/KernelFactory.cpp
A src/kernel/KernelInfo.cpp
R src/kernel/PCL.cpp
M src/kernel/Pipeline.cpp
M src/kernel/Random.cpp
M src/kernel/Translate.cpp
R src/kernel/View.cpp
R src/pclsupport/PCLPipeline.cpp
R src/pclsupport/PCLPipeline.h
R src/pclsupport/PCLPipeline.hpp
M src/pdal_config.cpp
M test/unit/CMakeLists.txt
M test/unit/Support.cpp
M test/unit/filters/PCLBlockFilterTest.cpp
Log Message:
-----------
Isolate plugins and their dependencies, starting with PCL. Create Kernel
class for kernel plugins.
* A plugins folder has been created for PCL (and other) plugins. All
plugins are now built via the existing plugin framework (i.e., as
shared libs that are registered at runtime). Plugins will link
against PDAL, but PDAL can be built independently of any plugin
dependencies.
* References to PDAL_HAVE_PCL have generally been removed, as
PCL-dependent code should only be encountered within the PCL
plugin directory, and only after PCL has been detected. Within
PDAL, prior checks for PDAL_HAVE_PCL have been replaced by queries
of getFilterCreator (also Reader, Writer, Kernel), which has been
made public in StageFactory. These sections of code are only
encountered when plugins have been determined to be present at
runtime.
Remaining todos (these can be addressed post-merge)...
* Visualization option only displays output buffer for now.
Displaying the input and output buffers would force a PCL
requirement on PDAL. Still need to think through how to pass
multiple buffers to the existing PCLVisualizer driver (writers
typically only have one buffer).
* PCL unit tests pass with a warning if PCL plugins are not
installed - though we should still move PCL tests to the plugin
folder.
Other miscellaneous, but noteworthy changes include...
* In FileUtils and StageFactory, assume that if the filename starts
with http, we are passing a Greyhound url. This is independent of
the plugins changes, but allows us to import data from Greyhound.
* Remove stubs.
* Remove Application class, it is now part of Kernel.
* VoxelGrid removed from decimation filter, now called via PCLBlock
(if available) in Translate kernel.
* Unit tests binpath updated for APP_BUNDLE builds.
* Add MovingLeastSquares to PCL pipeline and Smooth kernel.
* Disable NormalEstimation and ConditionalRemoval in PCL pipeline
(allows us to stick with POINT_XYZ types).
* Remove PCL from getVersionString.
* Remove references to USE_PDAL_PLUGIN_PCD.
More information about the pdal-commits
mailing list