CARPLAY版本整理

This commit is contained in:
2025-01-21 16:49:37 +08:00
commit f0fb64e4e6
26542 changed files with 13719676 additions and 0 deletions

View File

@ -0,0 +1,345 @@
#ifndef __ECTINY_API_H__
#define __ECTINY_API_H__
#include "ECTypes.h"
#define ECSDK_VERSION "1.0.8.1"
typedef struct {
void (*onECConnectStatus)(ECConnectedStatus status, ECConnectedType type);
void (*onMirrorStatus)(ECMirrorStatus status);
/**
* @brief Called when EasyConnected status changed.
*
* @param status The changed EasyConnected message.
*/
void (*onECStatusMessage)(ECStatusMessage status);
/**
* @brief Called when the phone app sends down HUD information.
*
* @param data HUD information.
*/
void (*onPhoneAppHUD)(const ECNavigationHudInfo *data);
/**
* @brief Called when the phone app sends down HUD Road Junction Picture.
* @param data
*/
void (*onPhoneAppHUDRoadJunctionPicture)(const ECHudRoadJunctionPictureInfo* data);
/*
* @brief Called when phone app tell the music info.
*
* @param data The information of music.
*/
void (*onPhoneAppMusicInfo)(const ECAppMusicInfo *data);
/**
* @brief Called when the phone app sends down some information.
*
* @param data Buffer of app information.
*
* @param length Buffer length.
*
* @note data is json string, the fields includes os, osVersion and ip.
* Called when ECSDK::openTransport succeed.
*/
void (*onPhoneAppInfo)(const void *data, uint32_t length);
/**
* @brief Called when ECSDK wants car to do call operations(dial or hang up) via Bluetooth.
*
* @param type Operation type.
*
* @param name The person's name of corresponding number.
*
* @param number Phone numbers.
*
* @note Phone app is not able to dial or hang up automatically due to the latest system access limitation,
* however, car is able to do it via Bluetooth. Therefore, ECSDK moves the call operations
* to car, which can dial or hang up when this method is called.
*/
void (*onCallAction)(ECCallType type, const char *name, const char *number);
/**
* @brief Called when bulk data is received.
*
* @param data Buffer of bulk data.
*
* @param length Buffer length.
*
*/
void (*onBulkDataReceived)(const void *data, uint32_t length);
/**
* @brief onRealMirrorSizeChanged
* @param realWidth
* @param realHeight
*
* \note The actual size of the projection screen does not equal the size of the video stream in some cases.
* The surrounding area is filled with black. This message calls back the actual size of the projection screen
*/
void (*onMirrorInfoChanged)(const ECVideoInfo *info);
/**
* @brief Called when the license authorization failed. After this interface was called,
* all connections would be forced closed.
*
* @param errCode Error code.
*
* @param errMsg Error message.
*/
void (*onLicenseAuthFail)(int32_t errCode, const char *errMsg);
/**
* @brief Called when the license authorization succeed.
*
* @param code success code. The code can gain specific meaning by ECAuthSuccessCode.
*
* @param msg success information.
*
* @param msg the description information.
*
*/
void (*onLicenseAuthSuccess)(int32_t code, const char *msg);
/**
* @brief Called when registered command was triggered by VR.
*
* @param carCmd The triggered command.
*
* @note Voice control can be implemented with this method by VR.
*
* @see ECSDK::registerCarCmds
*/
void (*onCarCmdNotified)(const ECCarCmd *carCmd);
/**
* @brief Called when phone app request the HU to start input.
*
* @param info relevant parameters about the input.
*/
void (*onInputStart)(const ECInputInfo *info);
/**
* @brief Called when phone app request the HU to cancel input.
*/
void (*onInputCancel)();
/**
* @brief Called when phone app tell the selection of input.
*/
void (*onInputSelection)(int32_t start, int32_t stop);
/**
* @brief Called when phone app tell the text of input.
*/
void (*onInputText)(const char *text);
/**
* @brief Called when phone app send the text of VR or TTS.
*/
void (*onVRTextReceived)(const ECVRTextInfo *info);
/**
* @brief Called when phone app tell the page list.
*
* @param pages Array of the struct ECPageInfo.
*
* @param length The length of the array.
*/
void (*onPageListReceived)(const ECPageInfo *pages, int32_t length);
/**
* @brief Called when phone app tell the icons.
*
* @param icons Array of the struct ECIconInfo.
*
* @param length The length of the array.
*/
void (*onPageIconReceived)(const ECIconInfo *icons, int32_t length);
/**
* @brief Called when phone app tell weather.
*
* @param data Buffer of weather information.
*
* @param length Buffer length.
*
* @note data pointed to a json string buffer.
*/
void (*onWeatherReceived)(const char *data, int32_t length);
/**
* @brief Called when phone app tell vr tips.
*
* @param data Buffer of tips information.
*
* @param length Buffer length.
*
* @note data pointed to a json string buffer.
*/
void (*onVRTipsReceived)(const char *data, int32_t length);
/**
* @brief Called when the app requests networking
*
* @param clientInfo Mobile phone related information
*
* @note
*/
void (*onRequestBuildNet)(const ECBTClientInfo *clientInfo);
/**
* @brief Called when canceling networking
*
* @note
*/
void (*onRequestBuildNetCancel)();
/**
* @brief Called when networking is completed
*
* @note
*/
void (*onPhoneBuildNetFinish)();
/**
* @brief Called when app sends AP information
*
* @param netDeviceInfo AP information
*
* @note
*/
void (*onPhoneAPInfo)(const ECBTNetInfo* netDeviceInfo);
/**
* @brief Called when mobile phone has a notification message.
* @param notification
*/
void (*onPhoneNotification)(const ECPhoneNotification* notification);
} IECCallBack;
typedef struct
{
uint32_t (*size)(const char* name);
int32_t (*read)(const char* name,void *data, uint32_t length);
int32_t (*write)(const char* name,void *data, uint32_t length);
void (*clear)(const char* name);
}IECAccessFile;
typedef struct
{
int32_t (*open)();
int32_t (*read)(void *data, uint32_t length);
int32_t (*write)(void *data, uint32_t length);
void (*close)();
}IECAccessDevice;
typedef struct
{
uint32_t (*registHid)(uint32_t deviceId,uint32_t descriptorSize);
void (*unRegistHid)(uint32_t deviceId);
uint32_t (*sendHiDDescriptor)(uint32_t deviceId, const unsigned char* descriptor, uint32_t len);
uint32_t (*sendHidEvent)(uint32_t deviceId, const unsigned char* event, uint32_t len);
}IECHidAccessDev;
typedef struct
{
int32_t (*open)();
int32_t (*read)(uint8_t* data, uint32_t len);
int32_t (*write)(const uint8_t* data, uint32_t len);
int32_t (*close)();
}IECBTAccessDev;
typedef struct
{
void (*start)(int32_t width, int32_t height);
void (*stop)();
void (*play)(const void *data, uint32_t len);
}IECVideoPlayer;
typedef struct
{
void (*start)(ECAudioType type, const ECAudioInfo *info);
void (*stop)(ECAudioType type);
void (*play)(ECAudioType type, const void *data, uint32_t len);
void (*setVolume)(ECAudioType type, uint32_t vol);
}IECAudioPlayer;
typedef struct
{
int32_t (*start)(const ECAudioInfo *info);
void (*stop)();
int32_t (*record)(void *data, uint32_t len);
}IECAudioRecorder;
typedef void *ECConfigHandle;
ECConfigHandle EC_createECConfig();
void EC_destroyECConfig(ECConfigHandle config);
void EC_setBaseConfig(ECConfigHandle config,const char *uuid, const char *version,const char *writableDir);
void EC_setCommonConfig(ECConfigHandle config, const char *cfgName, const char *value);
void EC_setCommonConfig1(ECConfigHandle config, const char *cfgName, int32_t value);
int32_t EC_initialize(ECConfigHandle config, IECCallBack *listener);
int32_t EC_release();
int32_t EC_setLogInfo(const ECLogLevel level,const ECLogOutputType type,const char *logDirectory, int32_t module);
const char* EC_getVersion();
int32_t EC_getVersionCode();
int32_t EC_start();
int32_t EC_stop();
int32_t EC_bindAccessFile(IECAccessFile *handle);
int32_t EC_bindUSBDevice(ECTransportType type, IECAccessDevice *dev);
int32_t EC_bindWIFIDevice(ECTransportType type, const char *ip);
int32_t EC_unbindDevice(ECTransportType type);
int32_t EC_bindHidDevice(IECHidAccessDev* dev);
int32_t EC_unBindHidDevice();
int32_t EC_bindBTDevice( IECAccessDevice* ioHandle);
int32_t EC_unBindBTDevice();
int32_t EC_setMirrorConfig(const ECMirrorConfig *mirrorCfg);
int32_t EC_setVideoPlayer(IECVideoPlayer* video);
int32_t EC_setAudioPlayer(IECAudioPlayer* audio);
int32_t EC_setAudioRecorder(IECAudioRecorder* audioRecorde);
int32_t EC_notifyWifiStateChanged(ECWifiStateAction action, const ECNetWorkInfo* netInfo);
int32_t EC_setRequestBuildNetRly(const char *phoneID, const ECBTRequestBuildNetRly *rly);
int32_t EC_setNetInterfaceInfo(const ECNetInterfaceInfo *info,const int32_t num);
int32_t EC_startMirror();
void EC_stopMirror();
int32_t EC_pauseMirror();
int32_t EC_resumeMirror();
int32_t EC_sendTouchEvent(const ECTouchEventData *touch, ECTouchEventType type);
int32_t EC_sendBtnEvent(int32_t btnCode, int32_t type);
int32_t EC_stopPhoneNavigation();
int32_t EC_stopPhoneVR();
int32_t EC_uploadNightModeStatus(uint32_t isNightModeOn);
int32_t EC_uploadDrivingStatus(ECDrivingStatus status);
int32_t EC_enableDownloadPhoneAppAudio(uint32_t supportType, uint32_t autoChangeToBT);
void EC_disableDownloadPhoneAppAudio();
int32_t EC_enableDownloadPhoneAppHud(uint32_t supportFunction);
void EC_disableDownloadPhoneAppHud();
int32_t EC_setConnectedBTAddress(const char *carBtMac, const char *phoneBtMac);
int32_t EC_sendCarBluetooth(const char *name, const char *adddress, const char *pin);
int32_t EC_openAppPage(int32_t page);
int32_t EC_queryGPS(uint32_t* status, ECGPSInfo* gps);
int32_t EC_queryTime(uint64_t *gmtTime, uint64_t *localTime, char *timeZone, uint32_t len);
int32_t EC_sendCarStatus(ECCarStatusType carStatus, ECCarStatusValue value);
int32_t EC_registerCarCmds(const ECCarCmd *carCmds, uint32_t length);
int32_t EC_playCarTTS(const char *text, uint32_t level);
int32_t EC_registerSimilarSoundingWords(const char *data, uint32_t length);
int32_t EC_sendInputText(const char* text);
int32_t EC_sendInputAction(int32_t actionId, int32_t keyCode);
int32_t EC_sendInputSelection(int32_t start, int32_t stop);
int32_t EC_queryPageList();
int32_t EC_queryPageIcon(int32_t* pages, int32_t length);
int32_t EC_queryWeather();
int32_t EC_queryVRTips();
const char* EC_generateQRCodeUrl(ECQRInfo* info);
int32_t EC_startIperfTcpServer(const char* ip, int port);
void EC_stopIperfTcpServer();
#endif

File diff suppressed because it is too large Load Diff

Binary file not shown.

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,6 @@
#ifndef _CARLINK_EC_H_
#define _CARLINK_EC_H_
int carlink_ec_init(int argc,char ** argv);
#endif