123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127 |
- cmake_minimum_required(VERSION 2.8.7)
- project(integrated_viewer)
- find_package(autoware_build_flags REQUIRED)
- find_package(catkin REQUIRED COMPONENTS
- autoware_msgs
- cv_bridge
- image_transport
- roscpp
- rviz
- sensor_msgs
- std_msgs
- )
- set(CMAKE_CXX_FLAGS "-Wall ${CMAKE_CXX_FLAGS}")
- catkin_package(
- DEPENDS rviz
- )
- if(rviz_QT_VERSION VERSION_LESS "5")
- find_package(Qt4 ${rviz_QT_VERSION} EXACT REQUIRED QtCore QtGui)
- include(${QT_USE_FILE})
- # Qt's user-interface compiler.
- qt4_wrap_ui(UI_HEADERS
- node/traffic_light_plugin/form.ui
- node/image_viewer_plugin/image_viewer_form.ui
- node/data_rate_checker_plugin/data_rate_checker_form.ui
- )
- # Here we specify which header files need to be run through "moc",
- # Qt's meta-object compiler.
- qt4_wrap_cpp(MOC_FILES
- node/traffic_light_plugin/traffic_light_plugin.h
- node/image_viewer_plugin/image_viewer_plugin.h
- node/data_rate_checker_plugin/data_rate_checker_plugin.h
- )
- else()
- find_package(Qt5 ${rviz_QT_VERSION} EXACT REQUIRED Core Widgets Quick)
- set(QT_LIBRARIES Qt5::Widgets)
- # Qt's user-interface compiler.
- qt5_wrap_ui(UI_HEADERS
- node/traffic_light_plugin/form.ui
- node/image_viewer_plugin/image_viewer_form.ui
- node/data_rate_checker_plugin/data_rate_checker_form.ui
- )
- # Here we specify which header files need to be run through "moc",
- # Qt's meta-object compiler.
- qt5_wrap_cpp(MOC_FILES
- node/traffic_light_plugin/traffic_light_plugin.h
- node/image_viewer_plugin/image_viewer_plugin.h
- node/data_rate_checker_plugin/data_rate_checker_plugin.h
- )
- endif()
- include_directories(
- ${CMAKE_CURRENT_BINARY_DIR}
- ${CMAKE_CURRENT_SOURCE_DIR}
- ${catkin_INCLUDE_DIRS}
- include
- lib/
- )
- link_directories(${catkin_LIBRARY_DIRS})
- # I prefer the Qt signals and slots to avoid defining "emit", "slots",
- # etc because they can conflict with boost signals, so define QT_NO_KEYWORDS here.
- add_definitions(-DQT_NO_KEYWORDS)
- # Here we specify the list of source files, including the output of
- # the previous command which is stored in ``${MOC_FILES}`` and ``${UI_HEADERS}``.
- set(SOURCE_FILES
- lib/convert_image.h
- node/traffic_light_plugin/traffic_light_plugin.cpp
- node/image_viewer_plugin/image_viewer_plugin.cpp
- node/image_viewer_plugin/draw_rects.cpp
- node/image_viewer_plugin/draw_points.cpp
- node/image_viewer_plugin/draw_lane.cpp
- node/data_rate_checker_plugin/data_rate_checker_plugin.cpp
- ${MOC_FILES}
- ${UI_HEADERS}
- )
- # An rviz plugin is just a shared library, so here we declare the
- # library to be called ``${PROJECT_NAME}`` (which is
- # "rviz_plugin_tutorials", or whatever your version of this project
- # is called) and specify the list of source files we collected above
- # in ``${SOURCE_FILES}``.
- #
- add_library(${PROJECT_NAME}
- ${SOURCE_FILES}
- )
- set_target_properties(${PROJECT_NAME}
- PROPERTIES
- COMPILE_FLAGS
- "-DIMAGE_VIEWER_DEFAULT_PATH=${CMAKE_CURRENT_SOURCE_DIR}/node/image_viewer_plugin/"
- )
- ## Specify libraries to link a library or executable target against
- target_link_libraries(${PROJECT_NAME}
- ${QT_LIBRARIES}
- ${catkin_LIBRARIES}
- )
- add_dependencies(${PROJECT_NAME}
- ${catkin_EXPORTED_TARGETS}
- )
- install(TARGETS ${PROJECT_NAME}
- ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
- LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
- )
- install(FILES rviz_plugin_description.xml
- DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}
- )
- install(
- FILES
- node/image_viewer_plugin/autoware_logo.png
- node/image_viewer_plugin/car.png
- node/image_viewer_plugin/pedestrian.png
- DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}/node/image_viewer_plugin/
- )
|