LCOV - code coverage report
Current view: top level - AP_ADSB/sagetech-sdk - sgEncodeFlightId.c (source / functions) Hit Total Coverage
Test: lcov.info Lines: 9 9 100.0 %
Date: 2026-09-09 11:02:08 Functions: 1 1 100.0 %

          Line data    Source code
       1             : /**
       2             :  * @copyright Copyright (c) 2021 Sagetech, Inc. All rights reserved.
       3             :  *
       4             :  * @file sgEncodeFlightId.c
       5             :  * @author Jacob.Garrison
       6             :  *
       7             :  * @date Feb 25, 2021
       8             :  *
       9             :  */
      10             : 
      11             : #include <ctype.h>
      12             : #include <stdbool.h>
      13             : #include <stdlib.h>
      14             : 
      15             : #include "sg.h"
      16             : #include "sgUtil.h"
      17             : 
      18             : #define SG_PAYLOAD_LEN_FLIGHT SG_MSG_LEN_FLIGHT - 5 /// the payload length.
      19             : 
      20             : #define PBASE 4       /// the payload offset.
      21             : #define OFFSET_ID 0   /// the flight id offset in the payload.
      22             : #define OFFSET_RSVD 8 /// the reserved field offset in the payload.
      23             : 
      24             : #define ID_LEN 8 /// the length of the flight identification field.
      25             : 
      26             : /*
      27             :  * Documented in the header file.
      28             :  */
      29           2 : bool sgEncodeFlightId(uint8_t *buffer, sg_flightid_t *id, uint8_t msgId)
      30             : {
      31             :     // populate header
      32           2 :     buffer[0] = SG_MSG_START_BYTE;
      33           2 :     buffer[1] = SG_MSG_TYPE_HOST_FLIGHT;
      34           2 :     buffer[2] = msgId;
      35           2 :     buffer[3] = SG_PAYLOAD_LEN_FLIGHT;
      36             : 
      37             :     // populate flight identification
      38           2 :     charArray2Buf(&buffer[PBASE + OFFSET_ID], id->flightId, ID_LEN);
      39             : 
      40             :     // populate reserved field
      41           2 :     uint322Buf(&buffer[PBASE + OFFSET_RSVD], 0);
      42             : 
      43             :     // populate checksum
      44           2 :     appendChecksum(buffer, SG_MSG_LEN_FLIGHT);
      45             : 
      46           2 :     return true;
      47             : }

Generated by: LCOV version 1.14