/** * MainHandler for TetraRadio * $Id$ * $HeadURL$ * $Author$ * Created by Christian Ehrlicher, SLSE, 2016-04-14 */ #include "main_handler.h" #include namespace WarehouseManagement { MainHandler::MainHandler() : QObject() , m_logger(getLogger("MainHandler")) {} MainHandler::~MainHandler() { delete m_dataManager; m_wms2ecc = nullptr; m_exercisesHandler = nullptr; m_ddsHandler = nullptr; } bool MainHandler::init(int domainId) { // initialize DDS m_ddsHandler = std::make_shared(domainId); if (!m_ddsHandler->init()) return false; m_exercisesHandler = std::make_shared(m_ddsHandler); if (!m_exercisesHandler->init()) return false; m_wms2ecc = std::make_shared(m_exercisesHandler); m_dataManager = new DataManager(m_wms2ecc, m_ddsHandler, m_exercisesHandler); m_dataManager->init(); connect(m_exercisesHandler.get(), &ExercisesHandler::participantChanged, m_dataManager, &DataManager::onParticipantChanged); connect(m_exercisesHandler.get(), &ExercisesHandler::exerciseChanged, m_dataManager, &DataManager::onExerciseChanged); connect(m_exercisesHandler.get(), &ExercisesHandler::registrationReturnValue, m_dataManager, &DataManager::onRegistrationReturnValue); m_ddsHandler->pacemaker()->setNewState(Core::RunningState::inner_enum::Running); return true; } } // namespace WarehouseManagement