theConfig 10.0
Loading...
Searching...
No Matches
LibLcConfig_atl.h File Reference

tag: nhi1-release-250425 More...

+ Include dependency graph for LibLcConfig_atl.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  OT_LC_RT_S
 

Macros

#define LC_DOC   __doc
 
#define HEADER
 
#define LC_ATL_EXTERN
 static library
 
#define LC_ATL_EXTERN_DATA   extern
 
#define LC(n)
 
#define NS(n)
 
#define LcConfigC_ARGS   OBJECT_ARGS
 
#define LcConfigC_ARGS_CALL   OBJECT_ARGS_CALL
 
#define LcSettingC_ARGS   OBJECT_ARGS
 
#define LcSettingC_ARGS_CALL   OBJECT_ARGS_CALL
 
#define OT_LC_RT_SIG   0x17254309
 identify the custom runtime
 
#define regTclObj(t)
 
#define regTclObj2(t, v)
 
#define regTclCmd(t)
 
#define regTclArray(m, t)
 
#define OT_LC_ARGS   OT_LC_RT_T alcrt, OT_MK_RT_T amkrt, OT_ENV_T interp, MK_RT_ARGS
 
#define OT_LC_CALL   alcrt, amkrt, interp, MK_RT_CALL
 
#define SETUP_alcrt_2(r)
 
#define SETUP_alcrt(r)
 
#define LcConfigC_rt   (*alcrt)
 
#define LcConfigC_lngO   (LcConfigC_rt.AtlLcConfigC)
 
#define LcConfigCTT   (LcConfigC_rt.AtlLcConfigCTT)
 
#define LcConfigC_ObjNew(nat)
 
#define OT_TMP_CFG_OBJ(nat)
 
#define OT_retObj_SET_CFG(nat)
 
#define LcSettingC_rt   (*alcrt)
 
#define LcSettingC_lngO   (LcSettingC_rt.AtlLcSettingC)
 
#define LcSettingCTT   (LcSettingC_rt.AtlLcSettingCTT)
 
#define LcSettingC_ObjNew(nat)
 
#define OT_TMP_CFS_OBJ(nat)
 
#define OT_retObj_SET_CFS(nat)
 
#define OT_get_CFS_from_NAT(_nat)
 
#define OT_get_CFG_from_NAT(_nat)
 
#define Get_LcConfigFormatE_FromObj_path   LC(Get_LcConfigFormatE_FromObj)
 
#define Get_LcConfigOptionsEF_FromObj_path   LC(Get_LcConfigOptionsEF_FromObj)
 
#define Get_LcConfigTypeE_FromObj_path   LC(Get_LcConfigTypeE_FromObj)
 
#define Get_LcErrorE_FromObj_path   LC(Get_LcErrorE_FromObj)
 
#define Get_LcErrorTypeE_FromObj_path   LC(Get_LcErrorTypeE_FromObj)
 
#define OT_NEW_Lc_enum_OBJ(typ, val)
 

Typedefs

typedef OT_LC_RT_SOT_LC_RT_T
 

Functions

int atllcconfig_pLcConfigC_Init (OT_LC_ARGS OT_NS_T)
 
static MK_ARTIFICIAL OT_OBJ_T atllcconfig_LcConfigC_ObjNew (OT_LC_ARGS LcConfigC_type hdl)
 
int atllcconfig_pLcSettingC_Init (OT_LC_ARGS OT_NS_T)
 
static MK_ARTIFICIAL OT_OBJ_T atllcconfig_LcSettingC_ObjNew (OT_LC_ARGS LcSettingC_type hdl)
 
enum MkErrorE atllcconfig_ConfigIncludeCall (LcConfigIncludeCallF_ARGS)
 
void atllcconfig_ConfigIncludeFree (LcConfigIncludeFreeF_ARGS)
 
enum MkErrorE atllcconfig_SettingDeleteCall (LcSettingDeleteCallF_ARGS)
 
void atllcconfig_SettingDeleteFree (LcSettingDeleteFreeF_ARGS)
 
LC_ATL_EXTERN int atllcconfig_Get_LcConfigFormatE_FromObj (MK_RT mkrt, OT_ENV_T interp, OT_OBJ_T enumE, enum LcConfigFormatE *ret)
 
