Eric Jung / GMMP_mbed_Ethernet_Reinit

Dependents:   ThingPlug_Ethernet_Example

Fork of GMMP_mbed by Eric Jung

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers Struct_Delivery.h Source File

Struct_Delivery.h

Go to the documentation of this file.
00001   /** GMMP Operation 중 주기보고 명령에 사용되는 구조체
00002  * @file Struct_Delivery.h
00003  * @date 2013/11/21
00004  * @version 0.0.0.1
00005  * @ref GMMPHeader참조
00006  **/
00007 
00008 #ifndef STRUCT_DELIVERY_H_
00009 #define STRUCT_DELIVERY_H_
00010 
00011 
00012 #include "Define.h"
00013 #include "Struct_Common.h"
00014 
00015 #pragma pack(1)
00016 
00017 /**
00018  * @struct stPacketDeliveryReqHdr
00019  * @brief GMMP TCP Packet  구조 중 Request 수행 시 Message Header와 Message Body 영역
00020  * OMP에 주기 보고 명령을 전송 시 사용된다.
00021  */
00022 typedef struct {
00023 /**
00024 *@var usDomainCode
00025 *@brief 서비스 영역별 구분 코드\n
00026 - AlphaNumeric : 문자,숫자 조합, 특수문자제외, SPACE 허용 안하며 빈자리는 0x00(NULL)로 채운다.\n
00027 */
00028 /**
00029 *@var usGWID
00030 *@brief M2M GW ID
00031 */
00032 /**
00033 *@var usDeviceID
00034 *@brief M2M Device ID, 값이 0x0이면 GW 명령이다.
00035 */
00036 /**
00037 *@var ucReportType
00038 *@brief 주기 보고 명령 구분자
00039 *@ref Define_Delivery.h 참조
00040 */
00041 /**
00042 *@var ucMediaType
00043 *@brief 주기 보고 하는 데이터의 타입\n
00044 *아래 표 참조\n
00045 *@image html mediatype.JPG Media Type 표
00046 */
00047 /**
00048 *@var usMessageBody
00049 *@brief Data [2048byte]
00050 */
00051     U8  usDomainCode[LEN_DOMAIN_CODE];
00052     U8  usGWID[LEN_GW_ID];
00053     U8  usDeviceID[LEN_DEVICE_ID];
00054     U8  ucReportType;
00055     U8  ucMediaType;
00056     U8  usMessageBody[MAX_MSG_BODY];
00057 }stPacketDeliveryReqHdr; //Delivery Request
00058 
00059 /**
00060  * @struct stPacketDeliveryRspHdr
00061  * @brief GMMP TCP Packet  구조 중 Response 수행 시 Message Header와 Message Body 영역
00062  * OMP에서 주기 보고 명령 응답 완료 수신 시 사용된다.
00063  */
00064 typedef struct {
00065 /**
00066 *@var usDomainCode
00067 *@brief 서비스 영역별 구분 코드\n
00068 - AlphaNumeric : 문자,숫자 조합, 특수문자제외, SPACE 허용 안하며 빈자리는 0x00(NULL)로 채운다.\n
00069 */
00070 /**
00071 *@var usGWID
00072 *@brief M2M GW ID
00073 */
00074 /**
00075 *@var usDeviceID
00076 *@brief M2M Device ID, 값이 0x0이면 GW 명령이다.
00077 */
00078 /**
00079 *@var ucResultCode
00080 *@brief Result Code (0x00 : Success, other : Fail Reason) @ref OMPErrorCode.h 참조
00081 */
00082 /**
00083 *@var unBackOffTime
00084 *@brief Result Code가 STATUS_NOT_ACCEPTABLE(OMP 과부하) 인 경우 해당 시간 값 만큼 이후 시간에 주기보고를 재시도 해야 한다.\n
00085 * Optional (선택적인 필드임을 의미한다)
00086 */
00087     U8  usDomainCode[LEN_DOMAIN_CODE];
00088     U8  usGWID[LEN_GW_ID];
00089     U8  usDeviceID[LEN_DEVICE_ID];
00090     U8  ucResultCode;
00091     U8  unBackOffTime[4];
00092 }stPacketDeliveryRspHdr; //Delivery Response
00093 
00094 /**
00095  * @struct Delivery_Req
00096  * @brief GMMP TCP Packet  구조 중 Request Delivery 구조체
00097  *  OMP에 주기보고 데이터를 전송한다.
00098  */
00099 typedef struct {
00100 /**
00101 *@var header
00102 *@brief @ref GMMPHeader 참조
00103 */
00104 /**
00105 *@var body
00106 *@brief @ref stPacketDeliveryReqHdr 참조
00107 */
00108     GMMPHeader              header;
00109     stPacketDeliveryReqHdr  body;
00110 }Delivery_Req;
00111 
00112 /**
00113  * @struct Delivery_Rsp
00114  * @brief GMMP TCP Packet  구조 중 Response Delivery 구조체
00115  * OMP에 주기보고 데이터 전송 응답을 수신한다.
00116  */
00117 typedef struct {
00118 /**
00119 *@var header
00120 *@brief @ref GMMPHeader 참조
00121 */
00122 /**
00123 *@var body
00124 *@brief @ref stPacketDeliveryRspHdr 참조
00125 */
00126     GMMPHeader              header;
00127     stPacketDeliveryRspHdr  body;
00128 }Delivery_Rsp;
00129 #pragma pack(0)
00130 
00131 #endif /* STRUCT_DELIVERY_H_ */
00132