2 * @copyright Copyright (c) 2016-2020 TOYOTA MOTOR CORPORATION.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
17 #ifndef POSITIONING_SERVER_INCLUDE_SENSOR_DEADRECKONING_DATAMASTER_H_
18 #define POSITIONING_SERVER_INCLUDE_SENSOR_DEADRECKONING_DATAMASTER_H_
19 /****************************************************************************
20 * File name :DeadReckoning_DataMaster.h
21 * System name :PastModel002
22 * Subsystem name :DeadReckoning processes
23 ****************************************************************************/
25 #include "DeadReckoning_Common.h"
26 #include "Dead_Reckoning_Local_Api.h"
28 /************************************************************************
30 ************************************************************************/
32 #define VEHICLE_DINIT_LONGITUDE 0x00
33 #define VEHICLE_DINIT_LATITUDE 0x00
34 #define VEHICLE_DINIT_ALTITUDE 0x00
35 #define VEHICLE_DINIT_SPEED 0x00
36 #define VEHICLE_DINIT_HEADING 0x00
37 #define VEHICLE_DINIT_DR_SNS_COUNTER 0x00
38 #define VEHICLE_DINIT_GYRO_OFFSET 0x0000
39 #define VEHICLE_DINIT_GYRO_SCALE_FACTOR 0x00
40 #define VEHICLE_DINIT_GYRO_SCALE_FACTOR_LEVEL 0x00
41 #define VEHICLE_DINIT_SPEED_PULSE_SCALE_FACTOR 0x0000
42 #define VEHICLE_DINIT_SPEED_PULSE_SCALE_FACTOR_LEVEL 0x00
44 #define VEHICLE_DSIZE_LONGITUDE 0x04
45 #define VEHICLE_DSIZE_LATITUDE 0x04
46 #define VEHICLE_DSIZE_ALTITUDE 0x04
47 #define VEHICLE_DSIZE_SPEED 0x02
48 #define VEHICLE_DSIZE_HEADING 0x02
49 #define VEHICLE_DSIZE_DR_SNS_COUNTER 0x01
50 #define VEHICLE_DSIZE_GYRO_OFFSET 0x02
51 #define VEHICLE_DSIZE_GYRO_SCALE_FACTOR 0x01
52 #define VEHICLE_DSIZE_GYRO_SCALE_FACTOR_LEVEL 0x01
53 #define VEHICLE_DSIZE_SPEED_PULSE_SCALE_FACTOR 0x02
54 #define VEHICLE_DSIZE_SPEED_PULSE_SCALE_FACTOR_LEVEL 0x01
57 #define DEADRECKONING_RCVFLAG_ON 0x01
58 #define DEADRECKONING_RCVFLAG_OFF 0x00
60 /************************************************************************
61 * Struct definitions *
62 ************************************************************************/
64 /*********************************************************************
65 * TAG : DEADRECKONING_DATA_MASTER
66 * ABSTRACT : Vehicle SW Data Master Structure
67 ***********************************************************************/
69 DID ul_did; /* Data ID */
70 u_int16 us_size; /* Size of the data */
71 u_int8 uc_rcv_flag; /* Receive flag */
72 u_int8 dr_status; /* DR status */
73 u_int8 uc_data[4]; /* Vehicle DR data */
74 } DEADRECKONING_DATA_MASTER;
76 /************************************************************************
77 * Function prototype *
78 ************************************************************************/
79 void DeadReckoningInitDataMaster(void);
80 void DeadReckoningSetDataMaster(const DEADRECKONING_DATA_MASTER *, PFUNC_DR_DMASTER_SET_N);
81 void DeadReckoningGetDataMaster(DID ul_did, DEADRECKONING_DATA_MASTER *);
83 void DeadReckoningInitLongitudeDr(void);
84 u_int8 DeadReckoningSetLongitudeDr(const DEADRECKONING_DATA_MASTER *);
85 void DeadReckoningGetLongitudeDr(DEADRECKONING_DATA_MASTER *);
87 void DeadReckoningInitLatitudeDr(void);
88 u_int8 DeadReckoningSetLatitudeDr(const DEADRECKONING_DATA_MASTER *);
89 void DeadReckoningGetLatitudeDr(DEADRECKONING_DATA_MASTER *);
91 void DeadReckoningInitAltitudeDr(void);
92 u_int8 DeadReckoningSetAltitudeDr(const DEADRECKONING_DATA_MASTER *);
93 void DeadReckoningGetAltitudeDr(DEADRECKONING_DATA_MASTER *);
95 void DeadReckoningInitSpeedDr(void);
96 u_int8 DeadReckoningSetSpeedDr(const DEADRECKONING_DATA_MASTER *);
97 void DeadReckoningGetSpeedDr(DEADRECKONING_DATA_MASTER *);
99 void DeadReckoningInitHeadingDr(void);
100 u_int8 DeadReckoningSetHeadingDr(const DEADRECKONING_DATA_MASTER *);
101 void DeadReckoningGetHeadingDr(DEADRECKONING_DATA_MASTER *);
103 void DeadReckoningInitSnsCounterDr(void);
104 u_int8 DeadReckoningSetSnsCounterDr(const DEADRECKONING_DATA_MASTER *);
105 void DeadReckoningGetSnsCounterDr(DEADRECKONING_DATA_MASTER *);
107 void DeadReckoningInitGyroOffsetDr(void);
108 u_int8 DeadReckoningSetGyroOffsetDr(const DEADRECKONING_DATA_MASTER *);
109 void DeadReckoningGetGyroOffsetDr(DEADRECKONING_DATA_MASTER *);
111 void DeadReckoningInitGyroScaleFactorDr(void);
112 u_int8 DeadReckoningSetGyroScaleFactorDr(const DEADRECKONING_DATA_MASTER *);
113 void DeadReckoningGetGyroScaleFactorDr(DEADRECKONING_DATA_MASTER *);
115 void DeadReckoningInitGyroScaleFactorLevelDr(void);
116 u_int8 DeadReckoningSetGyroScaleFactorLevelDr(const DEADRECKONING_DATA_MASTER *);
117 void DeadReckoningGetGyroScaleFactorLevelDr(DEADRECKONING_DATA_MASTER *);
119 void DeadReckoningInitSpeedPulseScaleFactorDr(void);
120 u_int8 DeadReckoningSetSpeedPulseScaleFactorDr(const DEADRECKONING_DATA_MASTER *);
121 void DeadReckoningGetSpeedPulseScaleFactorDr(DEADRECKONING_DATA_MASTER *);
123 void DeadReckoningInitSpeedPulseScaleFactorLevelDr(void);
124 u_int8 DeadReckoningSetSpeedPulseScaleFactorLevelDr(const DEADRECKONING_DATA_MASTER *);
125 void DeadReckoningGetSpeedPulseScaleFactorLevelDr(DEADRECKONING_DATA_MASTER *);
127 #endif // POSITIONING_SERVER_INCLUDE_SENSOR_DEADRECKONING_DATAMASTER_H_