Files
Payload-SDK/psdk_lib/include/legacy_psdk2.x/psdk_aircraft_info.h
DJI-Martin e478e9a7a5 NEW: release DJI Payload-SDK version 3.0
Signed-off-by: DJI-Martin <DJI-Martin@dji.com>
2021-11-12 16:27:03 +08:00

127 lines
6.6 KiB
C
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/**
********************************************************************
* @file psdk_aircraft_info.h
* @brief This is the header file for "psdk_aircraft_info.c", defining the structure and
* (exported) function prototypes.
*
* @copyright (c) 2021 DJI. All rights reserved.
*
* All information contained herein is, and remains, the property of DJI.
* The intellectual and technical concepts contained herein are proprietary
* to DJI and may be covered by U.S. and foreign patents, patents in process,
* and protected by trade secret or copyright law. Dissemination of this
* information, including but not limited to data and other proprietary
* material(s) incorporated within the information, in any form, is strictly
* prohibited without the express written consent of DJI.
*
* If you receive this source code without DJIs authorization, you may not
* further disseminate the information, and you must immediately remove the
* source code and notify DJI of its removal. DJI reserves the right to pursue
* legal actions against you for any loss(es) or damage(s) caused by your
* failure to do so.
*
*********************************************************************
*/
/* Define to prevent recursive inclusion -------------------------------------*/
#ifndef PSDK_AIRCRAFT_INFO_H
#define PSDK_AIRCRAFT_INFO_H
/* Includes ------------------------------------------------------------------*/
#include "legacy_psdk2.x/psdk_typedef.h"
#include <dji_typedef.h>
#include <dji_aircraft_info.h>
#ifdef __cplusplus
extern "C" {
#endif
/* Exported constants --------------------------------------------------------*/
/* Exported types ------------------------------------------------------------*/
/**
* @brief Aircraft type.
*/
typedef E_DjiAircraftType E_PsdkAircraftInfoType;
#define PSDK_AIRCRAFT_INFO_TYPE_UNKNOWN DJI_AIRCRAFT_TYPE_UNKNOWN /*!< Aircraft type is unknown. */
#define PSDK_AIRCRAFT_INFO_TYPE_M200_V2 DJI_AIRCRAFT_TYPE_M200_V2 /*!< Aircraft type is Matrice 200 V2. */
#define PSDK_AIRCRAFT_INFO_TYPE_M210_V2 DJI_AIRCRAFT_TYPE_M210_V2 /*!< Aircraft type is Matrice 220 V2. */
#define PSDK_AIRCRAFT_INFO_TYPE_M210RTK_V2 DJI_AIRCRAFT_TYPE_M210RTK_V2 /*!< Aircraft type is Matrice 210 RTK V2. */
#define PSDK_AIRCRAFT_INFO_TYPE_M300_RTK DJI_AIRCRAFT_TYPE_M300_RTK /*!< Aircraft type is Matrice 300 RTK. */
/**
* @brief PSDK adapter type.
*/
typedef E_DjiSdkAdapterType E_PsdkAircraftInfoPsdkAdapterType;
#define PSDK_AIRCRAFT_INFO_PSDK_ADAPTER_TYPE_UNKNOWN DJI_SDK_ADAPTER_TYPE_UNKNOWN /*!< PSDK adapter type is unknown. */
#define PSDK_AIRCRAFT_INFO_PSDK_ADAPTER_TYPE_SKYPORT_V2 DJI_SDK_ADAPTER_TYPE_SKYPORT_V2 /*!< PSDK adapter type is Skyport V2. */
#define PSDK_AIRCRAFT_INFO_PSDK_ADAPTER_TYPE_XPORT DJI_SDK_ADAPTER_TYPE_XPORT /*!< PSDK adapter type is X-Port. */
/**
* @brief Payload mount position.
*/
typedef E_DjiMountPosition E_PsdkAircraftInfoPayloadMountPosition;
#define PSDK_AIRCRAFT_INFO_PAYLOAD_MOUNT_POSITION_UNKNOWN DJI_MOUNT_POSITION_UNKNOWN /*!< Payload mount position is unknown.. */
#define PSDK_AIRCRAFT_INFO_PAYLOAD_MOUNT_POSITION_NO1 DJI_MOUNT_POSITION_PAYLOAD_PORT_NO1 /*!< Payload is mounted on the first gimbal connector of aircraft. */
#define PSDK_AIRCRAFT_INFO_PAYLOAD_MOUNT_POSITION_NO2 DJI_MOUNT_POSITION_PAYLOAD_PORT_NO2 /*!< Payload is mounted on the second gimbal connector of aircraft. */
#define PSDK_AIRCRAFT_INFO_PAYLOAD_MOUNT_POSITION_NO3 DJI_MOUNT_POSITION_PAYLOAD_PORT_NO3 /*!< Payload is mounted on the third gimbal connector of aircraft. */
/**
* @brief Mobile APP system language.
*/
typedef E_DjiMobileAppLanguage E_PsdkAircraftInfoMobileAppLanguage;
#define PSDK_AIRCRAFT_INFO_MOBILE_APP_LANGUAGE_UNKNOWN DJI_MOBILE_APP_LANGUAGE_UNKNOWN /*!< The system language of the mobile app is unknown */
#define PSDK_AIRCRAFT_INFO_MOBILE_APP_LANGUAGE_ENGLISH DJI_MOBILE_APP_LANGUAGE_ENGLISH /*!< The system language of the mobile app is English */
#define PSDK_AIRCRAFT_INFO_MOBILE_APP_LANGUAGE_CHINESE DJI_MOBILE_APP_LANGUAGE_CHINESE /*!< The system language of the mobile app is Chinese */
#define PSDK_AIRCRAFT_INFO_MOBILE_APP_LANGUAGE_JAPANESE DJI_MOBILE_APP_LANGUAGE_JAPANESE /*!< The system language of the mobile app is Japanese */
#define PSDK_AIRCRAFT_INFO_MOBILE_APP_LANGUAGE_FRENCH DJI_MOBILE_APP_LANGUAGE_FRENCH /*!< The system language of the mobile app is French */
/**
* @brief Mobile APP screen size type.
*/
typedef E_DjiMobileAppScreenType E_PsdkAircraftInfoMobileAppScreenType;
#define PSDK_AIRCRAFT_INFO_MOBILE_APP_SCREEN_TYPE_UNKNOWN DJI_MOBILE_APP_SCREEN_TYPE_UNKNOWN /*!< Mobile APP screen type is unknown. */
#define PSDK_AIRCRAFT_INFO_MOBILE_APP_SCREEN_TYPE_BIG_SCREEN DJI_MOBILE_APP_SCREEN_TYPE_BIG_SCREEN /*!< The big screen of mobile device refers to a screen
* size greater than or equal to 6 inches. */
#define PSDK_AIRCRAFT_INFO_MOBILE_APP_SCREEN_TYPE_LITTLE_SCREEN DJI_MOBILE_APP_SCREEN_TYPE_LITTLE_SCREEN /*!< The little screen of mobile device refers to a
* screen size less than 6 inches. */
/**
* @brief Some base information of aircraft system, mainly including some constant parameters information of system.
*/
typedef struct {
E_PsdkAircraftInfoType aircraftType; /*!< Aircraft type. */
E_PsdkAircraftInfoPsdkAdapterType psdkAdapterType; /*!< PSDK adapter type. */
E_PsdkAircraftInfoPayloadMountPosition payloadMountPosition; /*!< Payload mount position. */
} T_PsdkAircraftInfoBaseInfo;
/**
* @brief Information related to mobile APP.
*/
typedef T_DjiMobileAppInfo T_PsdkAircraftInfoMobileAppInfo;
/* Exported functions --------------------------------------------------------*/
/**
* @brief Get base information of aircraft system, including aircraft type and PSDK adapter type.
* @param baseInfo: pointer to memory space used to store base information of the aircraft system.
* @return Execution result.
*/
T_PsdkReturnCode PsdkAircraftInfo_GetBaseInfo(T_PsdkAircraftInfoBaseInfo *baseInfo);
/**
* @brief Get information related to mobile APP.
* @note The mobile APP language and screen type is unknown if RC or APP is not connected to the aircraft system.
* @param mobileAppInfo: pointer to memory space used to store information related to mobile APP.
* @return Execution result.
*/
T_PsdkReturnCode PsdkAircraftInfo_GetMobileAppInfo(T_PsdkAircraftInfoMobileAppInfo *mobileAppInfo);
#ifdef __cplusplus
}
#endif
#endif //PSDK_AIRCRAFT_INFO_H
/************************ (C) COPYRIGHT DJI Innovations *******END OF FILE******/