Skip to content

Commit d277f53

Browse files
committed
Make cupoch/cupoch.h work with a subset of modules
1 parent 0f38658 commit d277f53

File tree

23 files changed

+60
-41
lines changed

23 files changed

+60
-41
lines changed

conanfile.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -192,6 +192,7 @@ def package_info(self):
192192
# component.requires = MODULE_DEPS.get(module, [])
193193
self.cpp_info.libs += [f"cupoch_{module}"]
194194
self.cpp_info.libs += mod_lib_deps.get(module, [])
195+
self.cpp_info.defines.append(f"CUPOCH_{module.upper()}_ENABLED")
195196
self.cpp_info.libs += ["cupoch_utility"]
196197

197198
# Propagate necessary build flags

examples/cpp/image.cpp

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,11 +18,7 @@
1818
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
1919
* IN THE SOFTWARE.
2020
**/
21-
#include "cupoch/geometry/image.h"
22-
#include "cupoch/io/class_io/image_io.h"
23-
#include "cupoch/utility/console.h"
24-
#include "cupoch/utility/helper.h"
25-
#include "cupoch/visualization/utility/draw_geometry.h"
21+
#include "cupoch/cupoch.h"
2622

2723
int main(int argc, char **argv) {
2824
using namespace cupoch;

examples/cpp/kinematics.cpp

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,7 @@
1818
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
1919
* IN THE SOFTWARE.
2020
**/
21-
#include "cupoch/kinematics/kinematic_chain.h"
22-
#include "cupoch/utility/console.h"
23-
#include "cupoch/visualization/utility/draw_geometry.h"
21+
#include "cupoch/cupoch.h"
2422

2523
int main(int argc, char *argv[]) {
2624
using namespace cupoch;

examples/cpp/pointcloud.cpp

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,11 +18,7 @@
1818
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
1919
* IN THE SOFTWARE.
2020
**/
21-
#include "cupoch/geometry/pointcloud.h"
22-
#include "cupoch/io/class_io/pointcloud_io.h"
23-
#include "cupoch/utility/console.h"
24-
#include "cupoch/utility/helper.h"
25-
#include "cupoch/visualization/utility/draw_geometry.h"
21+
#include "cupoch/cupoch.h"
2622

2723
int main(int argc, char *argv[]) {
2824
using namespace cupoch;

examples/cpp/registration.cpp

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,7 @@
1818
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
1919
* IN THE SOFTWARE.
2020
**/
21-
#include "cupoch/geometry/pointcloud.h"
22-
#include "cupoch/io/class_io/pointcloud_io.h"
23-
#include "cupoch/registration/registration.h"
24-
#include "cupoch/utility/console.h"
25-
#include "cupoch/utility/helper.h"
26-
#include "cupoch/visualization/utility/draw_geometry.h"
21+
#include "cupoch/cupoch.h"
2722

2823
int main(int argc, char *argv[]) {
2924
using namespace cupoch;

examples/cpp/trianglemesh.cpp

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,11 +18,7 @@
1818
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
1919
* IN THE SOFTWARE.
2020
**/
21-
#include "cupoch/geometry/trianglemesh.h"
22-
#include "cupoch/io/class_io/trianglemesh_io.h"
23-
#include "cupoch/utility/console.h"
24-
#include "cupoch/utility/helper.h"
25-
#include "cupoch/visualization/utility/draw_geometry.h"
21+
#include "cupoch/cupoch.h"
2622

2723
int main(int argc, char **argv) {
2824
using namespace cupoch;

examples/cpp/voxelization.cpp

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -18,15 +18,7 @@
1818
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
1919
* IN THE SOFTWARE.
2020
**/
21-
#include "cupoch/cupoch_config.h"
22-
#include "cupoch/geometry/geometry.h"
23-
#include "cupoch/geometry/pointcloud.h"
24-
#include "cupoch/geometry/voxelgrid.h"
25-
#include "cupoch/io/class_io/pointcloud_io.h"
26-
#include "cupoch/io/class_io/voxelgrid_io.h"
27-
#include "cupoch/utility/console.h"
28-
#include "cupoch/utility/helper.h"
29-
#include "cupoch/visualization/utility/draw_geometry.h"
21+
#include "cupoch/cupoch.h"
3022

3123
using namespace cupoch;
3224

src/cupoch/camera/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ set(CUPOCH_MODULES ${CUPOCH_MODULES} cupoch_camera PARENT_SCOPE)
66
file(GLOB_RECURSE CAMERA_SOURCE_FILES "*.cpp")
77
add_library(cupoch_camera ${CAMERA_SOURCE_FILES})
88
add_library(cupoch::camera ALIAS cupoch_camera)
9+
target_compile_definitions(cupoch_camera PUBLIC CUPOCH_CAMERA_ENABLED)
910
target_link_libraries(cupoch_camera
1011
PUBLIC
1112
cupoch::utility

src/cupoch/collision/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ find_package(tritriintersect REQUIRED CONFIG)
1010
file(GLOB_RECURSE COLLISION_SOURCE_FILES "*.cu")
1111
add_library(cupoch_collision ${COLLISION_SOURCE_FILES})
1212
add_library(cupoch::collision ALIAS cupoch_collision)
13+
target_compile_definitions(cupoch_collision PUBLIC CUPOCH_COLLISION_ENABLED)
1314
target_link_libraries(cupoch_collision
1415
PUBLIC
1516
cupoch::geometry

src/cupoch/cupoch.h

Lines changed: 38 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,37 +1,67 @@
11
#pragma once
22

3+
#include "cupoch/cupoch_config.h"
4+
#include "cupoch/utility/console.h"
5+
#include "cupoch/utility/eigen.h"
6+
#include "cupoch/utility/filesystem.h"
7+
#include "cupoch/utility/helper.h"
8+
9+
#ifdef CUPOCH_CAMERA_ENABLED
310
#include "cupoch/camera/pinhole_camera_intrinsic.h"
411
#include "cupoch/camera/pinhole_camera_parameters.h"
5-
#include "cupoch/collision/primitives.h"
12+
#endif
13+
14+
#ifdef CUPOCH_COLLISION_ENABLED
615
#include "cupoch/collision/collision.h"
7-
#include "cupoch/cupoch_config.h"
16+
#include "cupoch/collision/primitives.h"
17+
#endif
18+
19+
#ifdef CUPOCH_GEOMETRY_ENABLED
820
#include "cupoch/geometry/boundingvolume.h"
921
#include "cupoch/geometry/distancetransform.h"
1022
#include "cupoch/geometry/geometry.h"
23+
#include "cupoch/geometry/graph.h"
1124
#include "cupoch/geometry/image.h"
1225
#include "cupoch/geometry/lineset.h"
13-
#include "cupoch/geometry/graph.h"
1426
#include "cupoch/geometry/pointcloud.h"
1527
#include "cupoch/geometry/rgbdimage.h"
1628
#include "cupoch/geometry/trianglemesh.h"
1729
#include "cupoch/geometry/voxelgrid.h"
30+
#endif
31+
32+
#ifdef CUPOCH_KNN_ENABLED
1833
#include "cupoch/knn/kdtree_flann.h"
34+
#endif
35+
36+
#ifdef CUPOCH_IO_ENABLED
1937
#include "cupoch/io/class_io/ijson_convertible_io.h"
2038
#include "cupoch/io/class_io/image_io.h"
2139
#include "cupoch/io/class_io/pointcloud_io.h"
2240
#include "cupoch/io/class_io/trianglemesh_io.h"
2341
#include "cupoch/io/class_io/voxelgrid_io.h"
2442
#include "cupoch/io/ros/pointcloud_msg.h"
43+
#endif
44+
45+
#ifdef CUPOCH_KINEMATICS_ENABLED
2546
#include "cupoch/kinematics/kinematic_chain.h"
47+
#endif
48+
49+
#ifdef CUPOCH_KINFU_ENABLED
2650
#include "cupoch/kinfu/kinfu.h"
51+
#endif
52+
53+
#ifdef CUPOCH_ODOMETRY_ENABLED
2754
#include "cupoch/odometry/odometry.h"
55+
#endif
56+
57+
#ifdef CUPOCH_REGISTRATION_ENABLED
2858
#include "cupoch/registration/feature.h"
2959
#include "cupoch/registration/registration.h"
3060
#include "cupoch/registration/transformation_estimation.h"
31-
#include "cupoch/utility/console.h"
32-
#include "cupoch/utility/eigen.h"
33-
#include "cupoch/utility/filesystem.h"
34-
#include "cupoch/utility/helper.h"
61+
#endif
62+
63+
#ifdef CUPOCH_VISUALIZATION_ENABLED
3564
#include "cupoch/visualization/utility/draw_geometry.h"
3665
#include "cupoch/visualization/visualizer/view_control.h"
37-
#include "cupoch/visualization/visualizer/visualizer.h"
66+
#include "cupoch/visualization/visualizer/visualizer.h"
67+
#endif

0 commit comments

Comments
 (0)