LC_ATL_EXTERN int atllcconfig_Get_LcConfigOptionsEF_FromObj (MK_RT mkrt, OT_ENV_T interp, OT_OBJ_T enumE, enum LcConfigOptionsEF *ret)
 
LC_ATL_EXTERN int atllcconfig_Get_LcConfigTypeE_FromObj (MK_RT mkrt, OT_ENV_T interp, OT_OBJ_T enumE, enum LcConfigTypeE *ret)
 
LC_ATL_EXTERN int atllcconfig_Get_LcErrorE_FromObj (MK_RT mkrt, OT_ENV_T interp, OT_OBJ_T enumE, enum LcErrorE *ret)
 
LC_ATL_EXTERN int atllcconfig_Get_LcErrorTypeE_FromObj (MK_RT mkrt, OT_ENV_T interp, OT_OBJ_T enumE, enum LcErrorTypeE *ret)
 
LC_ATL_EXTERN OT_OBJ_T atllcconfig_LcConfigFormatE_ToString (const enum LcConfigFormatE)
 
LC_ATL_EXTERN OT_OBJ_T atllcconfig_LcConfigOptionsEF_ToString (const enum LcConfigOptionsEF)
 
LC_ATL_EXTERN OT_OBJ_T atllcconfig_LcConfigTypeE_ToString (const enum LcConfigTypeE)
 
LC_ATL_EXTERN OT_OBJ_T atllcconfig_LcErrorE_ToString (const enum LcErrorE)
 
LC_ATL_EXTERN OT_OBJ_T atllcconfig_LcErrorTypeE_ToString (const enum LcErrorTypeE)
 

Variables

__thread OT_LC_RT_S alcrtR
 

Detailed Description

tag: nhi1-release-250425

Definition in file LibLcConfig_atl.h.

Macro Definition Documentation

◆ Get_LcConfigFormatE_FromObj_path

#define Get_LcConfigFormatE_FromObj_path   LC(Get_LcConfigFormatE_FromObj)

Definition at line 229 of file LibLcConfig_atl.h.

◆ Get_LcConfigOptionsEF_FromObj_path

#define Get_LcConfigOptionsEF_FromObj_path   LC(Get_LcConfigOptionsEF_FromObj)

Definition at line 232 of file LibLcConfig_atl.h.

◆ Get_LcConfigTypeE_FromObj_path

#define Get_LcConfigTypeE_FromObj_path   LC(Get_LcConfigTypeE_FromObj)

Definition at line 235 of file LibLcConfig_atl.h.

◆ Get_LcErrorE_FromObj_path

#define Get_LcErrorE_FromObj_path   LC(Get_LcErrorE_FromObj)

Definition at line 238 of file LibLcConfig_atl.h.

◆ Get_LcErrorTypeE_FromObj_path

#define Get_LcErrorTypeE_FromObj_path   LC(Get_LcErrorTypeE_FromObj)

Definition at line 241 of file LibLcConfig_atl.h.

◆ HEADER

#define HEADER

Definition at line 26 of file LibLcConfig_atl.h.

◆ LC

#define LC ( n)
Value:
atllcconfig_ ## n

Definition at line 77 of file LibLcConfig_atl.h.

◆ LC_ATL_EXTERN

#define LC_ATL_EXTERN

static library

Definition at line 50 of file LibLcConfig_atl.h.

◆ LC_ATL_EXTERN_DATA

#define LC_ATL_EXTERN_DATA   extern

Definition at line 73 of file LibLcConfig_atl.h.

◆ LC_DOC

#define LC_DOC   __doc

Definition at line 15 of file LibLcConfig_atl.h.

◆ LcConfigC_ARGS

#define LcConfigC_ARGS   OBJECT_ARGS

Definition at line 85 of file LibLcConfig_atl.h.

◆ LcConfigC_ARGS_CALL

#define LcConfigC_ARGS_CALL   OBJECT_ARGS_CALL

Definition at line 86 of file LibLcConfig_atl.h.

◆ LcConfigC_lngO

#define LcConfigC_lngO   (LcConfigC_rt.AtlLcConfigC)

Definition at line 169 of file LibLcConfig_atl.h.

◆ LcConfigC_ObjNew

#define LcConfigC_ObjNew ( nat)
Value:
#define OT_LC_CALL
#define LcConfigC_ObjNew(nat)
#define LC(n)

