VSF Documented
ooc_class.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
19/*============================ INCLUDES ======================================*/
20
21#if defined(__VSF_CLASS_IMPLEMENT) || defined(__VSF_CLASS_IMPLEMENT__)
22# undef __VSF_CLASS_IMPLEMENT
23# undef __VSF_CLASS_IMPLEMENT__
24# define __PLOOC_CLASS_IMPLEMENT
25#endif
26#if defined(__VSF_CLASS_INHERIT) || defined(__VSF_CLASS_INHERIT__)
27# undef __VSF_CLASS_INHERIT
28# undef __VSF_CLASS_INHERIT__
29# define __PLOOC_CLASS_INHERIT
30#endif
31
32#ifdef __VSF_CPP__
33# define __OOC_CPP__
34#endif
35
36#include "./3rd-party/PLOOC/raw/plooc_class.h"
37
38#ifdef __cplusplus
39extern "C" {
40#endif
41
42/*============================ MACROS ========================================*/
43/*============================ MACROFIED FUNCTIONS ===========================*/
44
45#define vsf_declare_class(__name) dcl_simple_class(__name)
46#define vsf_dcl_class vsf_declare_class
47
48#define vsf_class(__name) \
49 dcl_simple_class(__name) \
50 def_simple_class(__name)
51
52/*============================ TYPES =========================================*/
53/*============================ GLOBAL VARIABLES ==============================*/
54/*============================ PROTOTYPES ====================================*/
55
56#ifdef __cplusplus
57}
58#endif
59
60/*#endif */ /* deliberately comment this out! */