summaryrefslogtreecommitdiffstats
path: root/ipc/include/ipc_protocol.h
blob: dc703d0bd685fa81ad772684cc15c1327e22bc6a (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
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
/*
 * Copyright (c) 2021, Nippon Seiki Co., Ltd.
 * SPDX-License-Identifier: Apache-2.0
 *
 * 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 IPC_PROTOCOL_H
#define IPC_PROTOCOL_H

// TODO: Write something

typedef enum {
    IPC_USAGE_TYPE_IC_SERVICE = 0,
    IPC_USAGE_TYPE_FOR_TEST,
    IPC_USAGE_TYPE_MAX
} IPC_USAGE_TYPE_E;

// for IPC_USAGE_TYPE_IC_SERVICE
typedef enum {
    IPC_KIND_ICS_TURN_R = 0,
    IPC_KIND_ICS_TURN_L,
    IPC_KIND_ICS_BRAKE,
    IPC_KIND_ICS_SEATBELT,
    IPC_KIND_ICS_HIGHBEAM,
    IPC_KIND_ICS_DOOR,
    IPC_KIND_ICS_EPS,
    IPC_KIND_ICS_SRS_AIRBAG,
    IPC_KIND_ICS_ABS,
    IPC_KIND_ICS_LOW_BATTERY,
    IPC_KIND_ICS_OIL_PRESS,
    IPC_KIND_ICS_ENGINE,
    IPC_KIND_ICS_FUEL,
    IPC_KIND_ICS_IMMOBI,
    IPC_KIND_ICS_TM_FAIL,
    IPC_KIND_ICS_ESP_ACT,
    IPC_KIND_ICS_ESP_OFF,
    IPC_KIND_ICS_ADAPTING_LIGHTING,
    IPC_KIND_ICS_AUTO_STOP,
    IPC_KIND_ICS_AUTO_STOP_FAIL,
    IPC_KIND_ICS_PARKING_LIGHTS,
    IPC_KIND_ICS_FRONT_FOG,
    IPC_KIND_ICS_EXTERIOR_LIGHT_FAULT,
    IPC_KIND_ICS_ACC_FAIL,
    IPC_KIND_ICS_LDW_OFF,
    IPC_KIND_ICS_HILL_DESCENT,
    IPC_KIND_ICS_AUTO_HI_BEAM_GREEN,
    IPC_KIND_ICS_AUTO_HI_BEAM_AMBER,
    IPC_KIND_ICS_LDW_OPERATE,
    IPC_KIND_ICS_GENERAL_WARN,
    IPC_KIND_ICS_SPORTS_MODE,
    IPC_KIND_ICS_DRIVING_POWER_MODE,
    IPC_KIND_ICS_HOT_TEMP,
    IPC_KIND_ICS_LOW_TEMP
} IPC_KIND_IC_SERVICE_E;

typedef struct {
    // Telltale
    signed int turnR;
    signed int turnL;
    signed int brake;
    signed int seatbelt;
    signed int frontRightSeatbelt;
    signed int frontCenterSeatbelt;
    signed int frontLeftSeatbelt;
    signed int mid1RightSeatbelt;
    signed int mid1CenterSeatbelt;
    signed int mid1LeftSeatbelt;
    signed int mid2RightSeatbelt;
    signed int mid2CenterSeatbelt;
    signed int mid2LeftSeatbelt;
    signed int rearRightSeatbelt;
    signed int rearCenterSeatbelt;
    signed int rearLeftSeatbelt;
    signed int highbeam;
    signed int door;
    signed int frontRightDoor;
    signed int frontLeftDoor;
    signed int rearRightDoor;
    signed int rearLeftDoor;
    signed int trunkDoor;
    signed int hoodDoor;
    signed int eps;
    signed int srsAirbag;
    signed int abs;
    signed int lowBattery;
    signed int oilPress;
    signed int engine;
    signed int fuel;
    signed int immobi;
    signed int tmFail;
    signed int espAct;
    signed int espOff;
    signed int adaptingLighting;
    signed int autoStop;
    signed int autoStopFail;
    signed int parkingLights;
    signed int frontFog;
    signed int exteriorLightFault;
    signed int accFail;
    signed int ldwOff;
    signed int hillDescent;
    signed int autoHiBeamGreen;
    signed int autoHiBeamAmber;
    signed int sportsMode;
    signed int ldwOperate;
    signed int generalWarn;
    signed int drivingPowerMode;
    signed int hotTemp;
    signed int lowTemp;

    // ShiftPosition
    signed int gearAtVal;
    signed int gearMtVal;

    // Speed
    unsigned long spAnalogVal;
    signed int spAnaDigUnitVal;

    // Tacho
    unsigned long taAnalogVal;

    // TripComputer
    unsigned long trcomTripAVal;
    unsigned long trcomTripBVal;
    unsigned long trcomOdoVal;
    signed int trcomUnitVal;
    unsigned short avgSpeedAVal;
    unsigned short avgSpeedBVal;
    unsigned short hourAVal;
    unsigned short hourBVal;
    unsigned char minuteAVal;
    unsigned char minuteBVal;
    unsigned char secondAVal;
    unsigned char secondBVal;
    signed short oTempVal;
    signed int oTempUnitVal;
    unsigned short cruRangeVal;
    unsigned short avgFuelAVal;
    unsigned short avgFuelBVal;
    unsigned short insFuelAVal;
    unsigned short insFuelBVal;
    signed int fuelEconomyUnitVal;
} IPC_DATA_IC_SERVICE_S;

// for IPC_USAGE_TYPE_FOR_TEST
typedef enum {
    IPC_KIND_TEST_TEST = 0
} IPC_KIND_FOR_TEST_E;

typedef struct {
    signed int test;
} IPC_DATA_FOR_TEST_S;

#endif // IPC_PROTOCOL_H