Less loops if main segment only length < totalLen

This commit is contained in:
mxklb 2023-11-18 15:23:34 +01:00
parent bdd667d02d
commit 3d9d658a7e

View File

@ -153,7 +153,7 @@ void handleE131Packet(e131_packet_t* p, IPAddress clientIP, byte protocol){
if (availDMXLen < dmxChannelCount) return;
wChannel = dmxChannelCount == 4 ? e131_data[dataOffset+3] : 0;
for (uint16_t i = 0; i < totalLen; i++)
for (uint16_t i = 0; i < useMainSegmentOnly ? strip.getMainSegment().length() : totalLen; i++)
setRealtimePixel(i, e131_data[dataOffset+0], e131_data[dataOffset+1], e131_data[dataOffset+2], wChannel);
break;
@ -172,7 +172,7 @@ void handleE131Packet(e131_packet_t* p, IPAddress clientIP, byte protocol){
}
wChannel = dmxChannelCount == 5 ? e131_data[dataOffset+4] : 0;
for (uint16_t i = 0; i < totalLen; i++)
for (uint16_t i = 0; i < useMainSegmentOnly ? strip.getMainSegment().length() : totalLen; i++)
setRealtimePixel(i, e131_data[dataOffset+1], e131_data[dataOffset+2], e131_data[dataOffset+3], wChannel);
break;