private void _createRoot(string label) { if (Root != 0) { return; } IHSApplication hs = _plugin.hs; int hsRef = hs.NewDeviceRef(label); DeviceClass device = (DeviceClass)hs.GetDeviceByRef(hsRef); device.set_Address(hs, GetSubDeviceAddress(SubDeviceType.Root)); device.set_Interface(hs, _plugin.Name); device.set_InterfaceInstance(hs, _plugin.InstanceFriendlyName()); device.set_Device_Type_String(hs, "LIFX Root Device"); device.set_DeviceType_Set(hs, new DeviceTypeInfo_m.DeviceTypeInfo { Device_Type = DeviceTypeInfo_m.DeviceTypeInfo.eDeviceType_GenericRoot }); hs.SetDeviceString(hsRef, "No Status", false); Root = hsRef; }