bringup hardware
This commit is contained in:
@@ -73,13 +73,13 @@ class SPITPlayer {
|
||||
}
|
||||
|
||||
unordered_map<string, PlaySPITType *> *getPlaySPITTypes();
|
||||
void setIsRunning(bool p_IsRunning);
|
||||
void setIsRunning(bool p_IsRunning) { m_IsRunning = p_IsRunning; }
|
||||
void setName(string p_Name) { m_Name = p_Name; }
|
||||
void setType(char p_Type) { m_Type = p_Type; }
|
||||
void setTime(long long p_Frames) { m_TimeFrames = p_Frames; }
|
||||
bool getIsRunning() { return m_IsRunning; }
|
||||
void setName(string p_Name);
|
||||
string getName() { return m_Name; }
|
||||
void setType(char p_Type);
|
||||
char getType() { return m_Type; }
|
||||
void setTime(long long p_Frames);
|
||||
long long getTime() { return m_TimeFrames; }
|
||||
|
||||
private:
|
||||
|
||||
@@ -61,19 +61,6 @@ SPITPlayer::~SPITPlayer() {
|
||||
}
|
||||
}
|
||||
|
||||
void SPITPlayer::setIsRunning(bool p_IsRunning) {
|
||||
m_IsRunning = p_IsRunning;
|
||||
}
|
||||
void SPITPlayer::setName(string p_Name) {
|
||||
m_Name = p_Name;
|
||||
}
|
||||
void SPITPlayer::setType(char p_Type) {
|
||||
m_Type = p_Type;
|
||||
}
|
||||
void SPITPlayer::setTime(long long p_Frames) {
|
||||
m_TimeFrames = p_Frames;
|
||||
}
|
||||
|
||||
unordered_map<string, SPITPlayer::PlaySPITType *> *SPITPlayer::getPlaySPITTypes() {
|
||||
return &m_PlaySPITTypes;
|
||||
}
|
||||
|
||||
@@ -421,7 +421,7 @@ void SPIT_Client::addOvertakingSPIT_Message(SPIT_Message *p_SPIT_Message) {
|
||||
int intOvertakingMessageNumber;
|
||||
|
||||
if (m_OvertakingSPIT_Messages.size() > s_MAX_OVERTAKING_SPIT_MESSAGES) {
|
||||
printf("SPIT_Client receiveing: perhaps message lost !!!!!");
|
||||
ESP_LOGD(TAG, "SPIT_Client receiveing: perhaps message lost !!!!!");
|
||||
}
|
||||
|
||||
intMessageNumber = (int)(p_SPIT_Message->getHeader()->getMessageNumber() & 0xFF);
|
||||
@@ -730,7 +730,7 @@ void SPIT_Client::parseReportSPITProject(SPIT_Message::ReportSPITProject *p_Repo
|
||||
// Send RequestProjectTransfer
|
||||
SPIT_Message::RequestProjectTransfer sMRequestProjectTransfer;
|
||||
if (sendSPITMessage(sMRequestProjectTransfer) < 0) {
|
||||
printf("SPIT_Client::parseReportSPITProject could not send RequestProjectTransfer\n");
|
||||
ESP_LOGD(TAG, "SPIT_Client::parseReportSPITProject could not send RequestProjectTransfer\n");
|
||||
}
|
||||
|
||||
// todo Don't send the ReportSPITProject here it should be sended after parseEndProjectTransfer
|
||||
@@ -740,7 +740,7 @@ void SPIT_Client::parseReportSPITProject(SPIT_Message::ReportSPITProject *p_Repo
|
||||
sMReportSPITProject.setProjectName(m_ProjName);
|
||||
sMReportSPITProject.setFramesPerSecond(0);
|
||||
if (sendSPITMessage(sMReportSPITProject) < 0) {
|
||||
printf("SPIT_Client::parseReportSPITProject could not send Client's ReportSPITProject");
|
||||
ESP_LOGD(TAG, "SPIT_Client::parseReportSPITProject could not send Client's ReportSPITProject");
|
||||
}
|
||||
}
|
||||
void SPIT_Client::parseCloseSPITProject(SPIT_Message::CloseSPITProject *p_CloseSPITProject) {
|
||||
@@ -927,7 +927,7 @@ void SPIT_Client::parseStartProjectTransfer(SPIT_Message::StartProjectTransfer *
|
||||
}
|
||||
void SPIT_Client::parseEndProjectTransfer(SPIT_Message::EndProjectTransfer *p_EndProjectTransfer) {
|
||||
SPITObject::clearUnconfirmedSPITObjects();
|
||||
mCallbacks.onProjectUpdate(ProjUpdate::EndTransfer, m_ServerProjectID) ;
|
||||
mCallbacks.onProjectUpdate(ProjUpdate::EndTransfer, m_ServerProjectID);
|
||||
|
||||
// Send SPIT_Message::ReportSPITProject after the m_SPITClientInterface is notfied of EndProjectTransfer
|
||||
SPIT_Message::ReportSPITProject ptrSMReportSPITProject;
|
||||
@@ -935,7 +935,7 @@ void SPIT_Client::parseEndProjectTransfer(SPIT_Message::EndProjectTransfer *p_En
|
||||
ptrSMReportSPITProject.setProjectName(m_ProjName);
|
||||
ptrSMReportSPITProject.setFramesPerSecond(0);
|
||||
if (sendSPITMessage(ptrSMReportSPITProject) < 0) {
|
||||
printf("SPIT_Client::parseReportSPITProject could not send Client's ReportSPITProject");
|
||||
ESP_LOGD(TAG, "SPIT_Client::parseReportSPITProject could not send Client's ReportSPITProject");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1090,7 +1090,7 @@ int SPIT_Client::removeSPITType(string p_SPITTypeID) {
|
||||
return -1;
|
||||
SPIT_Message::RemoveSPITType sMRemoveSPITType;
|
||||
ptrSPITType->fillMessageOP(&sMRemoveSPITType);
|
||||
mCallbacks.onSpitType(ObjectEvent::Deleted,*ptrSPITType);
|
||||
mCallbacks.onSpitType(ObjectEvent::Deleted, *ptrSPITType);
|
||||
SPITType::removeSPITType(ptrSPITType);
|
||||
delete ptrSPITType;
|
||||
return sendSPITMessage(sMRemoveSPITType);
|
||||
@@ -1132,8 +1132,7 @@ SPITType *SPIT_Client::createSPITType(string p_ID, string p_GroupName, string p_
|
||||
|
||||
//----- SPIT Objects ------
|
||||
void SPIT_Client::parseReportSPITObject(SPIT_Message::ReportSPITObject *p_ReportSPITObject) {
|
||||
|
||||
// printf("parse ReportSPITObject %s\n", p_ReportSPITObject->getID());
|
||||
ESP_LOGD(TAG, "parse ReportSPITObject %s\n", p_ReportSPITObject->getID().c_str());
|
||||
if (p_ReportSPITObject == NULL)
|
||||
return;
|
||||
SPITObject *ptrSPITObject;
|
||||
@@ -1160,6 +1159,7 @@ void SPIT_Client::parseReportSPITObject(SPIT_Message::ReportSPITObject *p_Report
|
||||
if (ptrSPITObject == NULL) {
|
||||
// The user's app my veto the SPITType
|
||||
if (mCallbacks.onCheckSpitObjectVeto(p_ReportSPITObject) == false) {
|
||||
ESP_LOGD(TAG, "ObjectVeto %s / %s", p_ReportSPITObject->getID().c_str(), p_ReportSPITObject->getName().c_str());
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -1170,6 +1170,7 @@ void SPIT_Client::parseReportSPITObject(SPIT_Message::ReportSPITObject *p_Report
|
||||
if (mCallbacks.onCheckSpitObjectVeto(p_ReportSPITObject) == false) {
|
||||
// SpitObject exists and User APp denied the SPITObject -> remove the SPITObject without sending a message
|
||||
SPITObject::removeSPITObject(ptrSPITObject);
|
||||
ESP_LOGD(TAG, "TypeVeto %s / %s", p_ReportSPITObject->getID().c_str(), p_ReportSPITObject->getName().c_str());
|
||||
delete ptrSPITObject;
|
||||
return;
|
||||
}
|
||||
@@ -1336,89 +1337,72 @@ int SPIT_Client::removeSPITObject(string p_SPITObjectID) {
|
||||
//----- Play SPIT Objects ------
|
||||
|
||||
void SPIT_Client::parsePlaySPITStart(SPIT_Message::PlaySPITStart *p_PlaySPITStart) {
|
||||
// printf("parse PlaySPITStart ID: %s Name: %s Running: %d\n", p_PlaySPITStart->getPlayerID(), p_PlaySPITStart->getPlayerName(), p_PlaySPITStart->getPlayerIsRunning());
|
||||
SPITPlayer *ptrSPITPlayer;
|
||||
{
|
||||
ptrSPITPlayer = SPITPlayer::getSPITPlayer(p_PlaySPITStart->getPlayerID());
|
||||
if (ptrSPITPlayer == NULL)
|
||||
return;
|
||||
ptrSPITPlayer->setIsRunning(p_PlaySPITStart->getPlayerIsRunning());
|
||||
ptrSPITPlayer->setName(p_PlaySPITStart->getPlayerName());
|
||||
ptrSPITPlayer->setType(p_PlaySPITStart->getPlayerType());
|
||||
ptrSPITPlayer->setTime(p_PlaySPITStart->getTime());
|
||||
ptrSPITPlayer->startPlaySequence();
|
||||
|
||||
mCallbacks.onPlay(ptrSPITPlayer->getID(), ptrSPITPlayer->getName(), ptrSPITPlayer->getType(), ptrSPITPlayer->getIsRunning(), ptrSPITPlayer->getTime());
|
||||
}
|
||||
}
|
||||
void SPIT_Client::parsePlaySPITObject(SPIT_Message::PlaySPITObject *p_PlaySPITObject) {
|
||||
// printf("parse RPlaySPITObject Object:%s\n", p_PlaySPITObject->getSPITObjectID());
|
||||
SPITPlayer *ptrSPITPlayer;
|
||||
SPITPlayer::PlaySPITType *ptrPlaySPITType;
|
||||
SPITObject *ptrSPITObject;
|
||||
{
|
||||
ptrSPITPlayer = SPITPlayer::getSPITPlayer(p_PlaySPITObject->getPlayerID());
|
||||
if (ptrSPITPlayer == NULL)
|
||||
return;
|
||||
|
||||
// Fetch infoemations from SPITObject
|
||||
ptrSPITObject = SPITObject::getSPITObject(p_PlaySPITObject->getSPITObjectID());
|
||||
if (ptrSPITObject == NULL) {
|
||||
return;
|
||||
}
|
||||
ptrPlaySPITType = ptrSPITPlayer->addSPITType_Playing(ptrSPITObject->getSPITTypeID());
|
||||
if (ptrPlaySPITType == NULL) {
|
||||
|
||||
return;
|
||||
}
|
||||
ptrPlaySPITType->setPlayerIsRunning(ptrSPITPlayer->getIsRunning());
|
||||
ptrPlaySPITType->addValue(((double)p_PlaySPITObject->getValue() / 1000000), ((double)ptrSPITObject->getValueFactor() / 1000000));
|
||||
}
|
||||
}
|
||||
void SPIT_Client::parsePlaySPITEnd(SPIT_Message::PlaySPITEnd *p_PlaySPITEnd) {
|
||||
// printf("parse PlaySPITEnd \n");
|
||||
SPITPlayer *ptrSPITPlayer;
|
||||
SPITType *ptrSPITType = NULL;
|
||||
|
||||
// {
|
||||
// ptrSPITPlayer = SPITPlayer::getSPITPlayer(p_PlaySPITEnd->getPlayerID());
|
||||
// if (ptrSPITPlayer == NULL) return;
|
||||
|
||||
// unordered_map<string, SPITPlayer::PlayObject*>* ptrPlayObjects;
|
||||
// SPITPlayer::PlayObject* ptrPlayObject;
|
||||
// bool boolStarted;
|
||||
// bool boolStopped;
|
||||
|
||||
// ptrPlayObjects = ptrSPITPlayer->getPlayObjects();
|
||||
// for (auto i = ptrPlayObjects->begin(); i != ptrPlayObjects->end(); i++) {
|
||||
// ptrPlayObject = i->second;
|
||||
// boolStarted = false;
|
||||
// boolStopped = false;
|
||||
// if (ptrPlayObject->getIsNew()) {
|
||||
// boolStarted = true;
|
||||
// }
|
||||
// if (ptrPlayObject->getIsPlayed() == false) {
|
||||
// boolStopped = true;
|
||||
// }
|
||||
// {
|
||||
// ptrSPITObject = SPITObject::getSPITObject(ptrPlayObject->getSPITObjectID());
|
||||
// if (ptrSPITObject == NULL) {
|
||||
// return;
|
||||
// }
|
||||
// ptrSPITType = SPITType::getSPITType(ptrSPITObject->getSPITTypeID());
|
||||
// if (ptrSPITType == NULL) {
|
||||
// return;
|
||||
// }
|
||||
|
||||
// mCallbacks.onPlaySpitType(ptrPlayObject->getPlayerID(), boolStarted, boolStopped, *ptrSPITType, *ptrSPITObject, *ptrPlayObject);
|
||||
// }
|
||||
// }
|
||||
// ptrSPITPlayer->endPlaySequence();
|
||||
// }
|
||||
|
||||
ptrSPITPlayer = SPITPlayer::getSPITPlayer(p_PlaySPITEnd->getPlayerID());
|
||||
ESP_LOGD(TAG, "parse PlaySPITStart ID: %s Name: %s Running: %d", p_PlaySPITStart->getPlayerID().c_str(), p_PlaySPITStart->getPlayerName().c_str(), (int)p_PlaySPITStart->getPlayerIsRunning());
|
||||
SPITPlayer *ptrSPITPlayer = SPITPlayer::getSPITPlayer(p_PlaySPITStart->getPlayerID());
|
||||
if (ptrSPITPlayer == NULL)
|
||||
return;
|
||||
ptrSPITPlayer->setIsRunning(p_PlaySPITStart->getPlayerIsRunning());
|
||||
ptrSPITPlayer->setName(p_PlaySPITStart->getPlayerName());
|
||||
ptrSPITPlayer->setType(p_PlaySPITStart->getPlayerType());
|
||||
ptrSPITPlayer->setTime(p_PlaySPITStart->getTime());
|
||||
ptrSPITPlayer->startPlaySequence();
|
||||
|
||||
mCallbacks.onPlay(ptrSPITPlayer->getID(), ptrSPITPlayer->getName(), ptrSPITPlayer->getType(), ptrSPITPlayer->getIsRunning(), ptrSPITPlayer->getTime());
|
||||
}
|
||||
void SPIT_Client::parsePlaySPITObject(SPIT_Message::PlaySPITObject *p_PlaySPITObject) {
|
||||
SPITPlayer *ptrSPITPlayer = SPITPlayer::getSPITPlayer(p_PlaySPITObject->getPlayerID());
|
||||
if (ptrSPITPlayer == NULL)
|
||||
return;
|
||||
|
||||
SPITObject *ptrSPITObject = SPITObject::getSPITObject(p_PlaySPITObject->getSPITObjectID());
|
||||
if (ptrSPITObject == NULL) {
|
||||
return;
|
||||
}
|
||||
SPITPlayer::PlaySPITType *ptrPlaySPITType = ptrSPITPlayer->addSPITType_Playing(ptrSPITObject->getSPITTypeID());
|
||||
if (ptrPlaySPITType == NULL) {
|
||||
return;
|
||||
}
|
||||
ptrPlaySPITType->setPlayerIsRunning(ptrSPITPlayer->getIsRunning());
|
||||
ptrPlaySPITType->addValue(((double)p_PlaySPITObject->getValue() / 1000000), ((double)ptrSPITObject->getValueFactor() / 1000000));
|
||||
}
|
||||
void SPIT_Client::parsePlaySPITEnd(SPIT_Message::PlaySPITEnd *p_PlaySPITEnd) {
|
||||
SPITPlayer *ptrSPITPlayer = SPITPlayer::getSPITPlayer(p_PlaySPITEnd->getPlayerID());
|
||||
if (ptrSPITPlayer == NULL)
|
||||
return;
|
||||
|
||||
// unordered_map<string, SPITPlayer::PlaySPITType*>* ptrPlayObjects;
|
||||
// bool boolStarted;
|
||||
// bool boolStopped;
|
||||
|
||||
// SPITPlayer::PlaySPITType* ptrPlayObject = ptrSPITPlayer->getPlayObjects();
|
||||
// for (auto i = ptrPlayObjects->begin(); i != ptrPlayObjects->end(); i++) {
|
||||
// ptrPlayObject = i->second;
|
||||
// boolStarted = false;
|
||||
// boolStopped = false;
|
||||
// if (ptrPlayObject->getIsNew()) {
|
||||
// boolStarted = true;
|
||||
// }
|
||||
// if (ptrPlayObject->getIsPlayed() == false) {
|
||||
// boolStopped = true;
|
||||
// }
|
||||
// {
|
||||
// ptrSPITObject = SPITObject::getSPITObject(ptrPlayObject->getSPITObjectID());
|
||||
// if (ptrSPITObject == NULL) {
|
||||
// return;
|
||||
// }
|
||||
// SPITType *ptrSPITType = SPITType::getSPITType(ptrSPITObject->getSPITTypeID());
|
||||
// if (ptrSPITType == NULL) {
|
||||
// return;
|
||||
// }
|
||||
|
||||
// mCallbacks.onPlaySpitType(ptrPlayObject->getPlayerID(), boolStarted, boolStopped, *ptrSPITType, *ptrSPITObject, *ptrPlayObject);
|
||||
// }
|
||||
// }
|
||||
// ptrSPITPlayer->endPlaySequence();
|
||||
|
||||
// SPITPlayer *ptrSPITPlayer = SPITPlayer::getSPITPlayer(p_PlaySPITEnd->getPlayerID());
|
||||
// if (ptrSPITPlayer == NULL)
|
||||
// return;
|
||||
|
||||
unordered_map<string, SPITPlayer::PlaySPITType *> *ptrPlaySPITTypes = ptrSPITPlayer->getPlaySPITTypes();
|
||||
for (auto i = ptrPlaySPITTypes->begin(); i != ptrPlaySPITTypes->end(); i++) {
|
||||
@@ -1432,7 +1416,7 @@ void SPIT_Client::parsePlaySPITEnd(SPIT_Message::PlaySPITEnd *p_PlaySPITEnd) {
|
||||
boolStopped = true;
|
||||
}
|
||||
{
|
||||
ptrSPITType = SPITType::getSPITType(ptrPlaySPITType->getSPITTypeID());
|
||||
SPITType *ptrSPITType = SPITType::getSPITType(ptrPlaySPITType->getSPITTypeID());
|
||||
if (ptrSPITType == NULL) {
|
||||
// set isplayed to false, the ptrPlayObject will be removed by ptrSPITPlayer->endPlaySequence()
|
||||
ptrPlaySPITType->setIsPlayed(false);
|
||||
@@ -1445,13 +1429,11 @@ void SPIT_Client::parsePlaySPITEnd(SPIT_Message::PlaySPITEnd *p_PlaySPITEnd) {
|
||||
}
|
||||
|
||||
void SPIT_Client::parseReportPlayStatus(SPIT_Message::ReportPlayStatus *p_ReportPlayStatus) {
|
||||
// only REMOTE server -> client
|
||||
// printf(" parseReportPlayStatus ");
|
||||
ESP_LOGD(TAG, "parseReportPlayStatus");
|
||||
SPITType *ptrSPITType = NULL;
|
||||
SPITObject *ptrSPITObject = NULL;
|
||||
{
|
||||
|
||||
ptrSPITObject = SPITObject::getSPITObjectRemote(p_ReportPlayStatus->getID());
|
||||
SPITObject *ptrSPITObject = SPITObject::getSPITObjectRemote(p_ReportPlayStatus->getID());
|
||||
if (ptrSPITObject == NULL) {
|
||||
ptrSPITObject = SPITObject::getSPITObject(p_ReportPlayStatus->getID());
|
||||
if (ptrSPITObject == NULL) {
|
||||
|
||||
Reference in New Issue
Block a user