PlaneInfo.c 1.4 KB
#include "JZsdkLib.h"

#include "PlaneInfo.h"


static JZsdk_PlaneInfo PlaneInfo = {
    .LandingStatus = JZ_FLAGCODE_OFF,
    .LandingStatusLock = JZ_FLAGCODE_OFF,
    .PlaneFlightStutus = E_JZ_PLANE_FLIGHT_STATUS_ON_LAND,
    .PlaneType = E_JZ_SPECIAL_PLANE_INFO_NONE,
    .Flag = JZ_FLAGCODE_OFF
};

T_JZsdkReturnCode JZsdk_PlaneInfo_SetLandingStatusLock(int lock)
{
    PlaneInfo.LandingStatusLock = lock;

    return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
}

T_JZsdkReturnCode JZsdk_PlaneInfo_SetLandingStatus(int status)
{
    if (PlaneInfo.LandingStatusLock == JZ_FLAGCODE_OFF)
    {
        return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
    }

    PlaneInfo.LandingStatus = status;

    return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
}

T_JZsdkReturnCode JZsdk_PlaneInfo_SetPlaneType(E_JZ_SPECIAL_PLANE_INFO ePlaneInfo)
{
    JZSDK_LOG_INFO("Set PlaneInfo: %d", ePlaneInfo);

    PlaneInfo.PlaneType = ePlaneInfo;

    //设置飞机型号的时候就说明被启动了
    PlaneInfo.Flag = JZ_FLAGCODE_ON;

    return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
}

T_JZsdkReturnCode JZsdk_PlaneInfo_SetFlightStatus(E_JZ_PLANE_FLIGHT_STATUS status)
{
    PlaneInfo.PlaneFlightStutus = status;

    return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
}

T_JZsdkReturnCode JZsdk_PlaneInfo_Get(JZsdk_PlaneInfo *pePlaneInfo)
{
    memcpy(pePlaneInfo, &PlaneInfo, sizeof(JZsdk_PlaneInfo));

    return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
}