Rellamar a desencadenadores si hace falta
parent
9630d9ce07
commit
e4be7231c7
|
|
@ -180,7 +180,7 @@ void MqttDesencadenador::procesaVar(MqttExeParam *p)
|
|||
}
|
||||
}
|
||||
}
|
||||
void MqttDesencadenador::Exe(MqttVarManager *vars)
|
||||
bool MqttDesencadenador::Exe(MqttVarManager *vars)
|
||||
{
|
||||
#ifdef DEBUG_PS
|
||||
|
||||
|
|
@ -191,6 +191,7 @@ void MqttDesencadenador::Exe(MqttVarManager *vars)
|
|||
#endif
|
||||
//por ahora limite de 2 var
|
||||
MqttExeParam p;
|
||||
bool res=false;
|
||||
while(expresion[p.i]!=0 && p.sigue)
|
||||
{
|
||||
/*
|
||||
|
|
@ -201,6 +202,7 @@ void MqttDesencadenador::Exe(MqttVarManager *vars)
|
|||
Serial.println(estado);
|
||||
#endif
|
||||
*/
|
||||
|
||||
switch(p.estado)
|
||||
{
|
||||
|
||||
|
|
@ -229,6 +231,7 @@ void MqttDesencadenador::Exe(MqttVarManager *vars)
|
|||
else
|
||||
{
|
||||
activo=false;
|
||||
res=true;
|
||||
/*#ifdef DEBUG_PS
|
||||
activo=false;
|
||||
Serial.println("Fin causa sigue ");
|
||||
|
|
@ -335,7 +338,7 @@ void MqttDesencadenador::Exe(MqttVarManager *vars)
|
|||
|
||||
Serial.println("MqttDesencadenador::Exe fin");
|
||||
#endif
|
||||
|
||||
return res;
|
||||
}
|
||||
//*******************************************************************
|
||||
MqttDesencadenadorArray::MqttDesencadenadorArray()
|
||||
|
|
@ -402,15 +405,20 @@ void MqttDesencadenadorManager::RevisaDesencadenadores()
|
|||
#ifdef DEBUG_PS
|
||||
Serial.println("MqttDesencadenadorManager::RevisaDesencadenadores");
|
||||
#endif
|
||||
bool revisa=true;
|
||||
while(revisa)
|
||||
{
|
||||
revisa=false;
|
||||
for(int i=0; i<des.n; i++)
|
||||
{
|
||||
des.Get(i)->Exe(vars);
|
||||
if(des.Get(i)->Exe(vars))
|
||||
revisa=true;
|
||||
}
|
||||
|
||||
//desmarca Var de volatiles
|
||||
vars->ResetVolatileVar();
|
||||
#ifdef DEBUG_PS
|
||||
}
|
||||
|
||||
#ifdef DEBUG_PS
|
||||
Serial.println("RevisaDesencadenadores fin");
|
||||
#endif
|
||||
}
|
||||
|
|
|
|||
|
|
@ -50,7 +50,7 @@ class MqttDesencadenador
|
|||
|
||||
MqttDesencadenador();
|
||||
|
||||
void Exe(MqttVarManager *vars);
|
||||
bool Exe(MqttVarManager *vars);
|
||||
|
||||
//auxiliar----------------
|
||||
void procesaVar(MqttExeParam *p);
|
||||
|
|
|
|||
Loading…
Reference in New Issue