You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
89 lines
2.7 KiB
89 lines
2.7 KiB
|
5 years ago
|
#ifndef PLAYER_H
|
||
|
|
#define PLAYER_H
|
||
|
|
|
||
|
|
#include <QObject>
|
||
|
|
#include <QMutex>
|
||
|
|
|
||
|
|
#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<QQueue<UsPacket> > inputBuffer);
|
||
|
|
};
|
||
|
|
|
||
|
|
#endif //PLAYER_H
|