57 lines
1.4 KiB
C
57 lines
1.4 KiB
C
/****************************************************************************
|
|
* This file is part of the project AqHome.
|
|
* AqHome (c) by 2024 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 AQHOMEREACT_U_MODULE_P_H
|
|
#define AQHOMEREACT_U_MODULE_P_H
|
|
|
|
|
|
#include "./u_module.h"
|
|
|
|
#include "aqhome-react/aqhome_react.h"
|
|
#include "aqhome-react/types/unit.h"
|
|
|
|
#include <gwenhywfar/list.h>
|
|
|
|
|
|
typedef struct MODULE_PROXY_DESCR MODULE_PROXY_DESCR;
|
|
typedef struct AQHREACT_UNIT_MODULE AQHREACT_UNIT_MODULE;
|
|
|
|
GWEN_LIST_FUNCTION_DEFS(MODULE_PROXY_DESCR, ModuleProxyDescr);
|
|
|
|
|
|
|
|
struct MODULE_PROXY_DESCR {
|
|
GWEN_LIST_ELEMENT(MODULE_PROXY_DESCR);
|
|
char *name;
|
|
char *targetObject;
|
|
char *targetName;
|
|
int targetIdForModule;
|
|
AQHREACT_UNIT *targetObjectPtr;
|
|
};
|
|
|
|
|
|
static MODULE_PROXY_DESCR *ModuleProxyDescr_new(const char *name, const char *targetObject, const char *targetName);
|
|
static void ModuleProxyDescr_free(MODULE_PROXY_DESCR *pd);
|
|
static MODULE_PROXY_DESCR *ModuleProxyDescr_List_FindByName(const MODULE_PROXY_DESCR_LIST *pdList, const char *s);
|
|
|
|
|
|
|
|
struct AQHREACT_UNIT_MODULE {
|
|
MODULE_PROXY_DESCR_LIST *paramProxyList;
|
|
AQHREACT_UNIT_LIST *unitList;
|
|
int lastPortId;
|
|
};
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|