Definition at line 175 of file LibLcConfig_atl.h.

◆ LcConfigC_rt

#define LcConfigC_rt   (*alcrt)

Definition at line 168 of file LibLcConfig_atl.h.

◆ LcConfigCTT

#define LcConfigCTT   (LcConfigC_rt.AtlLcConfigCTT)

Definition at line 171 of file LibLcConfig_atl.h.

◆ LcSettingC_ARGS

#define LcSettingC_ARGS   OBJECT_ARGS

Definition at line 87 of file LibLcConfig_atl.h.

◆ LcSettingC_ARGS_CALL

#define LcSettingC_ARGS_CALL   OBJECT_ARGS_CALL

Definition at line 88 of file LibLcConfig_atl.h.

◆ LcSettingC_lngO

#define LcSettingC_lngO   (LcSettingC_rt.AtlLcSettingC)

Definition at line 188 of file LibLcConfig_atl.h.

◆ LcSettingC_ObjNew

#define LcSettingC_ObjNew ( nat)
Value:
#define LcSettingC_ObjNew(nat)

Definition at line 194 of file LibLcConfig_atl.h.

◆ LcSettingC_rt

#define LcSettingC_rt   (*alcrt)

Definition at line 187 of file LibLcConfig_atl.h.

◆ LcSettingCTT

#define LcSettingCTT   (LcSettingC_rt.AtlLcSettingCTT)

Definition at line 190 of file LibLcConfig_atl.h.

◆ NS

#define NS ( n)
Value:
atllcconfig_ ## n

Definition at line 79 of file LibLcConfig_atl.h.

◆ OT_get_CFG_from_NAT

#define OT_get_CFG_from_NAT ( _nat)
Value:
#define LcGetCfgFromNat(_nat)
helper for LcConfigC_ObjNew …

Definition at line 212 of file LibLcConfig_atl.h.

◆ OT_get_CFS_from_NAT

#define OT_get_CFS_from_NAT ( _nat)
Value:
#define LcGetCfsFromNat(_nat)
helper for LcSettingC_ObjNew …

Definition at line 211 of file LibLcConfig_atl.h.

◆ OT_LC_ARGS

#define OT_LC_ARGS   OT_LC_RT_T alcrt, OT_MK_RT_T amkrt, OT_ENV_T interp, MK_RT_ARGS

Definition at line 141 of file LibLcConfig_atl.h.

◆ OT_LC_CALL

#define OT_LC_CALL   alcrt, amkrt, interp, MK_RT_CALL

Definition at line 142 of file LibLcConfig_atl.h.

◆ OT_LC_RT_SIG

#define OT_LC_RT_SIG   0x17254309

identify the custom runtime

Definition at line 104 of file LibLcConfig_atl.h.

◆ OT_NEW_Lc_enum_OBJ

#define OT_NEW_Lc_enum_OBJ ( typ,
val )
Value:
LC(Lc ## typ ## _ToString(val))

Definition at line 247 of file LibLcConfig_atl.h.

◆ OT_retObj_SET_CFG

#define OT_retObj_SET_CFG ( nat)
Value:
retObj = LcConfigC_ObjNew (nat)

Definition at line 177 of file LibLcConfig_atl.h.

◆ OT_retObj_SET_CFS

#define OT_retObj_SET_CFS ( nat)
Value:
retObj = LcSettingC_ObjNew (nat)

Definition at line 196 of file LibLcConfig_atl.h.

◆ OT_TMP_CFG_OBJ

#define OT_TMP_CFG_OBJ ( nat)
Value:

Definition at line 176 of file LibLcConfig_atl.h.

◆ OT_TMP_CFS_OBJ

#define OT_TMP_CFS_OBJ ( nat)
Value:

Definition at line 195 of file LibLcConfig_atl.h.

◆ regTclArray

#define regTclArray ( m,
t )
Value:
OT_OBJ_T t[m];
MOX_OBJ_T OT_OBJ_T

Definition at line 116 of file LibLcConfig_atl.h.

◆ regTclCmd

#define regTclCmd ( t)
Value:

Definition at line 115 of file LibLcConfig_atl.h.

◆ regTclObj

#define regTclObj ( t)
Value:

