public static int GetDataSize(this DRORegister register) { int size; if (!sizes.TryGetValue(register, out size)) { return(1); } return(size); }
static DRORegister_Extension() { sizes = new Dictionary <DRORegister, int>(); foreach (FieldInfo fi in typeof(DRORegister).GetFields(BindingFlags.Public | BindingFlags.Static)) { DRORegister dr = (DRORegister)fi.GetValue(null); DataSizeAttribute attr = fi.GetCustomAttributes(typeof(DataSizeAttribute), true).First() as DataSizeAttribute; if (attr != null) { sizes[dr] = attr.Size; } } }
public DROCommand(DRORegister register, int value) { Register = register; Value = value; /*byte reg = (byte)register; * if((reg > 0xA8 && reg <= 0xAF) || (reg > 0xB8 && reg <= 0xBF) || (reg > 0xC8 && reg <= 0xCF) || * (reg > 0x35 && reg <= 0x3F) || (reg > 0x55 && reg <= 0x5F) || (reg > 0x75 && reg <= 0x7F) || * (reg > 0x95 && reg <= 0x9F) || (reg > 0xF5 && reg <= 0xFF)) * { * throw new ArgumentOutOfRangeException("register"); * }*/ }
public DROCommand(DRORegister register, int value) { Register = register; Value = value; /*byte reg = (byte)register; if((reg > 0xA8 && reg <= 0xAF) || (reg > 0xB8 && reg <= 0xBF) || (reg > 0xC8 && reg <= 0xCF) || (reg > 0x35 && reg <= 0x3F) || (reg > 0x55 && reg <= 0x5F) || (reg > 0x75 && reg <= 0x7F) || (reg > 0x95 && reg <= 0x9F) || (reg > 0xF5 && reg <= 0xFF)) { throw new ArgumentOutOfRangeException("register"); }*/ }
public DROCommand(DRORegister register) : this(register, 0) { }
public DROCommand(DRORegister register, uint value) : this(register, unchecked ((int)value)) { }
public DROCommand(DRORegister register, uint value) : this(register, unchecked((int)value)) { }