public SendStatus SendPixelsValue(int startChannel, PhysicalDevice.PixelRGBByte[] rgb)
{
lock (lockObject)
{
if (!this.changedPixels.Any())
this.firstChange.Restart();
int readOffset = 0;
for (int i = 0; i < rgb.Length; i++)
{
int dataOffset = 1 + (startChannel + i) * 4;
this.pixelData[dataOffset + 0] = rgb[readOffset].R;
this.pixelData[dataOffset + 1] = rgb[readOffset].G;
this.pixelData[dataOffset + 2] = rgb[readOffset].B;
readOffset++;
this.changedPixels.Add((byte)(startChannel + i));
}
receivedUpdates++;
}
return SendStatus.NotSet;
}