Definition at line 113 of file LibLcConfig_atl.h.

◆ regTclObj2

#define regTclObj2 ( t,
v )
Value:

Definition at line 114 of file LibLcConfig_atl.h.

◆ SETUP_alcrt

#define SETUP_alcrt ( r)
Value:
#define SETUP_alcrt_2(r)

Definition at line 155 of file LibLcConfig_atl.h.

◆ SETUP_alcrt_2

#define SETUP_alcrt_2 ( r)
Value:
MK_UNUSED OT_LC_RT_T alcrt = (r) ? (r) : &alcrtR; \
assert(alcrt && alcrt->signature == OT_LC_RT_SIG); \
MK_UNUSED OT_MK_RT_T amkrt = alcrt->amkrt; \
assert(amkrt && amkrt->signature == OT_MK_RT_SIG); \
MK_UNUSED OT_ENV_T interp = alcrt->interp; \
MK_UNUSED MOX_RT_T moxrt = amkrt->moxrt; \
assert(moxrt && moxrt->signature == MOX_RT_SIG);
#define OT_LC_RT_SIG
identify the custom runtime
__thread OT_LC_RT_S alcrtR
MOX_ENV_T OT_ENV_T
#define OT_MK_RT_SIG
#define MK_UNUSED

Definition at line 147 of file LibLcConfig_atl.h.

147#define SETUP_alcrt_2(r) MK_UNUSED OT_LC_RT_T alcrt = (r) ? (r) : &alcrtR; \
148 assert(alcrt && alcrt->signature == OT_LC_RT_SIG); \
149 MK_UNUSED OT_MK_RT_T amkrt = alcrt->amkrt; \
150 assert(amkrt && amkrt->signature == OT_MK_RT_SIG); \
151 MK_UNUSED OT_ENV_T interp = alcrt->interp; \
152 MK_UNUSED MOX_RT_T moxrt = amkrt->moxrt; \
153 assert(moxrt && moxrt->signature == MOX_RT_SIG);

Typedef Documentation

◆ OT_LC_RT_T

Definition at line 137 of file LibLcConfig_atl.h.

Function Documentation

◆ atllcconfig_ConfigIncludeCall()

enum MkErrorE atllcconfig_ConfigIncludeCall ( LcConfigIncludeCallF_ARGS )

Definition at line 45 of file LcCall_atl.c.

46{
48
49 // 1. setup arguments
50 struct MkCallS *call = cfg->fConfigIncludeData ;
51 assert(call->signature == MkCallS_SIG);
52
53//MkCallLog(call);
54
55 // 2. prolog
56 CallProlog(cfg);
57
58 // 3. setup args
59 objv[objc++] = STR2VAL(incDir);
60 objv[objc++] = STR2VAL(path);
61 objv[objc++] = OT_TMP_BFL_OBJ(ret_inout);
62
63 // 4. setup user args
64 if (call->args) MK(ProcResolveAppendArgs)(call,&objc,objv);
65
66 // 5. call the callback
67 int ret = MK(EvalObjv) (interp, objc, objv, 0); /* "MK(EvalObjv)" IS required !! */
68 if (ret != TCL_OK) goto error;
69
70 Tcl_ResetResult(interp);
71 return MkErrorGetCode_0E();
72
73error:
75
76error_mq:
77 return MkErrorStack_0E();
78}
#define CallProlog(m)
#define MK(n)
#define STR2VAL(ptr)
#define MkCallS_SIG
#define OT_ERROR_LNG_2_META(m)
#define OT_TMP_BFL_OBJ(nat)
#define LcConfigIncludeCallF_CHECK
#define MkErrorGetCode_0E()
#define MkErrorStack_0E()
OT_OBJ_T args
MK_SIG signature

◆ atllcconfig_ConfigIncludeFree()

void atllcconfig_ConfigIncludeFree ( LcConfigIncludeFreeF_ARGS )

Definition at line 80 of file LcCall_atl.c.

81{
82 MkCallFree(cfg->fConfigIncludeData);
83
84 //OT_REF_DECR_AND_NULL(cfg->fConfigIncludeHook);
85
86 cfg->fConfigIncludeCall = NULL;
87 cfg->fConfigIncludeFree = NULL;
88}
#define MkCallFree(cb)

◆ atllcconfig_LcConfigC_ObjNew()

static MK_ARTIFICIAL OT_OBJ_T atllcconfig_LcConfigC_ObjNew ( OT_LC_ARGS LcConfigC_type hdl)
inlinestatic

Definition at line 180 of file LibLcConfig_atl.h.

180 {
181 return ( hdl ? MK(AtomObjNew) (OT_MK_CALL LcConfigC_X2obj(hdl), alcrt) : LcConfigC_rt.AtlLcConfigC_MK_NULL );
182 }
#define LcConfigC_rt
#define OT_MK_CALL
#define LcConfigC_X2obj(x)

◆ atllcconfig_LcSettingC_ObjNew()

static MK_ARTIFICIAL OT_OBJ_T atllcconfig_LcSettingC_ObjNew ( OT_LC_ARGS LcSettingC_type hdl)
inlinestatic

Definition at line 199 of file LibLcConfig_atl.h.

199 {
200 return ( hdl ? MK(AtomObjNew) (OT_MK_CALL LcSettingC_X2obj(hdl), alcrt) : LcSettingC_rt.AtlLcSettingC_MK_NULL );
201 }
#define LcSettingC_rt
#define LcSettingC_X2obj(x)

◆ atllcconfig_pLcConfigC_Init()

int atllcconfig_pLcConfigC_Init ( OT_LC_ARGS OT_NS_T ns)

Public API

Definition at line 964 of file LcConfigC_atl.c.

965{
967
968 return TCL_OK;
969error:
970 return TCL_ERROR;
971}
#define ClassInit

◆ atllcconfig_pLcSettingC_Init()

int atllcconfig_pLcSettingC_Init ( OT_LC_ARGS OT_NS_T ns)

Public API

Definition at line 1252 of file LcSettingC_atl.c.

1253{
1254 ClassInit
1255
1256 return TCL_OK;
1257error:
1258 return TCL_ERROR;
1259}
#define ClassInit

◆ atllcconfig_SettingDeleteCall()

enum MkErrorE atllcconfig_SettingDeleteCall ( LcSettingDeleteCallF_ARGS )

Definition at line 108 of file LcCall_atl.c.

109{
111
112 // test on recursion
113 static MkThreadLocal bool onCall = false;
114 if (onCall) {
115printSTACK_1(cfg)
116 return MkErrorSetC_2M(cfg,"REKURSIVE call on LcSettingC -> delete handler");
117 }
118 onCall=true;
119
120 // 1. setup environment
121 struct MkCallS *call = cfg->fSettingDeleteData;
122 assert(call->signature == MkCallS_SIG);
123
124 // 2. prolog
125 CallProlog(cfg);
126
127 // 3. setup args
128 objv[objc++] = LONG2VAL(MkObjectHandleGet_1X(cfs));
129
130 // 4. setup user args
131 if (call->args) MK(ProcResolveAppendArgs)(call,&objc,objv);
132
133 // 5. call the callback
134 int ret = MK(EvalObjv) (interp, objc, objv, 0); /* "MK(EvalObjv)" IS required !! */
135 if (ret != TCL_OK) goto error;
136
137 Tcl_ResetResult(interp);
138 onCall = false;
139 return MkErrorGetCode_0E();
140
141error:
143
144error_mq:
145 onCall = false;
146 return MkErrorStack_0E();
147}
#define LONG2VAL(nat)
#define LcSettingDeleteCallF_CHECK
#define MkErrorSetC_2M(err, message)
#define MkObjectHandleGet_1X(x)
#define MkThreadLocal

◆ atllcconfig_SettingDeleteFree()

void atllcconfig_SettingDeleteFree ( LcSettingDeleteFreeF_ARGS )

Definition at line 149 of file LcCall_atl.c.

150{
151 MK(CallFree) (&cfg->fSettingDeleteData);
152
153 //OT_REF_DECR_AND_NULL(cfg->fSettingDeleteHook);
154
155 cfg->fSettingDeleteData = NULL;
156 cfg->fSettingDeleteCall = NULL;
157 cfg->fSettingDeleteFree = NULL;
158}

Variable Documentation

◆ alcrtR

__thread OT_LC_RT_S alcrtR
extern

Definition at line 785 of file LibLcConfig_atl.c.

785{0};