gwenhywfar  5.11.1beta
msg_ipc.h
Go to the documentation of this file.
1 /****************************************************************************
2  * This file is part of the project Gwenhywfar.
3  * Gwenhywfar (c) by 2023 Martin Preuss, all rights reserved.
4  *
5  * The license for this file can be found in the file COPYING which you
6  * should have received along with this file.
7  ****************************************************************************/
8 
9 
10 #ifndef GWEN_MSG_MSG_IPC_H
11 #define GWEN_MSG_MSG_IPC_H
12 
13 
14 #include <gwenhywfar/msg.h>
15 
16 
17 #define GWEN_MSGIPC_OFFS_SIZE 0 /* 4 bytes: number of all bytes including size, protoid, protover and code */
18 #define GWEN_MSGIPC_OFFS_PROTOID 4 /* 1 byte: protocol id (free to use) */
19 #define GWEN_MSGIPC_OFFS_PROTOVER 5 /* 1 byte: protocol version (free to use) */
20 #define GWEN_MSGIPC_OFFS_CODE 6 /* 2 bytes msg code (meaning depends on protocol) */
21 #define GWEN_MSGIPC_OFFS_PAYLOAD 8 /* begin of payload for a given message */
22 
23 
24 
26  uint8_t protoVer,
27  uint16_t code,
28  uint32_t payloadLen,
29  const uint8_t *payload);
35 
36 
37 #endif
38 
39 
#define GWENHYWFAR_API
Definition: gwenhywfarapi.h:67
struct GWEN_MSG GWEN_MSG
Definition: msg.h:25
GWENHYWFAR_API uint8_t GWEN_IpcMsg_GetProtoVersion(const GWEN_MSG *msg)
GWENHYWFAR_API GWEN_MSG * GWEN_IpcMsg_new(uint8_t protoId, uint8_t protoVer, uint16_t code, uint32_t payloadLen, const uint8_t *payload)
GWENHYWFAR_API int GWEN_IpcMsg_IsMsgComplete(const GWEN_MSG *msg)
GWENHYWFAR_API uint16_t GWEN_IpcMsg_GetCode(const GWEN_MSG *msg)
GWENHYWFAR_API uint32_t GWEN_IpcMsg_GetMsgSize(const GWEN_MSG *msg)
GWENHYWFAR_API uint8_t GWEN_IpcMsg_GetProtoId(const GWEN_MSG *msg)