From 8e0e00d21146a84c18f9cf9409e187b4fb0248aa Mon Sep 17 00:00:00 2001 From: Riku Nomoto Date: Thu, 19 Nov 2020 12:45:32 +0900 Subject: Init basesystem source codes. Signed-off-by: Riku Nomoto Change-Id: I55aa2f1406ce7f751ae14140b613b53b68995528 --- .../client/include/Sensor_API_private.h | 174 +++++++++++++++++++++ 1 file changed, 174 insertions(+) create mode 100755 vehicleservice/positioning/client/include/Sensor_API_private.h (limited to 'vehicleservice/positioning/client/include/Sensor_API_private.h') diff --git a/vehicleservice/positioning/client/include/Sensor_API_private.h b/vehicleservice/positioning/client/include/Sensor_API_private.h new file mode 100755 index 0000000..c3b5f54 --- /dev/null +++ b/vehicleservice/positioning/client/include/Sensor_API_private.h @@ -0,0 +1,174 @@ +/* + * @copyright Copyright (c) 2016-2020 TOYOTA MOTOR CORPORATION. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef POSITIONING_CLIENT_INCLUDE_SENSOR_API_PRIVATE_H_ +#define POSITIONING_CLIENT_INCLUDE_SENSOR_API_PRIVATE_H_ +/****************************************************************************** + * File name :Sensor_API_private.h + * System name :GPF + * Subsystem name Vehicle I/F library + ******************************************************************************/ + +/************************************************************************ +* Macro definitions * +************************************************************************/ +#define SENSOR_PUBLIC_DID_NUM 31 + +/*----------------------------------------------------------------------* + * Shared Memory Related Extensions * + *----------------------------------------------------------------------*/ +#define SENSOR_SHARE_LOCK 0xFF /* Locking */ +#define SENSOR_SHARE_UNLOCK 0x00 /* Unlocking */ + +#define SENSOR_SHARE_BLOCK_MNUM 1 /* Number of shared memory control blocks */ +#define SENSOR_SHARE_BLOCK_DNUM 10 /* Number of shared memory data blocks */ +/* Number of shared memory blocks */ +#define SENSOR_SHARE_BLOCK_NUM (SENSOR_SHARE_BLOCK_MNUM+SENSOR_SHARE_BLOCK_DNUM) + +#define SENSOR_SHARE_BLOCK_SIZE 512 /* Shared Memory Block Size(byte) */ +#define SENSOR_SHARE_HEAD_SIZE 40 /* Vehicle Sensor Information Header( (4)+1+3+16*2) */ +/* Shared Memory Data Size */ +#define SENSOR_SHARE_BLOCK_DSIZE (SENSOR_SHARE_BLOCK_SIZE - SENSOR_SHARE_HEAD_SIZE) +/* Size of shared memory allocation area */ +#define SENSOR_SHARE_SIZE (SENSOR_SHARE_BLOCK_SIZE * SENSOR_SHARE_BLOCK_NUM) + +#define SENSOR_SEMAPHO_NAME ("SENSOR_SHARE_SEMAPHO") /* Semaphore name */ +#define GPS_INTERRUPT_SIGNAL_SEMAPHO_NAME ("GPS_INT_SIGNAL_SHARE_SEMAPHO") /* Semaphore name(MAX 32Byte) */ +#define GYRO_CONNECT_STATUS_SEMAPHO_NAME ("GYRO_CONNECT_STTS_SHARE_SEMAPHO") /* Semaphore name(MAX 32Byte) */ +#define EPHEMERIS_NUM_SEMAPHO_NAME ("EPHEMERIS_NUM_SHARE_SEMAPHO") /* Semaphore name(MAX 32Byte) */ +#define LOCALTIME_SEMAPHO_NAME ("LOCALTIME_SHARE_SEMAPHO") /* Semaphore name(MAX 32Byte) */ + +/*----------------------------------------------------------------------* + * Event Related Extensions * + *----------------------------------------------------------------------*/ +#define SENSOR_EVENT_VAL_INIT (SENSOR_RET_ERROR_MIN - 1) /* Event initial value */ + +/*----------------------------------------------------------------------* + * Shared Memory Related Extensions * + *----------------------------------------------------------------------*/ +#define SENSOR_SHARE_NAME ("SENSOR_SHARE_MEMORY") /* Shared memory name */ +#define GPS_INTERRUPT_SIGNAL_SHARE_NAME ("GPS_INT_SIGNAL_SHARE_MEMORY") /* Shared memory name(MAX 32Byte) */ +#define GYRO_CONNECT_STATUS_SHARE_NAME ("GYRO_CONNECT_STTS_SHARE_MEMORY") /* Shared memory name(MAX 32Byte) */ +#define EPHEMERIS_NUM_SHARE_NAME ("EPHEMERIS_NUM_SHARE_MEMORY") /* Shared memory name(MAX 32Byte) */ +#define LOCALTIME_SHARE_NAME ("LOCALTIME_SHARE_MEMORY") /* Shared memory name(MAX 32Byte) */ + +/*----------------------------------------------------------------------------- + * GPS local CID define + *----------------------------------------------------------------------------*/ +#define CID_DEV_REQGPS MAKECID(CID_DEVHIGH, 0x00) /* GPS request */ +#define CID_DEV_REQRST MAKECID(CID_DEVHIGH, 0x01) /* GPS reset request */ + +#define CID_GPS_SERIAL0 (CID)0x0100 /* GPS reset request function definition */ +/* GPS reset request CID */ + +/*--------------------------------------------------------------------------- + * GPS error log output + ---------------------------------------------------------------------------*/ +#define GPS_DBGMSG 0 /* Product Shipping Log Output(WPF_DEBUGMSG) */ +#define GPS_RTLMSG 1 /* Development test log output(WPF_RETAILMSG) */ + +/*----------------------------------------------------------------------* + * for message * + *----------------------------------------------------------------------*/ +#define CID_SENSORIF_PKG_DELIVERY_ENTRY_EXT 0x0602 /* sensor extra package register command ID */ + +/*----------------------------------------------------------------------* + * for JudgeDid * + *----------------------------------------------------------------------*/ +#define MODE_REGISTER_LISTENER_PKG_SENS_DATA 0 /* POS_RegisterListenerPkgSensData */ +#define MODE_REGISTER_LISTENER_SENSDATA 1 /* POS_RegisterListenerSensData */ +#define MODE_GET_SENSDATA 2 /* POS_GetSensData */ + +/************************************************************************ +* Typedef definitions * +************************************************************************/ + +/************************************************************************ +* Struct definitions * +************************************************************************/ + +/************************************************************************ +* TAG : SENSOR_SHARE_MNG +* ABSTRACT : Shared memory management area +************************************************************************/ +typedef struct { + uint8_t lock_info[SENSOR_SHARE_BLOCK_NUM]; /* Usages */ + uint8_t reserve[501]; /* 512-11 */ +} SENSOR_SHARE_MNG; + +/************************************************************************ +* TAG : SENSOR_SHARE_BLOCK_DAT_DAT +* ABSTRACT : Shared memory data area(Data section details) +************************************************************************/ +typedef struct { + uint8_t pkg_num; /* Number of packages */ + uint8_t reserve[3]; + uint16_t offset[SENSOR_PKG_DELIVERY_MAX]; /* Offset value */ + uint8_t data[SENSOR_SHARE_BLOCK_DSIZE]; /* Data portion */ +} SENSOR_SHARE_BLOCK_DAT_DAT; + +/************************************************************************ +* TAG : SENSOR_SHARE_BLOCK_DAT +* ABSTRACT : Shared memory data area(One block) +************************************************************************/ +typedef struct { + uint16_t size; /* Size of the data */ + uint8_t reserve[2]; + SENSOR_SHARE_BLOCK_DAT_DAT data; /* Data portion */ +} SENSOR_SHARE_BLOCK_DAT; + +/************************************************************************ +* TAG : SENSOR_SHARE_BLOCK_MNG +* ABSTRACT : Areas of memory that are shared +************************************************************************/ +typedef struct { + SENSOR_SHARE_MNG mng; /* Shared memory management information */ + SENSOR_SHARE_BLOCK_DAT data[SENSOR_SHARE_BLOCK_DNUM]; /* Shared memory data portion */ +} SENSOR_SHARE; + +/** + * @brief Return code list structure + */ +typedef struct { +/* + * Note. + * This feature needs to be defined according to the unit type. + */ + BOOL GRADE2_ret; /**< Return code in GRADE2 */ + BOOL GRADE1_ret; /**< Return code in GARDE1 */ + DID did; /**< DID */ +} SENSOR_RET_PKG; + + +/************************************************************************ +* Function prototype * +************************************************************************/ +RET_API PosDeleteEvent(EventID event_id); +RET_API SensorLinkShareData(void **share_top, uint32_t *share_size, uint16_t *offset); +RET_API SensorUnLinkShareData(SENSOR_SHARE *share_top, uint16_t offset); + +EventID PosCreateEvent(PNO pno); +void SensorSetShareData(void *share_top, uint16_t offset, const void *data_src, uint16_t size_src); +RET_API PosSndMsg(PNO pno_src, PNO pno_dest, CID cid, uint16_t msg_len, const void *msg_data); + +BOOL SensorJudgeDid(DID did, uint8_t mode); + +/* Function macro */ +#define SENSOR_DID_JUDGE_REGLIS_PKG(did) SensorJudgeDid(did, MODE_REGISTER_LISTENER_PKG_SENS_DATA) +#define SENSOR_DID_JUDGE_REGLIS(did) SensorJudgeDid(did, MODE_REGISTER_LISTENER_SENSDATA) +#define SENSOR_DID_JUDGE_GET(did) SensorJudgeDid(did, MODE_GET_SENSDATA) + +#endif // POSITIONING_CLIENT_INCLUDE_SENSOR_API_PRIVATE_H_ */ -- cgit 1.2.3-korg