diff --git a/FlippR-Driver/CMakeLists.txt b/FlippR-Driver/CMakeLists.txt index cfc2f74..736e081 100644 --- a/FlippR-Driver/CMakeLists.txt +++ b/FlippR-Driver/CMakeLists.txt @@ -2,6 +2,7 @@ option(BUILD_SHARED_LIB "Build a shared lib instead of a static." OFF) option(ENABLE_TESTING "Enables testing." ON) option(CROSS_COMPILE "Enables crosscompiling for raspberry pi" OFF) +option(BUILD_CLI "Makes a basic testing cli" OFF) #################### CONFIGURATION ###################### set(OUTPUT_PATH bin) @@ -143,4 +144,8 @@ target_link_libraries(${PROJECT_NAME} PRIVATE ${Threads_LIBRARIES}) if(ENABLE_TESTING) add_subdirectory(tests) endif(ENABLE_TESTING) + +if(BUILD_CLI) + add_subdirectory(cli) +endif(BUILD_CLI) ####################### END_CMAKE ######################## diff --git a/FlippR-Driver/cli/CMakeLists.txt b/FlippR-Driver/cli/CMakeLists.txt new file mode 100644 index 0000000..11e680b --- /dev/null +++ b/FlippR-Driver/cli/CMakeLists.txt @@ -0,0 +1,8 @@ +cmake_minimum_required(VERSION 3.6.2) +project(FlippR_Driver_CLI) + +set(EXECUTABLE_OUTPUT_PATH ${CMAKE_SOURCE_DIR}/${OUTPUT_PATH}/cli) +add_executable(${PROJECT_NAME} main.cpp) + +target_include_directories(${PROJECT_NAME} PRIVATE ${CMAKE_SOURCE_DIR}/include) +target_link_libraries(${PROJECT_NAME} PRIVATE FlippR-Driver) diff --git a/FlippR-Driver/cli/main.cpp b/FlippR-Driver/cli/main.cpp new file mode 100644 index 0000000..1f3ede2 --- /dev/null +++ b/FlippR-Driver/cli/main.cpp @@ -0,0 +1,30 @@ +// +// Created by rhetenor on 13.09.18. +// +#include +#include "IInputDriverFactory.h" +#include "IInputDriver.h" + +int main (int argc, char *argv[]) +{ + if(argc != 2) + { + std::cout << "Usage: " << argv[0] << " "; + } + std::string config_file = argv[1]; + + std::ifstream config; + try + { + config.open(config_file); + } + catch(const std::exception& e) + { + std::cout << e.what(); + exit(1); + } + + + + +} diff --git a/FlippR-Driver/include/IInputDriver.h b/FlippR-Driver/include/IInputDriver.h index 0b57627..3cd4f84 100644 --- a/FlippR-Driver/include/IInputDriver.h +++ b/FlippR-Driver/include/IInputDriver.h @@ -8,8 +8,8 @@ #ifndef SRC_INPUT_IINPUTDRIVER_H_ #define SRC_INPUT_IINPUTDRIVER_H_ -#include "utilities/IEventHandler.h" -#include "input/IEventNotifier.h" +#include "IEventHandler.h" +#include namespace Input { diff --git a/FlippR-Driver/src/input/ErrorEvent.hpp b/FlippR-Driver/src/input/ErrorEvent.hpp index 0588c3c..660746f 100644 --- a/FlippR-Driver/src/input/ErrorEvent.hpp +++ b/FlippR-Driver/src/input/ErrorEvent.hpp @@ -17,7 +17,7 @@ class ErrorEvent : public Event { public: ErrorEvent() : - Event(0, HIGHEST_INPUT_EVENT_PRIORITY, "ERROR") + Event(0, 0, "ERROR") {} }; } diff --git a/FlippR-Driver/src/input/Event.cpp b/FlippR-Driver/src/input/Event.cpp index 2697c2c..825afda 100644 --- a/FlippR-Driver/src/input/Event.cpp +++ b/FlippR-Driver/src/input/Event.cpp @@ -6,6 +6,8 @@ */ #include "Event.h" +#include "utilities/config.h" + namespace Input { diff --git a/FlippR-Driver/src/input/Event.h b/FlippR-Driver/src/input/Event.h deleted file mode 100644 index 99972a1..0000000 --- a/FlippR-Driver/src/input/Event.h +++ /dev/null @@ -1,43 +0,0 @@ -/* - * InputEvent.h - * - * Created on: Apr 5, 2018 - * Author: Andreas Schneider, Johannes Wendel, Jonas Zeunert, Rafael Vinci, Dr. Franca Rupprecht - */ - -#ifndef INPUTEVENT_H_ -#define INPUTEVENT_H_ - -#include -#include - -#include "utilities/config.h" - -namespace Input -{ - -class Event -{ -public: - Event(char address, int priority, std::string name); - - friend bool operator==(const Event& left, const Event& right); - friend bool operator<(const Event& left, const Event& right) - { - return left.priority < right.priority; - } - -private: - char address; - -public: - int priority; - std::string name; -}; - -bool operator==(const Event& left, const Event& right); - -} - - -#endif /* INPUTEVENT_H_ */ diff --git a/FlippR-Driver/src/input/EventHandler.h b/FlippR-Driver/src/input/EventHandler.h index db0bfdd..b1d4328 100644 --- a/FlippR-Driver/src/input/EventHandler.h +++ b/FlippR-Driver/src/input/EventHandler.h @@ -14,7 +14,7 @@ #include "IInputDriver.h" -#include "utilities/IEventHandler.h" +#include "IEventHandler.h" #include "utilities/config.h" #include "Event.h" diff --git a/FlippR-Driver/src/input/IEventNotifier.h b/FlippR-Driver/src/input/IEventNotifier.h index 5183513..c88c9cc 100644 --- a/FlippR-Driver/src/input/IEventNotifier.h +++ b/FlippR-Driver/src/input/IEventNotifier.h @@ -9,7 +9,8 @@ #define SRC_INPUT_IEVENTNOTIFIER_H_ #include "Event.h" -#include "utilities/IEventHandler.h" +#include "IEventHandler.h" +#include namespace Input { diff --git a/FlippR-Driver/src/input/InputDriver.h b/FlippR-Driver/src/input/InputDriver.h index 010e08d..47d520e 100644 --- a/FlippR-Driver/src/input/InputDriver.h +++ b/FlippR-Driver/src/input/InputDriver.h @@ -9,6 +9,7 @@ #include "utilities/config.h" +#include "IEventNotifier.h" #include "IInputDriver.h" #include "IDetector.h" diff --git a/FlippR-Driver/src/utilities/IEventHandler.h b/FlippR-Driver/src/utilities/IEventHandler.h deleted file mode 100644 index 6ec9759..0000000 --- a/FlippR-Driver/src/utilities/IEventHandler.h +++ /dev/null @@ -1,21 +0,0 @@ -/* - * IEventHandler.h - * - * Created on: Jun 13, 2018 - * Author: Andreas Schneider, Johannes Wendel, Jonas Zeunert, Rafael Vinci, Dr. Franca Rupprecht - */ - -#ifndef SRC_IEVENTHANDLER_H_ -#define SRC_IEVENTHANDLER_H_ - -#include "input/Event.h" - -class IEventHandler -{ -public: - virtual ~IEventHandler(){}; - - virtual void handle(Input::Event& event) = 0; -}; - -#endif /* SRC_IEVENTHANDLER_H_ */ diff --git a/FlippR-Driver/tests/input/TestDetector.cpp b/FlippR-Driver/tests/input/TestDetector.cpp index e67bce5..41298ab 100644 --- a/FlippR-Driver/tests/input/TestDetector.cpp +++ b/FlippR-Driver/tests/input/TestDetector.cpp @@ -16,7 +16,7 @@ #define private public #include "input/IEventNotifier.h" -#include "input/Event.h" +#include "Event.h" #include "input/Detector.h" #include "utilities/LoggerFactory.hpp" #include "utilities/InputGPIOInterface.h" diff --git a/FlippR-Driver/tests/input/TestEventNotifier.cpp b/FlippR-Driver/tests/input/TestEventNotifier.cpp index 3d80c64..9e33784 100644 --- a/FlippR-Driver/tests/input/TestEventNotifier.cpp +++ b/FlippR-Driver/tests/input/TestEventNotifier.cpp @@ -11,7 +11,7 @@ #include "utilities/LoggerFactory.hpp" -#include "utilities/IEventHandler.h" +#include "IEventHandler.h" #include "utilities/IBlockingQueue.h"