VSF Documented
vsf_service_cfg.h
Go to the documentation of this file.
1/*****************************************************************************
2 * Copyright(C)2009-2022 by VSF Team *
3 * *
4 * Licensed under the Apache License, Version 2.0 (the "License"); *
5 * you may not use this file except in compliance with the License. *
6 * You may obtain a copy of the License at *
7 * *
8 * http://www.apache.org/licenses/LICENSE-2.0 *
9 * *
10 * Unless required by applicable law or agreed to in writing, software *
11 * distributed under the License is distributed on an "AS IS" BASIS, *
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. *
13 * See the License for the specific language governing permissions and *
14 * limitations under the License. *
15 * *
16 ****************************************************************************/
17
18
20#include "vsf_cfg.h"
21
22#ifndef __VSF_SERVICE_CFG_H__
23#define __VSF_SERVICE_CFG_H__
24
26
27/*============================ INCLUDES ======================================*/
28/*============================ MACROS ========================================*/
29
30#ifndef VSF_SERVICE_ASSERT
31# define VSF_SERVICE_ASSERT VSF_ASSERT
32#endif
33
34#ifndef VSF_USE_HEAP
35# define VSF_USE_HEAP ENABLED
36#endif
37
38#ifndef VSF_USE_POOL
39# define VSF_USE_POOL ENABLED
40#endif
41
42#ifndef VSF_USE_DYNARR
43# define VSF_USE_DYNARR VSF_USE_HEAP
44#endif
45
46#ifndef VSF_USE_DYNSTACK
47# define VSF_USE_DYNSTACK VSF_USE_DYNARR
48#endif
49
50#if VSF_USE_DYNSTACK == ENABLED && VSF_USE_DYNARR != ENABLED
51# warning [DEPENDENCY WARNING]\
52The Feature VSF_USE_DYNSTACK is enabled but VSF_USE_DYNARR is disabled.\
53The VSF_USE_DYNARR will be forced to ENABLED here to provide required services
54# undef VSF_USE_DYNARR
55# define VSF_USE_DYNARR ENABLED
56#endif
57
58#if VSF_USE_DYNARR == ENABLED && VSF_USE_HEAP != ENABLED
59# warning [DEPENDENCY WARNING]\
60The Feature VSF_USE_DYNARR is enabled but VSF_USE_HEAP is disabled.\
61The VSF_USE_HEAP will be forced to ENABLED here to provide required services
62# undef VSF_USE_HEAP
63# define VSF_USE_HEAP ENABLED
64#endif
65
66#if VSF_USE_POOL == ENABLED && !defined(VSF_POOL_CFG_FEED_ON_HEAP)
67# define VSF_POOL_CFG_FEED_ON_HEAP VSF_USE_HEAP
68#endif
69
70#if VSF_POOL_CFG_FEED_ON_HEAP == ENABLED && VSF_USE_HEAP != ENABLED
71# warning [DEPENDENCY WARNING]\
72The Feature VSF_POOL_CFG_FEED_ON_HEAP is enabled but VSF_USE_HEAP is disabled.\
73The VSF_USE_HEAP will be forced to ENABLED here to provide required services
74# undef VSF_USE_HEAP
75# define VSF_USE_HEAP ENABLED
76#endif
77
78#if VSF_APPLET_USE_SERVICE == ENABLED
79# ifndef VSF_APPLET_USE_TRACE
80# define VSF_APPLET_USE_TRACE ENABLED
81# endif
82
83# ifndef VSF_SERVICE_APPLET_VPLT
84# define VSF_SERVICE_APPLET_VPLT \
85 ((vsf_service_vplt_t *)(((vsf_vplt_t *)vsf_vplt((void *)0))->service_vplt))
86# endif
87#endif
88
89/*============================ MACROFIED FUNCTIONS ===========================*/
90/*============================ TYPES =========================================*/
91
92#if VSF_APPLET_USE_SERVICE == ENABLED
93typedef struct vsf_service_vplt_t {
95
98# ifndef __VSF_APPLET__
100# endif
101#endif
102
103/*============================ GLOBAL VARIABLES ==============================*/
104/*============================ LOCAL VARIABLES ===============================*/
105/*============================ PROTOTYPES ====================================*/
106
107
108#endif
109/* EOF */
Definition vsf_service_cfg.h:93
vsf_vplt_info_t info
Definition vsf_service_cfg.h:94
void * trace_vplt
Definition vsf_service_cfg.h:96
Definition vsf_cfg.h:95
#define __VSF_VPLT_DECORATOR__
Definition vsf_cfg.h:93
__VSF_VPLT_DECORATOR__ vsf_service_vplt_t vsf_service_vplt
Definition vsf_service.c:91