64 lines
1.9 KiB
C
64 lines
1.9 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 AQHOME_HTTP_CONTENT_H
|
|
#define AQHOME_HTTP_CONTENT_H
|
|
|
|
|
|
#include <aqhome/api.h>
|
|
|
|
#include <gwenhywfar/buffer.h>
|
|
#include <gwenhywfar/inherit.h>
|
|
#include <gwenhywfar/tree2.h>
|
|
|
|
|
|
#define AQH_HTTP_CONTENT_MODE_DESKTOP 0
|
|
#define AQH_HTTP_CONTENT_MODE_MOBILE 1
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
|
|
|
|
typedef struct AQH_HTTP_CONTENT AQH_HTTP_CONTENT;
|
|
GWEN_INHERIT_FUNCTION_LIB_DEFS(AQH_HTTP_CONTENT, AQHOME_API)
|
|
GWEN_TREE2_FUNCTION_LIB_DEFS(AQH_HTTP_CONTENT, AQH_HttpContent, AQHOME_API)
|
|
|
|
|
|
typedef int (*AQH_HTTP_CONTENT_ADD_OPENING_CONTENT_FN)(AQH_HTTP_CONTENT *cp, int mode, GWEN_BUFFER *buffer);
|
|
typedef int (*AQH_HTTP_CONTENT_ADD_CLOSING_CONTENT_FN)(AQH_HTTP_CONTENT *cp, int mode, GWEN_BUFFER *buffer);
|
|
|
|
|
|
AQHOME_API AQH_HTTP_CONTENT *AQH_HttpContent_new(const char *name);
|
|
AQHOME_API void AQH_HttpContent_free(AQH_HTTP_CONTENT *cp);
|
|
|
|
AQHOME_API const char *AQH_HttpContent_GetName(const AQH_HTTP_CONTENT *cp);
|
|
|
|
|
|
AQHOME_API int AQH_HttpContent_AddOpeningContent(AQH_HTTP_CONTENT *cp, int mode, GWEN_BUFFER *buffer);
|
|
AQHOME_API int AQH_HttpContent_AddClosingContent(AQH_HTTP_CONTENT *cp, int mode, GWEN_BUFFER *buffer);
|
|
|
|
|
|
AQHOME_API void AQH_HttpContent_SetAddOpeningContentFn(AQH_HTTP_CONTENT *cp, AQH_HTTP_CONTENT_ADD_OPENING_CONTENT_FN f);
|
|
AQHOME_API void AQH_HttpContent_SetAddClosingContentFn(AQH_HTTP_CONTENT *cp, AQH_HTTP_CONTENT_ADD_CLOSING_CONTENT_FN f);
|
|
|
|
AQHOME_API AQH_HTTP_CONTENT *AQH_HttpContent_Tree2_FindChildByName(AQH_HTTP_CONTENT *parent, const char *name);
|
|
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
|
|
|
|
#endif
|
|
|