private Converter createConverter(Sensor sensor, Visualizer visualizer)
        {
            SensorAttribute    sensorAttribute    = (SensorAttribute)sensor.GetType().GetCustomAttribute(typeof(SensorAttribute));
            Type               converterType      = converterTypes[sensorAttribute.unit];
            ConverterAttribute converterAttribute = (ConverterAttribute)converterType.GetCustomAttribute(typeof(ConverterAttribute));

            visualizer.Unit = converterAttribute.output;
            return((Converter)Activator.CreateInstance(converterType, sensor, visualizer));
        }
        private Visualizer createVisualizer(Sensor sensor)
        {
            Visualizer      result          = null;
            SensorAttribute sensorAttribute = (SensorAttribute)sensor.GetType().GetCustomAttribute(typeof(SensorAttribute));

            if (sensorAttribute != null)
            {
                result = factory.CreateVisualizer(sensorAttribute.property);
            }
            return(result);
        }
Beispiel #3
0
 internal void SetAttribute(SensorAttribute attribute, int option)
 {
     if (CheckListenerHandle())
     {
         int error = Interop.SensorListener.SetAttribute(_listenerHandle, attribute, option);
         if (error != (int)SensorError.None)
         {
             Log.Error(Globals.LogTag, "Error setting sensor pause policy");
             throw SensorErrorFactory.CheckAndThrowException(error, "Setting Sensor.PausePolicy Failed");
         }
     }
 }
        private bool IsConverterRequired(Sensor sensor, Visualizer visualizer)
        {
            bool                res                 = false;
            SensorAttribute     sensorAttribute     = (SensorAttribute)sensor.GetType().GetCustomAttribute(typeof(SensorAttribute));
            VisualizerAttribute visualizerAttribute = (VisualizerAttribute)visualizer.GetType().GetCustomAttribute(typeof(VisualizerAttribute));

            if (sensorAttribute.unit != visualizerAttribute.unit)
            {
                res = true;
            }
            return(res);
        }
Beispiel #5
0
        protected Sensor(string name, SensorAttribute attributes, WiseSafeToOperate instance)
        {
            wisesafetooperate = instance;
            WiseName          = name;
            _attributes       = attributes;
            _timer            = new System.Threading.Timer(new TimerCallback(onTimer));
            if (HasAttribute(SensorAttribute.AlwaysEnabled))
            {
                Enabled = true;
            }
            _state = SensorState.None;

            Restart(5000);
            activityMonitor.Event(new Event.SafetyEvent(
                                      sensor: WiseName,
                                      details: "Created",
                                      before: sensorState,
                                      after: Event.SafetyEvent.SensorState.Init));
            sensorState = Event.SafetyEvent.SensorState.Init;
        }
Beispiel #6
0
 internal static extern int SetAttribute(IntPtr listenerHandle, SensorAttribute sensorAttribute, int option);
Beispiel #7
0
 public bool DoesNotHaveAttribute(SensorAttribute attr)
 {
     return(!HasAttribute(attr));
 }
Beispiel #8
0
 public bool HasAttribute(SensorAttribute attr)
 {
     return((_attributes & attr) != 0);
 }
 /// <summary>
 /// Creates/Updates sensor attribute.
 /// </summary>
 /// <param name="SensorAttribute">Sensor attribute model</param>
 /// <returns>Created/Updated Sensor attribute model</returns>
 public async Task <SensorAttribute> UpdateSensorAttribute(SensorAttribute SensorAttribute)
 {
     return(await _sensorClient.SensorAttributeSet(SensorAttribute));
 }