libmkkernel 9.0
Loading...
Searching...
No Matches
Modules | Data Structures
MkRuntimeC_C_API

The MkRuntimeC class known as mkrt or runtime is the main libmkkernel application environment … More...

+ Collaboration diagram for MkRuntimeC_C_API:

Modules

 MkRtExtC
 extend the MkRuntimeS with a library specific extension. …
 
 MkRuntimeC_Config_C_API
 only C - various functions to configure the MkRuntimeC
 
 MkRuntimeC_Interface_C_API
 The MkRuntimeRLS, a thread-local storage for application-global data …
 
 MkRuntimeC_Cast_C_API
 cast from defined and undefined instance to MkRuntimeC
 

Data Structures

struct  MkRuntimeS
 The MkRuntimeS provide a per-thread environment for LibMkKernelMore...
 

MkRuntimeC


typedef struct MkRuntimeSMK_RT
 class-shortcut for struct MkRuntimeS *, all shortcut using the XX_YYY syntax (only for public API) …
 
typedef const struct MkRuntimeSMK_RTN
 class-shortcut for const struct MkRuntimeS *, all const shortcut using the XX_YYYC syntax (only for public API) …
 
typedef struct MkRuntimeS MK_RTR
 reference-shortcut for struct MkRuntimeS, all shortcut using the XX_YYYR syntax (only for public API) …
 

MkRuntimeC type definition

typedef struct MkRuntimeS MkRuntimeCR
 instance-struct-reference same as struct MkRuntimeS, useable in a class-macro as: class##R
 
typedef const struct MkRuntimeS MkRuntimeCNR
 const instance-struct-reference same as const struct MkRuntimeS, useable in a class-macro as: class##R
 
#define MkRuntimeC_T   (&MK_RT_REF._MkRuntimeC_T)
 instance-type as specific-instance-type, useable in a class-macro as: class##_T
 
#define MkRuntimeC_TT   (MkTYP(MkRuntimeC_T))
 instance-type as common-instance-type, useable in a class-macro as: class##_TT
 
#define MkRuntimeST   MkRuntimeC_T
 instance-type as specific-instance-type
 
#define MkRuntimeSTT   (MkTYP(MkRuntimeST))
 instance-type as common-instance-type (cast from MkRuntimeST into MkTypeS) …
 
#define MkRuntimeC_type   MK_RT
 same as MkRuntimeS but useable in a class-macro as: class##_type
 
#define MkRuntimeCT_X(instance)   ( (struct MkDefTypeS *) (MkOBJ_R(instance).type) )
 cast from an instance into the specific-instance-type
 
#define MkRuntimeCTT_X(instance)   (MkOBJ_R(instance).type)
 cast from an instance into the common-instance-type
 
#define MkRuntimeCT_TT(typ)   ( (struct MkDefTypeS *) (typ) )
 cast from an common-instance-type into an specific-instance-type
 
#define MkRuntimeC_NS   MK
 map class to namespace …
 
