#
# $Id$
# $HeadURL$
# $Author$
#

# LIBRARY

SET(Symbology_SRCS
  sidc_codec.cpp

  symbol_dictionary.cpp
  property_result.cpp
  symbol_data_to_render.cpp
  symbol_result.cpp
  symbol_properties.cpp
  sidc_definitions.cpp
  sidc_builder_base.cpp
  sidc_builder.cpp
#  sidc2525_delta.cpp
)
SET(Symbology_HDRS
  advanced_symbology_export.h
  bulk_renderer.h
  symbology_type.h
  symbol_dictionary_types.h
  symbol_dictionary.h
  property_result.h
  symbol_data_to_render.h
  symbol_result.h
  symbol_properties.h
  sidc_codec.h
  sidc_definitions.h
  sidc_builder_base.h
  sidc_builder.h
#  sidc2525_delta.h
  result_watcher.h
)

SET(SymbologyImpl_SRCS
  ../SymbologyImpl/advanced_symbology_logging.cpp
  ../SymbologyImpl/symbol_extension_renderer.cpp
  ../SymbologyImpl/symbol_dictionary_impl.cpp
  ../SymbologyImpl/esri_dictionary_processor.cpp
  ../SymbologyImpl/esri_dictionary_processor_mil2525d.cpp
  ../SymbologyImpl/esri_dictionary_processor_app6.cpp
  ../SymbologyImpl/esri_dictionary_processor_app6d.cpp
  ../SymbologyImpl/base_symbol_model.cpp
)
SET(SymbologyImpl_HDRS
  ../SymbologyImpl/advanced_symbology_logging.h
  ../SymbologyImpl/symbol_extension_renderer.h
  ../SymbologyImpl/symbol_dictionary_impl.h
  ../SymbologyImpl/esri_dictionary_processor.h
  ../SymbologyImpl/esri_dictionary_processor_mil2525d.h
  ../SymbologyImpl/esri_dictionary_processor_app6.h
  ../SymbologyImpl/esri_dictionary_processor_app6d.h
  ../SymbologyImpl/base_symbol_model.h
)

QT5_ADD_RESOURCES(Symbology_SRCS ../SymbologyImpl/Resources/symbols.qrc)

SOURCE_GROUP(Symbology        FILES ${Symbology_SRCS} ${Symbology_HDRS} ${SymbologyImpl_SRCS} ${SymbologyImpl_HDRS})

NGL_ADD_LIBRARY(WS advancedSymbology SHARED ${Symbology_SRCS} ${Symbology_HDRS} ${SymbologyImpl_SRCS} ${SymbologyImpl_HDRS})

NGL_TARGET_INCLUDE_DIRECTORIES(advancedSymbology
  PUBLIC
    ${CMAKE_CURRENT_SOURCE_DIR}/..
)

NGL_TARGET_LINK_LIBRARIES(advancedSymbology
  PRIVATE
    ArcGIS::ArcGIS
    Qt5::Concurrent
    ngltools # DTG
    situationMapCommon
    LtsDataView
    LtsSessionData
    LtsUtilsCoreHeaderOnly

  PUBLIC
    advancedSymbologyXML
    NGLLogger
    Qt5::Core
    Qt5::Widgets
)


IF(BUILD_TESTING AND BUILD_SITMAP_UNIT_TESTS AND TARGET situationMapCommon)

  NGL_ADD_LIBRARY(WS NO_TRANSLATION advancedSymbology_static STATIC ${Symbology_SRCS} ${Symbology_HDRS} ${SymbologyImpl_SRCS} ${SymbologyImpl_HDRS})
  NGL_TARGET_COMPILE_DEFINITIONS(advancedSymbology_static PUBLIC "ADVANCED_SYMBOLOGY_EXPORT=")

  NGL_TARGET_INCLUDE_DIRECTORIES(advancedSymbology_static
  PRIVATE
    ${CMAKE_CURRENT_SOURCE_DIR}/..
#  INTERFACE
#    ${CMAKE_CURRENT_SOURCE_DIR}
  )
  NGL_TARGET_LINK_LIBRARIES(advancedSymbology_static
    PRIVATE
      NGLLogger
      ArcGIS::ArcGIS
      Qt5::Concurrent
    PUBLIC
      advancedSymbologyXML
      Qt5::Core
      Qt5::Widgets

      LtsDataView
      LtsSessionData
      LtsUtilsCoreHeaderOnly

  )

ENDIF()

NGL_INSTALL_TARGET(advancedSymbology)

