/// <summary> /// Конструктор свойства /// </summary> /// <param name="_idx"></param> /// <param name="_bitIdx"></param> /// <param name="_bitLen"></param> /// <param name="_setUsbEvent"></param> /// <param name="_changeEvent"></param> public CVProperty(ushort _bitIdx, ushort _bitLen, ControlValueEventHandler _setUsbEvent, ControlValueEventHandler _changeEvent) { BitIdx = _bitIdx; BitLen = _bitLen; SetUsbEvent = _setUsbEvent; ChangeEvent = _changeEvent; }
/// <summary> /// Добавляем свойство /// </summary> /// <param name="_idx">Индекс свойства, должно быть уникально</param> /// <param name="_bitIdx">Индекс бита, с которого свойство начинается</param> /// <param name="_bitLen">Длина в битах свойства</param> /// <param name="_setUsbEvent">Функция, которая должна вызываться при установке свойства</param> /// <param name="_changeEvent">Функция, которая должна вызываться при изменении свойства</param> /// <returns></returns> public bool AddProperty(int _idx, ushort _bitIdx, ushort _bitLen, ControlValueEventHandler _setUsbEvent, ControlValueEventHandler _changeEvent) { if (_cvDictionary.ContainsKey(_idx) || (_bitLen == 0)) { return false; } _cvDictionary.Add(_idx, new CVProperty(_bitIdx, _bitLen, _setUsbEvent, _changeEvent)); return true; }