Beispiel #1
0
 public CemiLData(CemiMessageCode messageCode, IndividualAddress srcAddress, IAddress dstAddress, byte[] tpdu,
                  Priority priority, ConfirmType confirm)
     : this(messageCode, srcAddress, dstAddress, tpdu, priority, true, BroadcastType.Normal, false, 6)
 {
     //  overwrite controlField1 now including confirm
     _controlField1 = new ControlField1(_messageCode, false, priority, true, BroadcastType.Normal, false, confirm);
 }
Beispiel #2
0
 public CemiLData(CemiMessageCode messageCode, IndividualAddress srcAddress, IAddress dstAddress, byte[] tpdu,
                  Priority priority, bool repeat = true, BroadcastType broadcast = BroadcastType.Normal, bool ack = false, int hopCount = 6)
     : base(messageCode)
 {
     VerifyPayload(tpdu);
     _additionalInfoLength = 0;
     _sourceAddress        = srcAddress;
     _destinationAddress   = dstAddress;
     _payload       = (byte[])tpdu.Clone();
     _apci          = new Apci(_payload);
     _controlField1 = new ControlField1(_messageCode, false, priority, repeat, broadcast, ack);
     _controlField2 = new ControlField2(_destinationAddress.IsGroupAddress(), hopCount, 0);
     _size          = MESSAGEMINLENGTH + _payload.Length;
 }
Beispiel #3
0
        protected void ParseControlField1(IndividualEndianessBinaryReader br)
        {
            var ctrl1 = br.ReadByte();

            _controlField1 = new ControlField1(_messageCode, ctrl1);
        }