Files
aqhomecontrol/aqhome/msgendpoint_p.h
2023-02-22 17:54:17 +01:00

54 lines
1.3 KiB
C

/****************************************************************************
* This file is part of the project AqHome.
* AqHome (c) by 2023 Martin Preuss, all rights reserved.
*
* The license for this file can be found in the file COPYING which you
* should have received along with this file.
****************************************************************************/
#ifndef AQH_MSGENDPOINT_P_H
#define AQH_MSGENDPOINT_P_H
#include <aqhome/api.h>
#include "aqhome/msgendpoint.h"
#include <gwenhywfar/list.h>
#include <gwenhywfar/buffer.h>
struct AQH_MSG_ENDPOINT {
GWEN_INHERIT_ELEMENT(AQH_MSG_ENDPOINT)
GWEN_LIST_ELEMENT(AQH_MSG_ENDPOINT)
int fd;
char *name;
AQH_MSG_LIST *receivedMessageList;
AQH_MSG_LIST *sendMessageList;
AQH_MSG *currentlyReceivedMsg;
AQH_MSG_ENDPOINT_HANDLEREADABLE_FN handleReadableFn;
AQH_MSG_ENDPOINT_HANDLEWRITABLE_FN handleWritableFn;
AQH_MSG_ENDPOINT_GET_READFD_FN getReadFdFn;
AQH_MSG_ENDPOINT_GET_WRITEFD_FN getWriteFdFn;
AQH_MSG_ENDPOINT_RUN_FN runFn;
AQH_MSG_ENDPOINT_STARTMSG_FN startMsgFn;
AQH_MSG_ENDPOINT_ENDMSG_FN endMsgFn;
AQH_MSG_ENDPOINT_CHECKMSG_FN checkMsgFn;
uint32_t flags;
uint32_t groupId;
uint32_t acceptedEndpointGroups;
uint32_t acceptedMsgGroups;
int sendingMessage;
};
#endif