summaryrefslogtreecommitdiffstats
path: root/positioning/server/include/Sensor/VehicleSens_Common.h
blob: d3f0b4572331cae69673ddc4a04a72bbf6c102ed (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
/*
 * @copyright Copyright (c) 2016-2019 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_SERVER_INCLUDE_SENSOR_VEHICLESENS_COMMON_H_
#define POSITIONING_SERVER_INCLUDE_SENSOR_VEHICLESENS_COMMON_H_
/****************************************************************************
 * File name    :VehicleSens_Common.h
 * System name    :_CWORD107_
 * Subsystem name  :Vehicle sensor process
 ****************************************************************************/

#include "Vehicle_API_Dummy.h"
#include "Vehicle_API_private.h"

//#include "positioning_hal.h"

/************************************************************************
*      Macro definitions                          *
************************************************************************/
#define VEHICLESENS_ZERO          0
#define VEHICLESENS_BIT0          0x00000001
#define VEHICLESENS_BIT1          0x00000002
#define VEHICLESENS_BIT2          0x00000004
#define VEHICLESENS_BIT3          0x00000008
#define VEHICLESENS_BIT4          0x00000010
#define VEHICLESENS_BIT5          0x00000020
#define VEHICLESENS_BIT6          0x00000040
#define VEHICLESENS_BIT7          0x00000080
#define VEHICLESENS_BIT29          0x20000000
#define VEHICLESENS_BIT30          0x40000000
#define VEHICLESENS_BIT31          0x80000000
#define VEHICLESENS_NEQ            1
#define VEHICLESENS_EQ            0
#define VEHICLESENS_INVALID          0
#define VEHICLESENS_EFFECTIVE        1
#define VEHICLESENS_CHGTYPE_NCHG      VEHICLESENS_EQ
#define VEHICLESENS_CHGTYPE_CHG        VEHICLESENS_NEQ
#define VEHICLESENS_GETMETHOD_CAN      0  /* Data collection way: CAN communication */
#define VEHICLESENS_GETMETHOD_LINE      1  /* Data collection way: LineSensor drivers */
#define VEHICLESENS_GETMETHOD_NO_DETECTION  2  /* Data collection way: Not downloaded */
#define VEHICLESENS_GETMETHOD_GPS      3  /* Data collection way: GPS */
#define VEHICLESENS_GETMETHOD_NAVI      4  /* Data collection way: NAVI */
#define VEHICLESENS_GETMETHOD_CLOCK      5  /* Data collection way: Clock Information */
#define VEHICLESENS_GETMETHOD_INTERNAL    6  /* Data collection way: Internal calculation */
#define VEHICLESENS_GETMETHOD_OTHER      7  /* Data collection way: Others */

/* Offset value of normal data of vehicle sensor */
#define  VEHICLESENS_OFFSET_NORMAL      32
/* Offset value of normal data of vehicle sensor */
#define  VEHICLESENS_OFFSET_GPS_FORMAT    268    /* 8 + 260 */
/* Offset value of normal data of vehicle sensor */
#define  VEHICLESENS_OFFSET_GPS_BINARY    368    /* 8 + 360 */
/* ++ GPS _CWORD82_ support */
#define  VEHICLESENS_OFFSET_GPS_NMEA      460    /* 8 + 452  Packaged delivery offset */
/* -- GPS _CWORD82_ support */

/* ++ PastModel002 support */
/* U-Blox GPS offsets */
#define  VEHICLESENS_OFFSET_GPS_UBLOX    220    /* 220 */
/* -- PastModel002 support */

#if CONFIG_SENSOR_EXT_VALID        /* Initial Sensor Support */
#define  VEHICLESENS_OFFSET_10WORD_PKG_EXT  208    /* Offset value of 10 initial deliveries(WORD) 8 + (20 * 10)  */
#define  VEHICLESENS_OFFSET_WORD_PKG_EXT    28    /* Offset value of 10 initial deliveries(WORD) 8 + 20  */
#define  VEHICLESENS_OFFSET_BYTE_PKG_EXT    18    /* Offset value of 10 initial deliveries(BYTE) 8 + 10  */
#define  VEHICLESENS_OFFSET_32LONG_PKG_EXT  1328  /* Offset value of 10 initial deliveries(LONG) 8 + (132 * 10)  */
#define  VEHICLESENS_OFFSET_20WORD      48    /* Offset value of 20 sensor data(WORD) 8 + 40  */
#define  VEHICLESENS_OFFSET_20WORD_FST    408    /* Offset value of 20 initial sensor data(WORD) 8 + 400  */
#define  VEHICLESENS_DNUM_4          4    /* Number of sensor data */
#define  VEHICLESENS_DNUM_5          5    /* Number of sensor data */
#define  VEHICLESENS_DNUM_7          7    /* Number of sensor data */
#endif
#define  VEHICLESENS_EXT_OFF          0    /* Normal delivery  */
#define  VEHICLESENS_EXT_ON          1    /* Extended delivery  */

#if CONFIG_HW_PORTSET_TYPE_C
#define  VEHICLESENS_OFFSET_GPS_NMEA      248    /* 8 + 240 */
#endif

/************************************************************************
*      Typedef definitions                          *
************************************************************************/
/* typedef  u_int32    DID;          */  /* Data ID      */

/* Data Master Set Notification Function */
typedef  void (*PFUNC_DMASTER_SET_N) (DID, u_int8, u_int8);
typedef  void (*PFUNC_DMASTER_SET_SHARED_MEMORY) (DID, u_int8);

/************************************************************************
*      Struct definitions                          *
************************************************************************/
/*********************************************************************
* TAG       : VEHICLESENS_DID_OFFSET_TBL
* ABSTRACT  : Vehicle sensor data ID,Structure of each data in the offset table
***********************************************************************/
typedef struct {
    DID    ul_did;                /* Data ID      */
    u_int16  us_offset;              /* Offset value    */
    u_int8  uc_reserve[2];            /* Reserved      */
} VEHICLESENS_DID_OFFSET_TBL;

/*********************************************************************
* TAG       :
* ABSTRACT  :
***********************************************************************/

/************************************************************************
*      Function prototype                        *
************************************************************************/
u_int8 VehicleSensmemcmp(const void *, const void *, size_t);
int32 VehicleSensCheckDid(DID);
u_int16  VehicleSensGetDataMasterOffset(DID);
#if CONFIG_SENSOR_EXT_VALID        /* Initial Sensor Support */
u_int16  VehicleSensGetDataMasterExtOffset(DID);
#endif
//void VehicleSensSetGpsVersion(const SENSOR_MSG_GPSDATA_DAT *pstData);
void VehicleSensGetDebugPosDate(void* pBuf, u_int8 uc_get_method);
#endif  // POSITIONING_SERVER_INCLUDE_SENSOR_VEHICLESENS_COMMON_H_