server: Z21 ClientKernel, try/catch when updating decoder
Dieser Commit ist enthalten in:
Ursprung
3e3eaca008
Commit
50279a12d9
@ -133,20 +133,27 @@ void ClientKernel::receive(const Message& message)
|
|||||||
speed = reply.speedStep(), speedMax=reply.speedSteps(),
|
speed = reply.speedStep(), speedMax=reply.speedSteps(),
|
||||||
dir = reply.direction(), val, maxFunc]()
|
dir = reply.direction(), val, maxFunc]()
|
||||||
{
|
{
|
||||||
if(auto decoder = m_decoderController->getDecoder(DCC::getProtocol(address), address))
|
try
|
||||||
{
|
{
|
||||||
float throttle = Decoder::speedStepToThrottle(speed, speedMax);
|
if(auto decoder = m_decoderController->getDecoder(DCC::getProtocol(address), address))
|
||||||
|
|
||||||
decoder->emergencyStop = isEStop;
|
|
||||||
decoder->direction = dir;
|
|
||||||
|
|
||||||
decoder->throttle = throttle;
|
|
||||||
|
|
||||||
for(int i = 0; i <= maxFunc; i++)
|
|
||||||
{
|
{
|
||||||
decoder->setFunctionValue(i, val[i]);
|
float throttle = Decoder::speedStepToThrottle(speed, speedMax);
|
||||||
|
|
||||||
|
decoder->emergencyStop = isEStop;
|
||||||
|
decoder->direction = dir;
|
||||||
|
|
||||||
|
decoder->throttle = throttle;
|
||||||
|
|
||||||
|
for(int i = 0; i <= maxFunc; i++)
|
||||||
|
{
|
||||||
|
decoder->setFunctionValue(i, val[i]);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
catch(...)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|||||||
Laden…
x
In neuem Issue referenzieren
Einen Benutzer sperren