//Command received form OpenHAB to HomeIO
        private void OnUpdateState(object sender, OpenHABEventArgs args)
        {
            string             name        = args.Name;
            string             state       = args.State;
            OpenHABTransformer transformer = args.Transformer;

            MemoryBit   memBit;
            MemoryFloat memFloat;

            // if item is bit
            if (memoryOutputBits.TryGetValue(name, out memBit))
            {
                //converting from OpenHAB value to HomeIO value
                memBit.Value = transformer.StateToBit(state);
            }
            // if item is float
            else if (memoryOutputFloats.TryGetValue(name, out memFloat))
            {
                memFloat.Value = transformer.StateToFloat(state);
            }

            // writing changes to HomeIO
            MemoryMap.Instance.Update();
        }
 public OpenHABEventArgs(string name, string state, OpenHABTransformer transformer)
 {
     Name        = name;
     State       = state;
     Transformer = transformer;
 }