29 #define FRAMEID_DCP_UC_REQ 0xFEFD
30 #define FRAMEID_DCP_UC_RSP 0xFEFD
31 #define FRAMEID_DCP_MC_REQ 0xFEFE
32 #define FRAMEID_DCP_MC_RSP 0xFEFF
33 #define FRAMEID_DCP_HELLO_REQ 0xFEFC
35 #define PNIO_DCP_MULTICAST_MAC {0x01, 0x0e, 0xcf, 0x00, 0x00, 0x00}
36 #define PNIO_DCP_HELLO_MAC {0x01, 0x0e, 0xcf, 0x00, 0x00, 0x01}
40 #define DCP_NOREQUEST (APP_BYTE) 0xff
41 #define DCP_NOSERVICE (APP_BYTE) 0
42 #define DCP_GET (APP_BYTE) 3
43 #define DCP_SET (APP_BYTE) 4
44 #define DCP_IDENTIFY (APP_BYTE) 5
45 #define DCP_HELLO (APP_BYTE) 6
48 #define DCP_TYPE_RSP 1
49 #define DCP_TYPE_REQ 0
51 #define DCP_TYPE_REQ_UNSPORTED 5
52 #define DCP_UNSUPPORTED 1
55 #define DCP_SO_ALL_ALL 255
58 #define DCP_SO_IP_MAC 1
59 #define DCP_SO_IP_IIP 2
63 #define DCP_SO_OC_STR 1
64 #define DCP_SO_OC_STP 2
65 #define DCP_SO_OC_SIG 3
66 #define DCP_SO_OC_FAR 5
67 #define DCP_SO_OC_RSP 4
71 #define DCP_OPTION_RSV 0
72 #define DCP_OPTION_IPO 1
73 #define DCP_OPTION_DPO 2
74 #define DCP_OPTION_DHC 3
75 #define DCP_OPTION_LLD 4
76 #define DCP_OPTION_CON 5
77 #define DCP_OPTION_DIO 6
78 #define DCP_OPTION_ALL 255
81 #define DCP_SO_DP_RSV 0
82 #define DCP_SO_DP_MAS 1
83 #define DCP_SO_DP_NOS 2
84 #define DCP_SO_DP_DID 3
85 #define DCP_SO_DP_DRO 4
86 #define DCP_SO_DP_DOP 5
87 #define DCP_SO_DP_ANS 6
88 #define DCP_SO_DP_INS 7
91 #define DCP_DHCP_HOST_NAME 12
92 #define DCP_DHCP_VENDOR_SPE 43
93 #define DCP_DHCP_SERVER_IDENT 54
94 #define DCP_DHCP_PARAM_LIST 55
95 #define DCP_DHCP_CLASS_ID 60
96 #define DCP_DHCP_CLIENT_ID 61
97 #define DCP_DHCP_FQDN 81
98 #define DCP_DHCP_UUID_GUID_BASED 97
99 #define DCP_DHCP_CONTROL 255
105 #define DCP_SO_DIO_DI 1
111 #define DCP_SO_IP_MAC 1
112 #define DCP_SO_IP_IIP 2
115 #define DCP_SO_OC_STR 1
116 #define DCP_SO_OC_STP 2
117 #define DCP_SO_OC_SIG 3
118 #define DCP_SO_OC_FAR 5
119 #define DCP_SO_OC_RSP 4
122 #define DCP_SO_IP_PARAM_UNSAVE 0
123 #define DCP_SO_IP_PARAM_SAVE 1
127 #define DCP_MAX_RES_DATA_SIZE 1466
128 #define DCP_MAX_REQ_DATA_SIZE 1466
130 #define MaxReqOption 5
136 #define DCP_NO_ERROR 0
137 #define DCP_RSP_SUCCESS 1
138 #define DCP_RSP_ERROR 2
140 #define DCP_REMANENT 1
141 #define DCP_NOT_REMANENT 0
145 #define DCP_ROLE_DEVICE 1
146 #define DCP_ROLE_CONTROLLER 2
147 #define DCP_ROLE_MULTIDEVICE 4
148 #define DCP_ROLE_SUPERVISOR 8
150 #define DCP_BLOCK_NO_ERROR 0
151 #define DCP_BLOCK_UNSUPPORTED 1
152 #define DCP_BLOCK_SO_UNSUPPORTED 2
153 #define DCP_BLOCK_SO_NOT_SET 3
154 #define DCP_BLOCK_RESSOURCE_ERROR 4
155 #define DCP_BLOCK_SET_NOT_POSSIBLE_LOCAL 5
156 #define DCP_BLOCK_SET_NOT_POSSIBLE_APP 6
168 #define DCP_BLOCK_INF_NO_IP_PARAM 0x00
169 #define DCP_BLOCK_INF_IP_PARAM_SET 0x01
170 #define DCP_BLOCK_INF_IP_PARAM_SET_DHCP 0x02
178 #define DCP_BLOCK_INF_NO_IP_ADDR_CONFLICT 0x00
179 #define DCP_BLOCK_INF_IP_ADDR_CONFLICT 0x01
182 #define DCP_SIGNAL_BLOCK_VALUE_LENGTH 2
183 #define DCP_SIGNAL_FLASH_VALUE 0x0100
192 typedef struct _ST_DCP_TYPE_SU PACK_ALIGNEMENT(ST_DCP_TYPE_SU), APP_FAR * LPST_DCP_TYPE_SU;
193 #define ST_DCP_TYPE_SU_SIZEOF 2
194 STRUCT_SIZE_CHECK(ST_DCP_TYPE_SU, ST_DCP_TYPE_SU_SIZEOF)
202 #define ST_DCP_REC_STATION_NAME_SIZEOF 4
204 STRUCT_SIZE_CHECK(ST_DCP_REC_STATION_NAME, ST_DCP_REC_STATION_NAME_SIZEOF)
208 APP_BYTE bDeviceRole;
212 #define ST_DCP_REC_DEVICE_ROLE_SIZEOF 2
213 STRUCT_SIZE_CHECK(ST_DCP_REC_DEVICE_ROLE, ST_DCP_REC_DEVICE_ROLE_SIZEOF)
221 #define ST_DCP_REC_DEVICE_ID_SIZEOF 4
222 STRUCT_SIZE_CHECK(ST_DCP_REC_DEVICE_ID, ST_DCP_REC_DEVICE_ID_SIZEOF)
227 ST_DCP_TYPE_SU *pDcpType;
230 #define ST_DCP_REC_DEVICE_OPTION_SIZEOF 4
231 STRUCT_SIZE_CHECK(ST_DCP_REC_DEVICE_OPTION, ST_DCP_REC_DEVICE_OPTION_SIZEOF)
235 ALIGNED_DWORD_DECL(dwIpAddr);
236 ALIGNED_DWORD_DECL(dwSubNet);
237 ALIGNED_DWORD_DECL(dwRoute);
240 #define ST_DCP_REC_IP_PARAM_SIZEOF 12
241 STRUCT_SIZE_CHECK(ST_DCP_REC_IP_PARAM, ST_DCP_REC_IP_PARAM_SIZEOF)
245 ALIGNED_DWORD_DECL(dwIpAddr);
246 ALIGNED_DWORD_DECL(dwSubNet);
247 ALIGNED_DWORD_DECL(dwRoute);
250 #define ST_DCP_REC_IP_PARAM_SET_SIZEOF 12
251 STRUCT_SIZE_CHECK(ST_DCP_REC_IP_PARAM_SET, ST_DCP_REC_IP_PARAM_SET_SIZEOF)
255 char *pTypeOfStation;
258 #define ST_DCP_REC_DEVICE_SPEC_SIZEOF 4
259 STRUCT_SIZE_CHECK(ST_DCP_REC_DEVICE_SPEC, ST_DCP_REC_DEVICE_SPEC_SIZEOF)
267 #define ST_DCP_REC_CTRL_RESP_SIZEOF 2
268 STRUCT_SIZE_CHECK(ST_DCP_REC_CTRL_RESP, ST_DCP_REC_CTRL_RESP_SIZEOF)
272 ST_DCP_REC_STATION_NAME StationName;
273 ST_DCP_REC_IP_PARAM Ip_Param;
274 ST_DCP_REC_DEVICE_ROLE DeviceRole;
275 ST_DCP_REC_DEVICE_ID DeviceId;
276 ST_DCP_REC_DEVICE_SPEC DeviceSpec;
277 ST_DCP_REC_DEVICE_OPTION DeviceOption;
278 ST_DCP_REC_CTRL_RESP ControlResp;
279 ST_DCP_REC_IP_PARAM_SET Ip_Param_Set;
281 #define ST_DCP_VALUE_SU_SIZEOF sizeof(ST_DCP_VALUE_SU)
286 APP_WORD DataBlockLength;
290 #define ST_DCP_IDENT_LIST_DATA_REQ_HDR_SIZEOF 4
291 #define ST_DCP_IDENT_LIST_DATA_REQ_SIZEOF (4+ST_DCP_VALUE_SU_SIZEOF)
292 STRUCT_SIZE_CHECK(ST_DCP_IDENT_LIST_DATA_REQ, ST_DCP_IDENT_LIST_DATA_REQ_SIZEOF)
299 APP_WORD DataBlockLength;
300 APP_WORD wResponseStatus;
304 #define ST_DCP_IDENT_LIST_DATA_RES_SIZEOF 4
308 APP_WORD DataBlockLength;
310 #ifndef FIX_DWORD_ALIGNMENT
313 APP_BYTE Value_Filler[ST_DCP_VALUE_SU_SIZEOF];
316 typedef struct _ST_DCP_LIST_DATA_ PACK_ALIGNEMENT(ST_DCP_LIST_DATA), APP_FAR *LPST_DCP_LIST_DATA;
317 #define ST_DCP_LIST_DATA_SIZEOF (ST_DCP_TYPE_SU_SIZEOF+4+ST_DCP_VALUE_SU_SIZEOF)
318 STRUCT_SIZE_CHECK(ST_DCP_LIST_DATA, ST_DCP_LIST_DATA_SIZEOF)
324 APP_BYTE ServiceType;
325 ALIGNED_DWORD_DECL(Xid);
326 APP_WORD ResponseDelay;
327 APP_WORD DCPDataLength;
330 #define ST_DCP_HEADER_SIZEOF 10
336 ST_DCP_IDENT_LIST_DATA_REQ ListOfData;
339 #define ST_DCP_IDENTIFY_PDU_REQ_SIZEOF ST_DCP_IDENT_LIST_DATA_REQ_SIZEOF
340 STRUCT_SIZE_CHECK(ST_DCP_IDENTIFY_PDU_REQ, ST_DCP_IDENTIFY_PDU_REQ_SIZEOF)
344 ST_DCP_LIST_DATA ListOfSelector;
347 #define ST_DCP_GET_PDU_REQ_SIZEOF ST_DCP_LIST_DATA_SIZEOF
348 STRUCT_SIZE_CHECK(ST_DCP_GET_PDU_REQ, ST_DCP_GET_PDU_REQ_SIZEOF)
351 ST_DCP_LIST_DATA ListOfData;
354 #define ST_DCP_SET_PDU_REQ_SIZEOF ST_DCP_LIST_DATA_SIZEOF
355 STRUCT_SIZE_CHECK(ST_DCP_SET_PDU_REQ, ST_DCP_SET_PDU_REQ_SIZEOF)
358 APP_BYTE Byte[DCP_MAX_REQ_DATA_SIZE];
359 ST_DCP_IDENTIFY_PDU_REQ Identify;
360 ST_DCP_GET_PDU_REQ Get;
361 ST_DCP_SET_PDU_REQ Set;
362 }PACK_ALIGNEMENT(ST_DCP_REQ_DATA), APP_FAR LPST_DCP_REQ_DATA;
363 #define ST_DCP_REQ_DATA_SIZEOF sizeof(ST_DCP_REQ_DATA)
367 ST_DCP_REQ_DATA Data;
369 typedef struct _ST_DCP_REQ PACK_ALIGNEMENT(ST_DCP_REQ), APP_FAR * LPST_DCP_REQ;
370 #define ST_DCP_REQ_SIZEOF (ST_DCP_HEADER_SIZEOF+ST_DCP_REQ_DATA_SIZEOF)
371 STRUCT_SIZE_CHECK(ST_DCP_REQ, ST_DCP_REQ_SIZEOF)
375 ST_DCP_LIST_DATA IdentData;
378 #define ST_DCP_IDENTIFY_PDU_RES_SIZEOF ST_DCP_LIST_DATA_SIZEOF
379 STRUCT_SIZE_CHECK(ST_DCP_IDENTIFY_PDU_RES, ST_DCP_IDENTIFY_PDU_RES_SIZEOF)
382 ST_DCP_LIST_DATA GetData;
385 #define ST_DCP_GET_PDU_RES_SIZEOF ST_DCP_LIST_DATA_SIZEOF
386 STRUCT_SIZE_CHECK(ST_DCP_GET_PDU_RES, ST_DCP_GET_PDU_RES_SIZEOF)
389 ST_DCP_LIST_DATA SetResult;
392 #define ST_DCP_SET_PDU_RES_SIZEOF ST_DCP_LIST_DATA_SIZEOF
393 STRUCT_SIZE_CHECK(ST_DCP_SET_PDU_RES, ST_DCP_SET_PDU_RES_SIZEOF)
397 APP_BYTE Byte[DCP_MAX_RES_DATA_SIZE];
398 ST_DCP_IDENTIFY_PDU_RES Identify;
399 ST_DCP_GET_PDU_RES Get;
400 ST_DCP_SET_PDU_RES Set;
401 }PACK_ALIGNEMENT(ST_DCP_RES_DATA);
402 #define ST_DCP_RES_DATA_SIZEOF sizeof(ST_DCP_RES_DATA)
407 ST_DCP_RES_DATA Data;
409 typedef struct _ST_DCP_RES PACK_ALIGNEMENT(ST_DCP_RES), APP_FAR * LPST_DCP_RES;
410 #define ST_DCP_RES_SIZEOF (ST_DCP_HEADER_SIZEOF+ST_DCP_RES_DATA_SIZEOF)
411 STRUCT_SIZE_CHECK(ST_DCP_RES, ST_DCP_RES_SIZEOF)
413 #include "os_unpck.h"
Definition: dcp_pdu.h:322
Definition: dcp_pdu.h:297
Definition: dcp_pdu.h:381
Definition: dcp_pdu.h:216
Definition: dcp_pdu.h:388
Definition: dcp_pdu.h:226
Definition: dcp_pdu.h:270
Definition: dcp_pdu.h:254
Definition: dcp_pdu.h:335
Definition: dcp_pdu.h:365
Definition: dcp_pdu.h:262
Definition: dcp_pdu.h:405
Definition: dcp_pdu.h:343
Definition: dcp_pdu.h:350
Definition: dcp_pdu.h:244
Definition: dcp_pdu.h:234
Definition: dcp_pdu.h:357
Definition: dcp_pdu.h:197
Definition: dcp_pdu.h:187
Definition: dcp_pdu.h:206
Definition: dcp_pdu.h:284
Definition: dcp_pdu.h:306
Definition: dcp_pdu.h:396
Definition: dcp_pdu.h:374