#define MkRuntimeCTT   MkRuntimeCTT
 instance-type as common-instance-type for MkRuntimeC in the target-programming-language (C,C++,C#,VB.NET,Java,Python,Ruby,Perl,PHP,Tcl or GO)
 
#define MkRuntimeCT   ( (struct MkDefTypeS *) MkRuntimeCTT )
 instance-type as specific-instance-type for MkRuntimeC in the target-programming-language (C,C++,C#,VB.NET,Java,Python,Ruby,Perl,PHP,Tcl or GO)
 

MkRuntimeC signature check

bool MkRtCheck (MK_MNGN mng)
 check MkRuntimeS%->Mk{ObjectS::signature} …
 
#define MkRuntimeC_Check(mng)   MkRtCheck(mng)
 

MkRuntimeC signature define

#define MkRuntimeC_SIGNATURE   (MkObjectC_SIGNATURE ^ (9u<<10))
 
#define MkRuntimeC_MASK   (((1u<<22)-1)<<10)
 

MkRuntimeC cast to superclass

#define MkRuntimeC_X2rt(x)   (x)
 
#define MkRuntimeC_X2obj(x)   MkOBJ(x)
 

Detailed Description

The MkRuntimeC class known as mkrt or runtime is the main libmkkernel application environment …

The runtime is automatically created as thread-local-storage at startup, so that each new thread receives a thread-specific runtime. Each instance on this thread has a link to the runtime it was created in:

The runtime provide the following features:

To access the MkRuntimeRLS in C or C++ the MkRuntimeC_Interface_C_API is used.

Macro Definition Documentation

◆ MkRuntimeC_Check

#define MkRuntimeC_Check (   mng)    MkRtCheck(mng)

Definition at line 12738 of file kernel_mk.h.

◆ MkRuntimeC_MASK

#define MkRuntimeC_MASK   (((1u<<22)-1)<<10)

Definition at line 12675 of file kernel_mk.h.

◆ MkRuntimeC_NS

#define MkRuntimeC_NS   MK

map class to namespace …

Definition at line 12714 of file kernel_mk.h.

◆ MkRuntimeC_SIGNATURE

#define MkRuntimeC_SIGNATURE   (MkObjectC_SIGNATURE ^ (9u<<10))

Definition at line 12674 of file kernel_mk.h.

◆ MkRuntimeC_T

#define MkRuntimeC_T   (&MK_RT_REF._MkRuntimeC_T)

instance-type as specific-instance-type, useable in a class-macro as: class##_T

Definition at line 12698 of file kernel_mk.h.

◆ MkRuntimeC_TT

#define MkRuntimeC_TT   (MkTYP(MkRuntimeC_T))

instance-type as common-instance-type, useable in a class-macro as: class##_TT

Definition at line 12700 of file kernel_mk.h.

◆ MkRuntimeC_type

#define MkRuntimeC_type   MK_RT

same as MkRuntimeS but useable in a class-macro as: class##_type

Definition at line 12706 of file kernel_mk.h.

◆ MkRuntimeC_X2obj

#define MkRuntimeC_X2obj (   x)    MkOBJ(x)

Definition at line 12684 of file kernel_mk.h.

◆ MkRuntimeC_X2rt

#define MkRuntimeC_X2rt (   x)    (x)

Definition at line 12683 of file kernel_mk.h.

◆ MkRuntimeCT

#define MkRuntimeCT   ( (struct MkDefTypeS *) MkRuntimeCTT )

instance-type as specific-instance-type for MkRuntimeC in the target-programming-language (C,C++,C#,VB.NET,Java,Python,Ruby,Perl,PHP,Tcl or GO)

Definition at line 12718 of file kernel_mk.h.

◆ MkRuntimeCT_TT

#define MkRuntimeCT_TT (   typ)    ( (struct MkDefTypeS *) (typ) )

cast from an common-instance-type into an specific-instance-type

Definition at line 12712 of file kernel_mk.h.

◆ MkRuntimeCT_X

#define MkRuntimeCT_X (   instance)    ( (struct MkDefTypeS *) (MkOBJ_R(instance).type) )

cast from an instance into the specific-instance-type

Definition at line 12708 of file kernel_mk.h.

◆ MkRuntimeCTT

#define MkRuntimeCTT   MkRuntimeCTT

instance-type as common-instance-type for MkRuntimeC in the target-programming-language (C,C++,C#,VB.NET,Java,Python,Ruby,Perl,PHP,Tcl or GO)

Definition at line 12716 of file kernel_mk.h.

◆ MkRuntimeCTT_X

#define MkRuntimeCTT_X (   instance)    (MkOBJ_R(instance).type)

cast from an instance into the common-instance-type

Definition at line 12710 of file kernel_mk.h.

◆ MkRuntimeST

#define MkRuntimeST   MkRuntimeC_T

instance-type as specific-instance-type

Definition at line 12702 of file kernel_mk.h.

◆ MkRuntimeSTT

#define MkRuntimeSTT   (MkTYP(MkRuntimeST))

instance-type as common-instance-type (cast from MkRuntimeST into MkTypeS) …

Definition at line 12704 of file kernel_mk.h.

Typedef Documentation

◆ MK_RT

typedef struct MkRuntimeS* MK_RT

class-shortcut for struct MkRuntimeS *, all shortcut using the XX_YYY syntax (only for public API) …

Definition at line 3053 of file kernel_mk.h.

◆ MK_RTN

typedef const struct MkRuntimeS* MK_RTN

class-shortcut for const struct MkRuntimeS *, all const shortcut using the XX_YYYC syntax (only for public API) …

Definition at line 3056 of file kernel_mk.h.

◆ MK_RTR

typedef struct MkRuntimeS MK_RTR

reference-shortcut for struct MkRuntimeS, all shortcut using the XX_YYYR syntax (only for public API) …

Definition at line 3059 of file kernel_mk.h.

◆ MkRuntimeCNR

typedef const struct MkRuntimeS MkRuntimeCNR

const instance-struct-reference same as const struct MkRuntimeS, useable in a class-macro as: class##R

Definition at line 12696 of file kernel_mk.h.

◆ MkRuntimeCR

typedef struct MkRuntimeS MkRuntimeCR

instance-struct-reference same as struct MkRuntimeS, useable in a class-macro as: class##R

Definition at line 12694 of file kernel_mk.h.

Function Documentation

◆ MkRtCheck()

bool MkRtCheck ( MK_MNGN  mng)
inline

check MkRuntimeS%->Mk{ObjectS::signature} …

Returns
TRUE on valid rt and FALSE an invalid rt

Definition at line 12733 of file kernel_mk.h.

+ Here is the caller graph for this function: