theConfig 10.0
Loading...
Searching...
No Matches
LcCall_py.c
Go to the documentation of this file.
1
9/* LABEL-NO */
10
11#include "LibLcConfig_py.h"
12#include "misc_check_py.h"
13
14/*
15[ConfigIncludeCall signature]
16 callback-args := inclDir:String[in] , path:String[in] , ret:MkBufferListC[inout]
17 [static] def callback ( callback-args )
18 [instance] class YYY:
19 def callback ( self, callback-args )
20 [class] class ZZZ:
21 @staticmethod
22 def callback ( callback-args )
23[ConfigIncludeCall signature]
24*/
25
26enum MkErrorE
27NS(ConfigIncludeCall) ( LcConfigIncludeCallF_ARGS )
28{
30
31 PyObject * const callable = (PyObject*) cfg->fConfigIncludeData;
32
33 PyObject * incDirO = STRN2VAL(incDir);
34 PyObject * pathO = STRN2VAL(path);
35 PyObject * retO = OT_TMP_BFL_OBJ(ret_inout);
36 PyObject * resultO = NULL;
37
38 PyErr_Clear();
39
40 // call the function
41 resultO = PyObject_CallFunctionObjArgs(callable, incDirO, pathO, retO, NULL);
42
43 if (resultO == NULL) goto error;
44
45end:
46 Py_CLEAR(incDirO);
47 Py_CLEAR(pathO);
48 Py_CLEAR(resultO);
49 return MkErrorGetCode_0E();
50
51error:
54 goto end;
55}
56
57void
58MK_DECL NS(ConfigIncludeFree) ( LcConfigIncludeFreeF_ARGS )
59{
60 MkCallFree(cfg->fConfigIncludeData);
61
62 //OT_REF_DECR_AND_NULL(cfg->fConfigIncludeHook);
63
64 cfg->fConfigIncludeCall = NULL;
65 cfg->fConfigIncludeFree = NULL;
66}
67
68// =====================================================================================================================
69
70/*
71[SettingDeleteCall signature]
72 callback-args := hdl:EXPORT-HANDLE[in]
73 [static] def callback ( callback-args )
74 [instance] class YYY:
75 def callback ( self, callback-args )
76 [class] class ZZZ:
77 @staticmethod
78 def callback ( callback-args )
79[SettingDeleteCall signature]
80*/
81
82enum MkErrorE NS(SettingDeleteCall) ( LcSettingDeleteCallF_ARGS )
83{
85
86//printV("cfg=%p, cfs=%p, cfg->fSettingDeleteData=%p\n", cfg, cfs, cfg->fSettingDeleteData)
87
88 PyObject * const callable = (PyObject*) cfg->fSettingDeleteData;
89
90 PyObject * resultO = NULL;
91
92 PyErr_Clear();
93
94//printP(cfs)
95 PyObject* cfsHdl = LONG2VAL(MkObjectHandleGet_1X(cfs));
96
97 // call the function
98 resultO = PyObject_CallFunctionObjArgs(callable, cfsHdl, NULL);
99
100 if (resultO == NULL) {
102 } else {
103 Py_CLEAR(resultO);
104 }
105
106 return MkErrorStack_0E_Check();
107}
108
109void NS(SettingDeleteFree) ( LcSettingDeleteFreeF_ARGS )
110{
111 MK(CallFree)(&cfg->fSettingDeleteData);
112
113 //OT_REF_DECR_AND_NULL(cfg->fSettingDeleteHook);
114
115 cfg->fSettingDeleteCall = NULL;
116 cfg->fSettingDeleteFree = NULL;
117}
118
tag: nhi1-release-250425
#define NS(n)
#define MK(n)
#define LONG2VAL(nat)
#define OT_ERROR_LNG_2_META(m)
#define OT_TMP_BFL_OBJ(val)
#define STRN2VAL(nat)
#define LcSettingDeleteFreeF_ARGS
#define LcSettingDeleteCallF_CHECK
#define LcConfigIncludeCallF_CHECK
#define LcConfigIncludeFreeF_ARGS
#define LcConfigIncludeCallF_ARGS
#define LcSettingDeleteCallF_ARGS
#define MkErrorGetCode_0E()
#define MkErrorStack_0E_Check()
#define MkErrorStack_0E()
#define MK_DECL
MkErrorE
#define MkObjectHandleGet_1X(x)
#define MkCallFree(cb)