static SensorManager() { BuildSensorTypeMap(); _sensorMgr = new Windows7.Sensors.Internal.SensorManager(); _eventSink = new SensorManagerEventSink(); Thread.MemoryBarrier(); _sensorMgr.SetEventSink(_eventSink); }
private static bool SensorExists(Guid sensorTypeGuid) { ISensorManager sensorManager = null; ISensorCollection sensorCollection = null; try { sensorManager = (ISensorManager) new SensorManager(); var result = sensorManager.GetSensorsByType( sensorTypeGuid, out sensorCollection); if (result != S_OK) { if (result == E_ELEMENTNOTFOUND) { Debug.WriteLine("The sensor of a specified type is not found."); } return(false); } sensorCollection.GetCount(out uint count); return(0 < count); } catch (COMException ex) { switch ((uint)ex.HResult) { case 0x800704EC: // Message: This program is blocked by group policy. For more information, // contact your system administrator. (Exception from HRESULT: 0x800704EC). // 0x800704EC means 0x04EC -> 1260 -> ERROR_ACCESS_DISABLED_BY_POLICY return(false); case 0x80040154: // Message: Class not registered (Exception from HRESULT: 0x80040154 // (REGDB_E_CLASSNOTREG)). return(false); } throw; } finally { if (sensorManager is not null) { Marshal.FinalReleaseComObject(sensorManager); } if (sensorCollection is not null) { Marshal.FinalReleaseComObject(sensorCollection); } } }
private async void InitSockerBot() { var hostNames = NetworkInformation.GetHostNames(); var computerName = hostNames.FirstOrDefault(name => name.Type == HostNameType.DomainName)?.DisplayName ?? "???"; var pin = await LagoVista.Core.PlatformSupport.Services.Storage.GetKVPAsync <string>("PIN"); if (String.IsNullOrEmpty(pin)) { var rnd = new Random(); pin = rnd.Next(1000, 9999).ToString(); await LagoVista.Core.PlatformSupport.Services.Storage.StoreKVP("PIN", pin); } Debug.WriteLine("========================================"); Debug.WriteLine("NOTE: NOTE: NOTE: Your PIN is: " + pin); Debug.WriteLine("========================================"); _logger = new Loggers.DebugLogger(); switch (AnalyticsInfo.VersionInfo.DeviceFamily) { case "Windows.IoT": var ports = (await LagoVista.Core.PlatformSupport.Services.DeviceManager.GetSerialPortsAsync()); if (ports.Count == 0) { throw new Exception("Could not find any serial ports, a serial port is required."); } else if (ports.Count > 1) { throw new Exception("Found more than one serial port, please add additional logic to select the serial port the mBot is connected to."); } var serialPortChannel = new SerialPortChannel(ports.First().Id, _logger); await serialPortChannel.ConnectAsync(); _tankBot = new mBlockTankBot(serialPortChannel, _logger, pin); _sensorManager = new SensorManager(); await _sensorManager.InitAsync(); _sensorManager.Start(); break; case "Windows.Desktop": _tankBot = new SimulatedSoccerBot(); break; } ConnectionManager.Start(computerName, _tankBot, _logger, _sensorManager, Constants.WebListenerPort, Constants.TCPListenPort, Constants.UPNPListenPort); }
private void StartTCPServer(int port, ITankBot soccerBot, ISensorManager sensorManager) { try { Server = new Server(_logger, port, soccerBot, sensorManager); Server.Start(); } catch (Exception ex) { _logger.NotifyUserError("ConnectionManager_StartTCPServer", ex.Message); } }
public Server(ITankBotLogger logger, int port, ITankBot soccerBot, ISensorManager sensorManager) { _port = port; _logger = logger; _tankBot = soccerBot; _sensorManager = sensorManager; _clients = new ConcurrentDictionary <string, IClient>(); _watchDog = new System.Threading.Timer(_watchDog_Tick, null, 0, 2500); _sensorUpdateTimer = new System.Threading.Timer(_sensorUpdateTimer_Tick, null, 0, 100); }
public SensorController(IMapper mapper, ISensorManager sensorManager, IIconManager iconManager, ISensorTypeManager sensorTypeManager, UserManager <AppUser> userManager, IHostingEnvironment env) { _sensorManager = sensorManager; _sensorTypeManager = sensorTypeManager; _iconManager = iconManager; _mapper = mapper; _userManager = userManager; _env = env; }
public void Test() { var mgr = new ISensorManager(); foreach (var s in mgr.GetSensorsByCategory(Sensors.SENSOR_CATEGORY_ALL).Enumerate()) { Console.WriteLine($"{s.GetFriendlyName()}: {s.GetID()}"); var vals = s.GetProperties(null); foreach (var pv in vals.Enumerate()) { Console.WriteLine($" {pv.Item2}"); } } }
public ValueController( IToastManager messageManager, IHistoryManager historyTestManager, ISensorManager sensorManager, IActionService actionService, IInvSensorNotificationManager notificationManager, UserManager <AppUser> userManager, IEmailSender emailSender) { _historyManager = historyTestManager; _actionService = actionService; _toastManager = messageManager; _sensorManager = sensorManager; _notificationManager = notificationManager; _userManager = userManager; _emailSender = emailSender; }
protected virtual void Initialize(ISensorManager i_Parent) { if (i_Parent == null) { return; } Samples = new SampleList(this); TimeStamps = new SampleList(this); Alarm = new SensorAlarm(this); InitializeParent(i_Parent); InitializeCalibration(); Samples.OnSampleAdded += ParentSensorManager.SampleAdded; TimeStamps.OnSampleAdded += ParentSensorManager.TimeStampAdded; }
public SensorTestPage() : base() { latestAccelerometerData = null; latestMagneticFieldData = null; ISensorManager sensorManager = DependencyService.Get <ISensorManager>(); _ConnectionManager = DependencyService.Get <IConnectionManager>(); ISensor gyroSensor = sensorManager[SensorType.Gyroscope]; gyroSensor.Activate(); gyroSensor.OnSensorDataUpdated += _SensorDataHandler; ISensor accelerometerSensor = sensorManager[SensorType.Accelerometer]; accelerometerSensor.Activate(); accelerometerSensor.OnSensorDataUpdated += _SensorDataHandler; ISensor magneticField = sensorManager[SensorType.MagneticField]; magneticField.Activate(); magneticField.OnSensorDataUpdated += _SensorDataHandler; ISensor rotationVectorSensor = sensorManager[SensorType.RotationVector]; rotationVectorSensor.Activate(); rotationVectorSensor.OnSensorDataUpdated += _SensorDataHandler; IVelocitySensor velocitySensor = sensorManager[SensorType.Velocity] as IVelocitySensor; velocitySensor.Activate(); velocitySensor.OnSensorDataUpdated += _SensorDataHandler; Button resetButton = new Button(); resetButton.Text = "RESET"; resetButton.Clicked += (object sender, EventArgs e) => { velocitySensor.Reset(); }; ControllerContentView = new StackLayout { Children = { new Label { Text = "Sensor Testttt" }, resetButton } }; }
public NextIdeaController() { ISensorManager sensorManager = DependencyService.Get <ISensorManager>(); _ConnectionManager = DependencyService.Get <IConnectionManager>(); rotationVectorSensor = sensorManager[SensorType.RotationVector]; rotationVectorSensor.Activate(); rotationVectorSensor.OnSensorDataUpdated += _SensorDataHandler; Content = new StackLayout { Children = { new Label { Text = "NextIdea DEBUG Controller" } } }; }
public void Start(String tankBotName, ITankBot tankBot, ITankBotLogger logger, ISensorManager sensorManager, int webServerPort, int tcpListenerPort, int uPnPListenerPort) { _logger = logger; _tankBotName = tankBotName; _tankBot = tankBot; _sensorManager = sensorManager; _webServerPort = webServerPort; _tcpListenerPort = tcpListenerPort; _uPnPListenerPort = uPnPListenerPort; var networkInfo = Windows.Networking.Connectivity.NetworkInformation.GetInternetConnectionProfile(); App.TheApp.HasInternetConnection = networkInfo.GetNetworkConnectivityLevel() == Windows.Networking.Connectivity.NetworkConnectivityLevel.InternetAccess; if (App.TheApp.HasInternetConnection) { MakeDiscoverable(tankBotName); StartWebServer(_webServerPort, _tankBotName); StartTCPServer(_tcpListenerPort, _tankBot, _sensorManager); } }
public SensorControlController(ISensorControlManager sensorControlManager, ISensorManager sensorManager, IMapper mapper) { _sensorControlManager = sensorControlManager; _sensorManager = sensorManager; _mapper = mapper; }
public Voltage0_10V(ISensorManager i_Parent) : base(i_Parent) { }
public void InitializeParent(ISensorManager i_Parent) { ParentSensorManager = i_Parent; }
public InternalNTC(ISensorManager i_Parent) : base(i_Parent) { }
public GenericSensor(ISensorManager i_Parent) { Initialize(i_Parent); }
public SensorAlarmManager(ISensorManager i_Parent) { this.ParentSensorManager = i_Parent; }
public StreamHub(ISensorManager sensorManager) { _sensorManager = sensorManager; }
public GenericNTC_V1(ISensorManager i_Parent) : base(i_Parent) { }
public DigitalTemperature(ISensorManager i_Parent) : base(i_Parent) { }
public GenericTemperatureSensor(ISensorManager i_Parent) : base(i_Parent) { }
public TwoPointUserDefinedSensor(ISensorManager parent) : base(parent) { }
public Humidity(ISensorManager i_Parent) : base(i_Parent) { Calibration = new Base.Sensors.Calibrations.TwoPoint(); }
public WeatherSensorsController(ILogger <WeatherSensorsController> logger, ISensorManager sensorManager, IWeatherDataManager weatherDataManager) { this.logger = logger; this.sensorManager = sensorManager; this.weatherDataManager = weatherDataManager; }
public PredefinedSensor(ISensorManager parent) : base(parent) { }
public DewPoint(ISensorManager i_Parent) : base(i_Parent) { }
public Current4_20mA(ISensorManager i_Parent) : base(i_Parent) { }
public Humidity(ISensorManager i_Parent) : base(i_Parent) { }