protected override bool ValidResponse(Packet packet)
 {
     if (packet.Header == PacketHeaderType.LocomotiveFunction && (packet.Payload[0] > 0x80 && packet.Payload[0] < 0x89)) //TODO: unit test to check this works
     {
         ResponseData = new SetMultiUnitOrDoubleHeaderErrorResp();
         return(true);
     }
     else
     {
         return(false);
     }
 }
 protected override bool ValidResponse(Packet packet)
 {
     if (packet.Header == PacketHeaderType.LocomotiveFunction && (packet.Payload[0] > 0x80 && packet.Payload[0] < 0x89)) //TODO: unit test to check this works
     {
         ResponseData = new SetMultiUnitOrDoubleHeaderErrorResp();
         return true;
     }
     else
     {
         return false;
     }
 }
 protected override bool ValidResponse(Packet packet)
 {
     if (packet.Header == PacketHeaderType.LocomotiveFunction &&
         (packet.Payload[0] > Convert.ToByte(PacketIdentifier.LocomotiveFunctionResponse.MultiUnitOrDoubleHeaderError) &&
         packet.Payload[0] < (Convert.ToByte(PacketIdentifier.LocomotiveFunctionResponse.MultiUnitOrDoubleHeaderError) + 9))) //TODO: unit test to check this works
     {
         ResponseData = new SetMultiUnitOrDoubleHeaderErrorResp();
         return true;
     }
     else
     {
         return false;
     }
 }