#ifndef PLAYER_H #define PLAYER_H #include #include #include "model/scenarioGenerator/ScenarioGenerator.h" #include "model/player/dto/PlayerDisplayParameters.h" #include "model/evocator/dto/CineDisplayParameters.h" #include "viewModel/cine/setting/DataCineSetting.h" #include "viewModel/cine/display/DataCineDisplay.h" #include "model/backendImageProcessor/Bip.h" #include "model/ultrasoundModule/UsModule.h" #include "model/ultrasoundModule/UsData.h" #include "model/player/core/PlayerCore.h" #include "viewModel/MainViewModel.h" #include "config/Configuration.h" /*************************************************************************************************/ /** * @brief This is a UsModule that playe scans. * @author Mohammad Mohsen Talaie * @details This module replay exam data for checking exam data after scan. * @date 18 oct 2020 */ /*************************************************************************************************/ class Player : public UsModule { Q_OBJECT US_MODULE SINGLETON(Player) private: PlayerCore* _core; Player(); void prepareCoreForChangePlayOriginal(const DataCineSetting_t& dataCineSetting); void sendPlayerDisplayParametersToVM(const PlayerDisplayParameters_t& playerData); void updataOriginalPlay(const DataCineSetting_t& dataCineSetting); void updateSubClipStart(const DataCineSetting_t& dataCineSetting); void updateSubClipEnd(const DataCineSetting_t& dataCineSetting); void updateCinePlay(const DataCineSetting_t&); void updateRepeat(const DataCineSetting_t& dataCineSetting); void updateBSpeed(const DataCineSetting_t& dataCineSetting); void updateCoreCineSettingParameters(const DataCineSetting_t& dataCineSetting); bool checkOriginalPlayHasChanged(const DataCineSetting_t& dataCineSetting); bool checkDataCineSettingPlay(const DataCineSetting_t& dataCineSetting); bool checkIncomeSubClipStartHasChanged(const DataCineSetting_t& dataCineSetting); bool checkIncomeSubClipEndHasChanged(const DataCineSetting_t& dataCineSetting); bool checkIncomeCinePlayHasChanged(const DataCineSetting_t& dataCineSetting); bool checkDataCineSettingRepeatHasChanged(const DataCineSetting_t& dataCineSetting); bool checkIncomeBSpeedHasChanged(const DataCineSetting_t& dataCineSetting); bool checkCorePlayerIsFalse(); PlayerDisplayParameters_t preparePlayerDisplayParameters(const UsMetadataBag& metadataBag); PlayerDisplayParameters_t createPlayerDisplayParameters(const PlayerMetadata& playerMetadata); public: ~Player() override; //uncrustify off public slots: //uncrustify on void getUsPacketFromCore(const UsPacket& input); void getPlaySituation(const bool& play); void getBufferFromEvocator(QList > inputBuffer); }; #endif //PLAYER_H