/// <summary> /// Encode an RSSI Filter packet into the specified buffer /// </summary> /// <param name="buffer"></param> /// <param name="index"></param> /// <param name="threshold"></param> public static void EncodeRSSIFilterControl(byte[] buffer, ref int index, int threshold) { // Encode header PacketHeader header = new PacketHeader(PacketTypeCode.SetRssiFilter); SerializePacket(buffer, ref index, header); // Encode payload RSSIFilterControlPacket packet = new RSSIFilterControlPacket { threshold = threshold }; SerializePacket(buffer, ref index, packet); // Encode footer SerializePacket(buffer, ref index, _footer); }
/// <summary> /// Decode an RSSI Filter Control packet from the byte stream /// </summary> /// <param name="buffer"></param> /// <param name="index"></param> /// <returns></returns> private static int DecodeRSSIFilterControlPacket(byte[] buffer, ref int index) { RSSIFilterControlPacket value = DeserializePacket <RSSIFilterControlPacket>(buffer, ref index); return(value.threshold); }