public void OnSeaLevelDigitalOutput(DigitalOutputDevice digitalOutput) { var outputs = BitConverter.GetBytes(Convert.ToInt32(string.Join("", DigitalOutput.Select(c => Convert.ToInt32(c.Value))), 2)); SM_WriteDigitalOutputs(0, DigitalOutput.Count, outputs); if (SeaLevelDigitalOutput != null) { SeaLevelDigitalOutput.Invoke(this, digitalOutput); } }