/// <summary> /// ctor /// </summary> /// <param name="name">the name reported via IBitField.Name and IBitField.ShortName</param> /// <param name="startBit">start bit ... other than setting IBitField.StartBit, ignored by default implementation</param> /// <param name="endBit">end bit ... other than setting IBitField.EndBit, ignored by default implementation</param> /// <param name="readDelegate">optional read delegate used by Read()</param> /// <param name="writeDelegate">optional write delegate used by Write()</param> /// <remarks> /// If readDelegate and writeDelegate are not supplied, the value of the bitfield is /// simply the last value set (by Value or Write) /// </remarks> public SimulatedBitField(string name, int startBit, int endBit, SimulatedBitFieldReadDelegate readDelegate, SimulatedBitFieldWriteDelegate writeDelegate) { Name = name; ShortName = name; StartBit = startBit; EndBit = endBit; Size = EndBit - StartBit + 1; Mask = ((1 << Size) - 1) << startBit; mReadDelegate = readDelegate; mWriteDelegate = writeDelegate; }
/// <summary> /// ctor /// </summary> /// <param name="name">the name reported via IBitField.Name and IBitField.ShortName</param> /// <param name="readDelegate">optional read delegate used by Read()</param> /// <param name="writeDelegate">optional write delegate used by Write()</param> /// <remarks> /// If readDelegate and writeDelegate are not supplied, the value of the bitfield is /// simply the last value set (by Value or Write) /// </remarks> public SimulatedBitField(string name, SimulatedBitFieldReadDelegate readDelegate, SimulatedBitFieldWriteDelegate writeDelegate) : this(name, 0, 0, readDelegate, writeDelegate) { }
/// <summary> /// ctor /// </summary> /// <param name="name">the name reported via IBitField.Name and IBitField.ShortName</param> /// <param name="readDelegate">optional read delegate used by Read()</param> /// <remarks> /// If readDelegate and writeDelegate are not supplied, the value of the bitfield is /// simply the last value set (by Value or Write) /// </remarks> public SimulatedBitField(string name, SimulatedBitFieldReadDelegate readDelegate) : this(name, 0, 0, readDelegate, null) { }