diff options
Diffstat (limited to 'AudioManagerUtilities')
-rw-r--r-- | AudioManagerUtilities/CMakeLists.txt | 33 | ||||
-rw-r--r-- | AudioManagerUtilities/include/CAmDltWrapper.h | 2 | ||||
-rw-r--r-- | AudioManagerUtilities/include/CAmSerializer.h | 16 | ||||
-rw-r--r-- | AudioManagerUtilities/src/CAmDbusWrapper.cpp | 6 |
4 files changed, 45 insertions, 12 deletions
diff --git a/AudioManagerUtilities/CMakeLists.txt b/AudioManagerUtilities/CMakeLists.txt index 98abc69..6e9a06f 100644 --- a/AudioManagerUtilities/CMakeLists.txt +++ b/AudioManagerUtilities/CMakeLists.txt @@ -23,6 +23,8 @@ SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC") SET(AUDIOMANAGER_UTILITIES_EXTERNAL_INCLUDE "") +SET(AUDIOMANAGER_UTILITIES_EXTERNAL_LIB_DIRECTORIES "") + SET(AUDIO_MANAGER_UTILITIES_LIBS ${CMAKE_DL_LIBS} CACHE INTERNAL "AUDIO_MANAGER_UTILITIES_LIBS libs" FORCE) @@ -46,6 +48,9 @@ if(WITH_SYSTEMD_WATCHDOG) ${AUDIO_MANAGER_UTILITIES_LIBS} ${SYSTEMD_LIBRARIES} CACHE INTERNAL "AUDIO_MANAGER_UTILITIES_LIBS libs" FORCE) + set(AUDIOMANAGER_UTILITIES_EXTERNAL_LIB_DIRECTORIES + ${AUDIOMANAGER_UTILITIES_EXTERNAL_LIB_DIRECTORIES} + ${SYSTEMD_LIBRARY_DIRS}) set(AUDIOMANAGER_UTILITIES_EXTERNAL_INCLUDE ${AUDIOMANAGER_UTILITIES_EXTERNAL_INCLUDE} ${SYSTEMD_INCLUDEDIR}) @@ -67,6 +72,10 @@ IF (WITH_DBUS_WRAPPER) ${DBUS_LIBRARIES} CACHE INTERNAL "AUDIO_MANAGER_UTILITIES_LIBS libs" FORCE) + set(AUDIOMANAGER_UTILITIES_EXTERNAL_LIB_DIRECTORIES + ${AUDIOMANAGER_UTILITIES_EXTERNAL_LIB_DIRECTORIES} + ${DBUS_LIBRARY_DIRS}) + set(AUDIO_MANAGER_UTILITIES_SRCS_CXX ${AUDIO_MANAGER_UTILITIES_SRCS_CXX} src/CAmDbusWrapper.cpp) @@ -81,6 +90,11 @@ IF (WITH_CAPI_WRAPPER) ${COMMONAPI_DBUS_LIBRARIES} CACHE INTERNAL "AUDIO_MANAGER_UTILITIES_LIBS libs" FORCE) + set(AUDIOMANAGER_UTILITIES_EXTERNAL_LIB_DIRECTORIES + ${AUDIOMANAGER_UTILITIES_EXTERNAL_LIB_DIRECTORIES} + ${COMMONAPI_LIBRARY_DIRS} + ${COMMONAPI_DBUS_LIBRARY_DIRS}) + set(AUDIO_MANAGER_UTILITIES_SRCS_CXX ${AUDIO_MANAGER_UTILITIES_SRCS_CXX} src/CAmCommonAPIWrapper.cpp) @@ -90,20 +104,24 @@ IF (WITH_CAPI_WRAPPER) ${COMMONAPI_INCLUDE_DIRS}) ENDIF (WITH_CAPI_WRAPPER) -if(WITH_DLT) - pkg_check_modules(DLT REQUIRED "automotive-dlt >= 2.2.0") +IF (WITH_DLT) + pkg_check_modules(DLT REQUIRED "automotive-dlt >= 2.2.0") add_definitions(${DLT_CFLAGS_OTHER}) set(AUDIO_MANAGER_UTILITIES_LIBS ${AUDIO_MANAGER_UTILITIES_LIBS} - ${DLT_LDFLAGS} + ${DLT_LIBRARIES} CACHE INTERNAL "AUDIO_MANAGER_UTILITIES_LIBS libs" FORCE) + set(AUDIOMANAGER_UTILITIES_EXTERNAL_LIB_DIRECTORIES + ${AUDIOMANAGER_UTILITIES_EXTERNAL_LIB_DIRECTORIES} + ${DLT_LIBRARY_DIRS}) + SET(AUDIOMANAGER_UTILITIES_EXTERNAL_INCLUDE ${AUDIOMANAGER_UTILITIES_EXTERNAL_INCLUDE} - ${DLT_LIBRARY_DIRS}) -endif(WITH_DLT) + ${DLT_INCLUDE_DIRS}) +endif (WITH_DLT) SET(AUDIOMANAGER_UTILITIES_INCLUDE ${AUDIOMANAGER_UTILITIES}/include @@ -113,9 +131,14 @@ SET(AUDIOMANAGER_UTILITIES_INCLUDE ${AUDIOMANAGER_UTILITIES_EXTERNAL_INCLUDE} CACHE INTERNAL "AUDIOMANAGER_INCLUDE directories" FORCE) +SET(AUDIOMANAGER_UTILITIES_LIB_DIRECTORIES + ${AUDIOMANAGER_UTILITIES_EXTERNAL_LIB_DIRECTORIES} + CACHE INTERNAL "AUDIOMANAGER_UTILITIES_LIB_DIRECTORIES directories" FORCE) INCLUDE_DIRECTORIES(${AUDIOMANAGER_UTILITIES_INCLUDE}) +LINK_DIRECTORIES(${AUDIOMANAGER_UTILITIES_LIB_DIRECTORIES}) + ADD_LIBRARY(AudioManagerUtilities ${LIBRARY_TYPE} ${AUDIO_MANAGER_UTILITIES_SRCS_CXX}) TARGET_LINK_LIBRARIES(AudioManagerUtilities ${AUDIO_MANAGER_UTILITIES_LIBS}) diff --git a/AudioManagerUtilities/include/CAmDltWrapper.h b/AudioManagerUtilities/include/CAmDltWrapper.h index dc5ec64..8c2b514 100644 --- a/AudioManagerUtilities/include/CAmDltWrapper.h +++ b/AudioManagerUtilities/include/CAmDltWrapper.h @@ -29,7 +29,7 @@ #include "audiomanagertypes.h" #ifdef WITH_DLT - #include <dlt/dlt.h> + #include <dlt.h> #else #include <stdint.h> #include <sstream> diff --git a/AudioManagerUtilities/include/CAmSerializer.h b/AudioManagerUtilities/include/CAmSerializer.h index 40f2f07..b0cd70e 100644 --- a/AudioManagerUtilities/include/CAmSerializer.h +++ b/AudioManagerUtilities/include/CAmSerializer.h @@ -254,6 +254,8 @@ private: int mPipe[2]; //!< the pipe int mReturnPipe[2]; //!< pipe handling returns + sh_pollHandle_t mHandle; + CAmSocketHandler* mpSocketHandler; std::deque<CAmDelegagePtr> mListDelegatePoiters; //!< intermediate queue to store the pipe results public: @@ -764,6 +766,8 @@ public: CAmSerializer(CAmSocketHandler *iSocketHandler) : mPipe(), // mReturnPipe(),// + mHandle(), + mpSocketHandler(iSocketHandler), mListDelegatePoiters(), // receiverCallbackT(this, &CAmSerializer::receiverCallback), // dispatcherCallbackT(this, &CAmSerializer::dispatcherCallback), // @@ -784,17 +788,17 @@ public: } short event = 0; - sh_pollHandle_t handle; event |= POLLIN; - iSocketHandler->addFDPoll(mPipe[0], event, NULL, &receiverCallbackT, &checkerCallbackT, &dispatcherCallbackT, NULL, handle); + mpSocketHandler->addFDPoll(mPipe[0], event, NULL, &receiverCallbackT, &checkerCallbackT, &dispatcherCallbackT, NULL, mHandle); } ~CAmSerializer() { - close(mPipe[0]); - close(mPipe[1]); - close(mReturnPipe[0]); - close(mReturnPipe[1]); + mpSocketHandler->removeFDPoll(mHandle); + close(mPipe[0]); + close(mPipe[1]); + close(mReturnPipe[0]); + close(mReturnPipe[1]); } }; } /* namespace am */ diff --git a/AudioManagerUtilities/src/CAmDbusWrapper.cpp b/AudioManagerUtilities/src/CAmDbusWrapper.cpp index 84ac4a3..b87d3a5 100644 --- a/AudioManagerUtilities/src/CAmDbusWrapper.cpp +++ b/AudioManagerUtilities/src/CAmDbusWrapper.cpp @@ -106,6 +106,12 @@ CAmDbusWrapper::CAmDbusWrapper(CAmSocketHandler* socketHandler, DBusBusType type logError("DBusWrapper::DBusWrapper Registering of timer functions failed"); } + if (prefix.empty() && objectPath.empty()) + { + logInfo("DBusWrapper::DBusWrapper We don't register a connection object!"); + return; + } + //register callback for Introspectio mObjectPathVTable.message_function = CAmDbusWrapper::cbRootIntrospection; dbus_connection_register_object_path(mpDbusConnection, objectPath.c_str(), &mObjectPathVTable, this); |