Path: blob/master/libraries/AP_ADSB/sagetech-sdk/sgDecodeFlightId.c
9776 views
/**1* @copyright Copyright (c) 2021 Sagetech, Inc. All rights reserved.2*3* @file sgDecodeFlightId.c4* @author Jacob.Garrison5*6* @date Mar 10, 20217*8*/910#include <string.h>1112#include "sg.h"13#include "sgUtil.h"1415#define SG_ID_LEN 8 // The number of bytes in the flight id field1617typedef struct __attribute__((packed))18{19uint8_t start;20uint8_t type;21uint8_t id;22uint8_t payloadLen;23char flightId[SG_ID_LEN];24uint8_t rsvd[4];25uint8_t checksum;26} flightid_t;2728/*29* Documented in the header file.30*/31bool sgDecodeFlightId(uint8_t *buffer, sg_flightid_t *id)32{33flightid_t sgId;34memcpy(&sgId, buffer, sizeof(flightid_t));3536strcpy(id->flightId, sgId.flightId);37memset(&id->flightId[SG_ID_LEN], '\0', 1); // Ensure flight id is null-terminated3839return true;40}414243